Files
python----/达州/数据库连接.ipynb
T
admin aac9f5934d feat: 添加多个功能模块和工具脚本
- 新增websocket客户端和服务端实现
- 添加图片压缩工具和快速压缩脚本
- 实现学生信息处理相关API
- 添加MQTT客户端和消息处理功能
- 更新.gitignore忽略更多文件类型
- 添加数据库操作工具和示例
- 实现多个测试脚本和工具类
2026-04-13 14:47:50 +08:00

29 KiB

In [1]:
import pymysql
import snowflake
from faker import Faker
fake = Faker('zh_CN')
import random
# 创建数据库连接
connection = pymysql.connect(
host='192.168.0.244',
user='root',
password='Abcd@123456',
database='qy_school',
charset='utf8'
)
# 创建游标对象
cursor = connection.cursor()
sql="select * from student"
cursor.execute(sql)
result=cursor.fetchall()
In [ ]:
from requests import get,post
import time
from datetime import datetime

ip  = "http://192.168.0.244:8101"
param = {
    "username": "tangchao",
    "password": "123456a",
    "client_id": "client",
    "grant_type": "password",
    "client_secret": "123456",
}
data = get(url=f"{ip}/oauth/token",params=param).json()
token = data["access_token"]
header = {
    "content-type": "application/json",
    "authorization": f"Bearer {token}",
}
在当前单元格或上一个单元格中执行代码时 Kernel 崩溃。

请查看单元格中的代码,以确定故障的可能原因。

单击<a href='https://aka.ms/vscodeJupyterKernelCrash'>此处</a>了解详细信息。

有关更多详细信息,请查看 Jupyter <a href='command:jupyter.viewOutput'>log</a>。
In [5]:
sql="select * from student"
cursor.execute(sql)
result=cursor.fetchall()
In [6]:
tem = get(f"{ip}/dorm/bed/pageList?page=1&pageSize=3000&building=&floor=&roomNumber=&grade=&department=&major=&className=&keyword=&pageNumber=1&teamId=106",headers=header).json()["data"]["records"]
In [7]:
ids = [ i["stuId"] for i in tem if i["stuId"]]
In [8]:
ids
Out [8]:
[10564,
 11496,
 9731,
 10907,
 10143,
 11030,
 11631,
 10385,
 10353,
 10949,
 9678,
 11428,
 10240,
 9794,
 11328,
 9971,
 10252,
 11178,
 9700,
 11632,
 11257,
 10501,
 11765,
 11515,
 10821,
 10783,
 11324,
 10475,
 10055,
 10074,
 11612,
 9664,
 10423,
 10677,
 11326,
 10892,
 9963,
 9707,
 9629,
 9899,
 10064,
 9858,
 9746,
 10701,
 10101,
 10813,
 10043,
 10239,
 9983,
 10802,
 11300,
 11167,
 11174,
 9918,
 10931,
 11301,
 10742,
 10326,
 10814,
 11702,
 11171,
 11459,
 10804,
 10899,
 10958,
 10134,
 10929,
 11337,
 10599,
 11488,
 11667,
 10763,
 11490,
 10882,
 10251,
 10449,
 9695,
 11013,
 10774,
 10038,
 10549,
 10917,
 10269,
 11152,
 11108,
 9688,
 10330,
 9869,
 11269,
 11539,
 10427,
 11051,
 10363,
 11115,
 9668,
 11242,
 11035,
 10735,
 10211,
 11792,
 11222,
 10086,
 10013,
 11809,
 10217,
 11201,
 10307,
 11620,
 9743,
 9686,
 10916,
 10729,
 10264,
 10996,
 9596,
 10747,
 11397,
 11762,
 11711,
 11558,
 11790,
 10862,
 11786,
 11802,
 11162,
 11002,
 11160,
 10132,
 10374,
 10732,
 10184,
 11408,
 11635,
 11544,
 10930,
 9811,
 11519,
 11200,
 10462,
 9651,
 9829,
 10471,
 11411,
 11601,
 10223,
 11172,
 9703,
 10439,
 11231,
 10828,
 10434,
 10661,
 11737,
 10611,
 9874,
 9798,
 10771,
 9581,
 10492,
 10496,
 11675,
 11794,
 10451,
 10242,
 10088,
 11538,
 10637,
 10190,
 10939,
 9939,
 10975,
 10531,
 10080,
 11559,
 9598,
 10034,
 10534,
 11132,
 11476,
 10498,
 11012,
 10098,
 10568,
 11182,
 10100,
 11583,
 10228,
 9916,
 9825,
 11717,
 11092,
 9862,
 10229,
 11546,
 10702,
 10696,
 11065,
 10586,
 11767,
 9821,
 11159,
 10068,
 10872,
 11190,
 11219,
 10946,
 10469,
 10967,
 10731,
 9854,
 10166,
 11169,
 11641,
 10544,
 11256,
 9962,
 11465,
 9842,
 11126,
 10507,
 11723,
 10095,
 11218,
 11305,
 10552,
 10022,
 11145,
 11290,
 10127,
 9728,
 9727,
 9991,
 9594,
 10863,
 10025,
 11525,
 11781,
 10894,
 9789,
 11736,
 10693,
 9808,
 10676,
 11501,
 10905,
 11197,
 10256,
 11636,
 10327,
 9698,
 11773,
 10941,
 10408,
 10664,
 11217,
 10181,
 9690,
 10466,
 10990,
 10431,
 10591,
 10547,
 9927,
 10368,
 11751,
 9984,
 11642,
 9814,
 9888,
 11292,
 11590,
 11760,
 9689,
 11508,
 11562,
 11571,
 10150,
 11151,
 10919,
 10969,
 9832,
 9706,
 9618,
 9828,
 11445,
 10424,
 11380,
 10900,
 10379,
 11325,
 9702,
 11264,
 11591,
 11447,
 10645,
 11183,
 10066,
 10616,
 9699,
 11223,
 11681,
 11061,
 11759,
 9676,
 10081,
 10481,
 11194,
 11136,
 11062,
 11137,
 10047,
 9726,
 9623,
 9937,
 11606,
 11350,
 11497,
 9994,
 11179,
 11166,
 10844,
 10357,
 10473,
 10036,
 10320,
 10284,
 11522,
 9823,
 10878,
 10262,
 11306,
 10153,
 9718,
 11268,
 11206,
 10404,
 10548,
 9634,
 11453,
 9760,
 10741,
 10428,
 11804,
 10031,
 10977,
 10976,
 10372,
 9636,
 11651,
 10259,
 11504,
 10422,
 9620,
 9754,
 11135,
 10104,
 11564,
 10343,
 9999,
 11371,
 11598,
 11630,
 11376,
 10499,
 10454,
 11692,
 11060,
 11750,
 11535,
 10456,
 11619,
 11110,
 10523,
 10298,
 11662,
 10566,
 9873,
 11177,
 9815,
 11685,
 9903,
 10988,
 10312,
 11347,
 11375,
 10443,
 11122,
 10966,
 10726,
 10005,
 11058,
 10703,
 11082,
 11072,
 10071,
 11729,
 11580,
 9800,
 10125,
 10728,
 9855,
 9851,
 10789,
 9894,
 11279,
 9750,
 11686,
 10484,
 9781,
 11552,
 11714,
 10067,
 9949,
 10682,
 10668,
 10767,
 11467,
 9796,
 11560,
 11489,
 10270,
 10948,
 9978,
 11798,
 10210,
 11677,
 10328,
 9804,
 11336,
 10396,
 11314,
 10019,
 10846,
 11075,
 11103,
 11534,
 9952,
 9615,
 10908,
 11654,
 11475,
 10133,
 10069,
 10366,
 9921,
 10876,
 9638,
 10816,
 10091,
 11024,
 10559,
 10417,
 10094,
 9759,
 11298,
 10978,
 9606,
 10951,
 9813,
 11605,
 11669,
 11452,
 10755,
 9926,
 11652,
 10509,
 10895,
 10349,
 11720,
 9812,
 11744,
 9886,
 11238,
 11622,
 11240,
 10056,
 11105,
 10517,
 10026,
 10186,
 9621,
 10873,
 11244,
 10614,
 9822,
 10297,
 11246,
 10850,
 10709,
 10660,
 11673,
 11695,
 10679,
 11010,
 9992,
 10576,
 11699,
 11041,
 9875,
 10311,
 10793,
 9935,
 10569,
 10824,
 11382,
 9954,
 11401,
 11793,
 10189,
 11735,
 10325,
 10346,
 11119,
 10151,
 10139,
 10718,
 9762,
 10254,
 10234,
 10046,
 11749,
 10060,
 11432,
 10912,
 10918,
 10246,
 11575,
 10472,
 9600,
 10391,
 11754,
 10514,
 11700,
 10063,
 11659,
 11352,
 10221,
 10429,
 10375,
 10865,
 10769,
 11728,
 10787,
 10121,
 11803,
 11104,
 11698,
 10029,
 11757,
 11441,
 11671,
 10414,
 9880,
 10183,
 9948,
 9667,
 10197,
 10260,
 10839,
 10886,
 11251,
 11147,
 10028,
 9770,
 9710,
 10004,
 11437,
 11015,
 10906,
 10515,
 10162,
 10351,
 9818,
 9843,
 10790,
 10796,
 9734,
 10373,
 10084,
 9955,
 11780,
 9895,
 9974,
 10858,
 11791,
 11755,
 10737,
 11561,
 11725,
 10861,
 10105,
 9900,
 9797,
 11810,
 11609,
 9785,
 10623,
 10775,
 9970,
 10164,
 10625,
 11693,
 10809,
 10785,
 11588,
 10935,
 10627,
 11265,
 10293,
 11460,
 11399,
 10550,
 11394,
 9788,
 10880,
 9782,
 9671,
 11614,
 11101,
 10012,
 10291,
 11319,
 10608,
 9763,
 10883,
 10575,
 11547,
 11487,
 11309,
 9922,
 10123,
 11131,
 10278,
 10724,
 9586,
 9877,
 10165,
 10295,
 9856,
 11527,
 10347,
 10185,
 10448,
 9677,
 10795,
 9864,
 11226,
 9817,
 9601,
 11199,
 10837,
 11214,
 11095,
 11073,
 10407,
 11713,
 11311,
 9715,
 10934,
 10600,
 11361,
 11249,
 9867,
 10706,
 11140,
 11483,
 10890,
 10909,
 11549,
 10551,
 11087,
 9665,
 10208,
 11114,
 11033,
 11175,
 11098,
 10840,
 9946,
 10085,
 11241,
 10058,
 10188,
 10669,
 11799,
 11161,
 11195,
 9729,
 11282,
 10299,
 9898,
 10483,
 11000,
 10937,
 9882,
 9906,
 10382,
 10154,
 11436,
 10283,
 10175,
 9769,
 11801,
 11407,
 11330,
 10719,
 11023,
 10384,
 10389,
 9748,
 10141,
 10399,
 11507,
 11805,
 10979,
 10441,
 11130,
 10791,
 10358,
 10018,
 10686,
 9893,
 11510,
 10263,
 10964,
 11042,
 9659,
 11545,
 10933,
 9925,
 10115,
 9774,
 10822,
 10874,
 10681,
 11645,
 9612,
 9644,
 11511,
 9679,
 9930,
 11239,
 11678,
 10204,
 11433,
 11367,
 10173,
 11123,
 10457,
 10831,
 9878,
 10010,
 10643,
 10521,
 10766,
 10137,
 10076,
 10638,
 10687,
 10634,
 11500,
 11752,
 11513,
 10120,
 10756,
 11498,
 10364,
 9837,
 9881,
 11284,
 9904,
 9619,
 11478,
 11225,
 10630,
 9656,
 9876,
 10522,
 9890,
 11746,
 11730,
 10810,
 10129,
 10494,
 11089,
 11116,
 10629,
 11077,
 9852,
 9779,
 10006,
 9988,
 10968,
 10394,
 10597,
 10381,
 10485,
 10868,
 10148,
 11687,
 10490,
 11420,
 10096,
 10954,
 10212,
 9694,
 10205,
 11106,
 11389,
 11050,
 11022,
 10309,
 11778,
 11327,
 10421,
 10945,
 10168,
 10683,
 10503,
 10936,
 9997,
 11193,
 11338,
 10970,
 10678,
 11064,
 10708,
 9914,
 11069,
 9735,
 11763,
 10648,
 10214,
 9592,
 11053,
 10649,
 11345,
 11143,
 11618,
 10887,
 9617,
 9834,
 10605,
 10956,
 11521,
 9859,
 9958,
 11464,
 9846,
 10700,
 11656,
 11785,
 9721,
 10685,
 11141,
 10857,
 11047,
 11471,
 10995,
 10762,
 9857,
 10811,
 9757,
 11424,
 10716,
 11006,
 11287,
 10138,
 11616,
 11227,
 11405,
 9791,
 10435,
 11393,
 11412,
 10277,
 10736,
 10355,
 10915,
 10122,
 9776,
 10733,
 10093,
 10187,
 10528,
 9722,
 9691,
 10893,
 10710,
 11697,
 11672,
 9724,
 11776,
 10554,
 9639,
 9944,
 9912,
 10200,
 9773,
 10778,
 10493,
 10920,
 11775,
 9824,
 10315,
 10131,
 10045,
 10896,
 10276,
 11768,
 9950,
 10338,
 11474,
 11374,
 11180,
 10248,
 10176,
 10367,
 10206,
 11634,
 11640,
 10650,
 10891,
 10267,
 10864,
 11154,
 11743,
 10904,
 10294,
 9996,
 11421,
 10727,
 10286,
 11610,
 9630,
 10334,
 11524,
 10007,
 11254,
 10180,
 11747,
 11358,
 11484,
 11787,
 9675,
 10560,
 9583,
 11381,
 11258,
 11639,
 9753,
 10532,
 11234,
 10740,
 11299,
 10193,
 10169,
 11032,
 11019,
 11633,
 10932,
 11155,
 10118,
 11789,
 10746,
 10409,
 11316,
 11285,
 10558,
 9985,
 11592,
 10786,
 9806,
 10196,
 10981,
 10950,
 11753,
 11315,
 9603,
 10411,
 11280,
 10117,
 11553,
 10296,
 9932,
 10354,
 10359,
 10126,
 10748,
 10851,
 10450,
 9968,
 10072,
 9607,
 11293,
 9626,
 11016,
 9819,
 10606,
 10562,
 ...]
In [7]:
# ids = []
# for item in result:
#     id = item[0]
#     ids.append(id)
# ids = [9131, 9135, 9139, 9140, 9141, 9142, 9151]
In [9]:
sql = "select * from t_camera"
cursor.execute(sql)
camera=cursor.fetchall()
channels = []
In [10]:
for item in camera:
    channels.append(item[17])
In [11]:
channels
Out [11]:
['16',
 '17',
 '18',
 '19',
 '20',
 '21',
 '22',
 '23',
 '24',
 '25',
 '26',
 '27',
 '28',
 '29',
 '30',
 '31',
 '32',
 '33',
 '34',
 '35',
 '36',
 '37',
 '38',
 '39',
 '40',
 '41',
 '42',
 '43',
 '44',
 '45',
 '46',
 '47',
 '1',
 '2',
 '3',
 '4',
 '5',
 '6',
 '7',
 '8',
 '9',
 '10',
 '11',
 '12',
 '13',
 '14',
 '15']
In [12]:
import uuid
In [14]:
times = datetime.now().strftime('%Y-%m-%d %H:%M:%S')
count = random.randint(1, 4)
channel = random.choice(channels)
data = {
  "batch_info": {
    "batch_id": str(uuid.uuid4()),
    "detected_image_path":"",
    "total_faces": count,
    "cameraid": "camera_001",
    "cameracode": "CAM001"
  },
   "results":""
  }
child = []
for item in random.choices(ids, k=count):
    tem =   {
      "sim": "0.876",
      "simFaceurl": "",
      "baseFacesurl": "",
      "faceBaseid": "",
      "name": "",
      "sex": "",
      "empid": f"{item}",
      "telephone": "",
      "remark": "",
      "channel": f"{channel}",
      "ename": "Face",
      "cname": "人脸比对",
      "createtime": times
    }
    child.append(tem)
data["results"] = child
print(data)
post(f"{ip}/ai/stuface/receive",json=data,headers=header).text
Out [14]:
{'batch_info': {'batch_id': '0e76d74a-42ee-4de0-bd3c-b8fd5c817542', 'detected_image_path': '', 'total_faces': 4, 'cameraid': 'camera_001', 'cameracode': 'CAM001'}, 'results': [{'sim': '0.876', 'simFaceurl': '', 'baseFacesurl': '', 'faceBaseid': '', 'name': '', 'sex': '', 'empid': '9941', 'telephone': '', 'remark': '', 'channel': '35', 'ename': 'Face', 'cname': '人脸比对', 'createtime': '2025-10-23 14:36:49'}, {'sim': '0.876', 'simFaceurl': '', 'baseFacesurl': '', 'faceBaseid': '', 'name': '', 'sex': '', 'empid': '9601', 'telephone': '', 'remark': '', 'channel': '35', 'ename': 'Face', 'cname': '人脸比对', 'createtime': '2025-10-23 14:36:49'}, {'sim': '0.876', 'simFaceurl': '', 'baseFacesurl': '', 'faceBaseid': '', 'name': '', 'sex': '', 'empid': '11014', 'telephone': '', 'remark': '', 'channel': '35', 'ename': 'Face', 'cname': '人脸比对', 'createtime': '2025-10-23 14:36:49'}, {'sim': '0.876', 'simFaceurl': '', 'baseFacesurl': '', 'faceBaseid': '', 'name': '', 'sex': '', 'empid': '10540', 'telephone': '', 'remark': '', 'channel': '35', 'ename': 'Face', 'cname': '人脸比对', 'createtime': '2025-10-23 14:36:49'}]}
'{"success":true,"msg":"操作成功","code":0,"data":null}'
In [ ]:
times = datetime.now().strftime('%Y-%m-%d %H:%M:%S')
count = 1
channel = 18
data = {
  "batch_info": {
    "batch_id": str(uuid.uuid4()),
    "detected_image_path":"",
    "total_faces": 3,
    "cameraid": "camera_001",
    "cameracode": "CAM001"
  },
   "results":""
  }
child = []
for item in [11030,11631,10385]:
    tem =   {
      "sim": "0.876",
      "simFaceurl": "",
      "baseFacesurl": "",
      "faceBaseid": "",
      "name": "",
      "sex": "",
      "empid": f"{item}",
      "telephone": "",
      "remark": "",
      "channel": f"{channel}",
      "ename": "Face",
      "cname": "人脸比对",
      "createtime": times
    }
    child.append(tem)
data["results"] = child
post(f"{ip}/ai/stuface/receive",json=data,headers=header).text
'{"success":true,"msg":"操作成功","code":0,"data":null}'
在当前单元格或上一个单元格中执行代码时 Kernel 崩溃。

请查看单元格中的代码,以确定故障的可能原因。

单击<a href='https://aka.ms/vscodeJupyterKernelCrash'>此处</a>了解详细信息。

有关更多详细信息,请查看 Jupyter <a href='command:jupyter.viewOutput'>log</a>。