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

1870 lines
66 KiB
Plaintext

{
"cells": [
{
"cell_type": "code",
"execution_count": 1,
"id": "a84bba60",
"metadata": {},
"outputs": [],
"source": [
"from requests import get,post,put\n",
"import pandas as pd\n",
"import time\n",
"teamId = 106\n",
"# ip = \"http://192.168.0.244:8101\"\n",
"ip = \"http://10.143.25.3:8090\"\n",
"param = {\n",
" \"username\": \"tangchao\",\n",
" \"password\": \"123456a\",\n",
" \"client_id\": \"client\",\n",
" \"grant_type\": \"password\",\n",
" \"client_secret\": \"123456\",\n",
"}\n",
"data = get(url=f\"{ip}/oauth/token\",params=param).json()\n",
"token = data[\"access_token\"]\n",
"header = {\n",
" \"content-type\": \"application/json\",\n",
" \"authorization\": f\"Bearer {token}\",\n",
"}"
]
},
{
"cell_type": "code",
"execution_count": 2,
"id": "b47bd11c",
"metadata": {},
"outputs": [],
"source": [
"camera_data = get(f\"{ip}/camera/pageList?teamId=106&page=1&pageSize=50&pageNumber=1&sortField=id&sortOrder=desc\",headers=header).json()[\"data\"][\"records\"]"
]
},
{
"cell_type": "code",
"execution_count": 3,
"id": "f38aaf58",
"metadata": {},
"outputs": [
{
"data": {
"text/plain": [
"[{'id': 291,\n",
" 'no': '2202',\n",
" 'type': None,\n",
" 'belongNvrId': None,\n",
" 'account': 'admin',\n",
" 'password': 'admin',\n",
" 'ip': '10.143.25.7',\n",
" 'port': '80',\n",
" 'name': '2-202',\n",
" 'ptzControl': 0,\n",
" 'enable': 0,\n",
" 'testerId': None,\n",
" 'position': None,\n",
" 'initialStateHeight': None,\n",
" 'initialStatePitchAngle': None,\n",
" 'app': None,\n",
" 'channel': '1',\n",
" 'liveurl': None,\n",
" 'channelNo': None,\n",
" 'roomId': 267,\n",
" 'teamId': 106,\n",
" 'createTime': 1755489156000,\n",
" 'updateTime': None,\n",
" 'pullUrl': None,\n",
" 'status': 0,\n",
" 'onlineTime': 1766548320000,\n",
" 'classRoom': '2-202'},\n",
" {'id': 292,\n",
" 'no': '2203',\n",
" 'type': None,\n",
" 'belongNvrId': None,\n",
" 'account': 'admin',\n",
" 'password': 'admin',\n",
" 'ip': '10.143.25.10',\n",
" 'port': '80',\n",
" 'name': '2-203',\n",
" 'ptzControl': 0,\n",
" 'enable': 0,\n",
" 'testerId': None,\n",
" 'position': None,\n",
" 'initialStateHeight': None,\n",
" 'initialStatePitchAngle': None,\n",
" 'app': None,\n",
" 'channel': '2',\n",
" 'liveurl': None,\n",
" 'channelNo': None,\n",
" 'roomId': 268,\n",
" 'teamId': 106,\n",
" 'createTime': 1755489156000,\n",
" 'updateTime': None,\n",
" 'pullUrl': None,\n",
" 'status': 1,\n",
" 'onlineTime': 1766573460000,\n",
" 'classRoom': '2-203'},\n",
" {'id': 293,\n",
" 'no': '2204',\n",
" 'type': None,\n",
" 'belongNvrId': None,\n",
" 'account': 'admin',\n",
" 'password': 'admin',\n",
" 'ip': '10.143.25.13',\n",
" 'port': '80',\n",
" 'name': '2-204',\n",
" 'ptzControl': 0,\n",
" 'enable': 0,\n",
" 'testerId': None,\n",
" 'position': None,\n",
" 'initialStateHeight': None,\n",
" 'initialStatePitchAngle': None,\n",
" 'app': None,\n",
" 'channel': '3',\n",
" 'liveurl': None,\n",
" 'channelNo': None,\n",
" 'roomId': 269,\n",
" 'teamId': 106,\n",
" 'createTime': 1755489156000,\n",
" 'updateTime': None,\n",
" 'pullUrl': None,\n",
" 'status': 1,\n",
" 'onlineTime': 1766573460000,\n",
" 'classRoom': '2-204'},\n",
" {'id': 294,\n",
" 'no': '2205',\n",
" 'type': None,\n",
" 'belongNvrId': None,\n",
" 'account': 'admin',\n",
" 'password': 'admin',\n",
" 'ip': '10.143.25.16',\n",
" 'port': '80',\n",
" 'name': '2-205',\n",
" 'ptzControl': 0,\n",
" 'enable': 0,\n",
" 'testerId': None,\n",
" 'position': None,\n",
" 'initialStateHeight': None,\n",
" 'initialStatePitchAngle': None,\n",
" 'app': None,\n",
" 'channel': '4',\n",
" 'liveurl': None,\n",
" 'channelNo': None,\n",
" 'roomId': 270,\n",
" 'teamId': 106,\n",
" 'createTime': 1755489156000,\n",
" 'updateTime': None,\n",
" 'pullUrl': None,\n",
" 'status': 1,\n",
" 'onlineTime': 1766573460000,\n",
" 'classRoom': '2-205'},\n",
" {'id': 295,\n",
" 'no': '2206',\n",
" 'type': None,\n",
" 'belongNvrId': None,\n",
" 'account': 'admin',\n",
" 'password': 'admin',\n",
" 'ip': '10.143.25.19',\n",
" 'port': '80',\n",
" 'name': '2-206',\n",
" 'ptzControl': 0,\n",
" 'enable': 0,\n",
" 'testerId': None,\n",
" 'position': None,\n",
" 'initialStateHeight': None,\n",
" 'initialStatePitchAngle': None,\n",
" 'app': None,\n",
" 'channel': '5',\n",
" 'liveurl': None,\n",
" 'channelNo': None,\n",
" 'roomId': 271,\n",
" 'teamId': 106,\n",
" 'createTime': 1755489156000,\n",
" 'updateTime': None,\n",
" 'pullUrl': None,\n",
" 'status': 0,\n",
" 'onlineTime': 1765520810000,\n",
" 'classRoom': '2-206'},\n",
" {'id': 296,\n",
" 'no': '2207',\n",
" 'type': None,\n",
" 'belongNvrId': None,\n",
" 'account': 'admin',\n",
" 'password': 'admin',\n",
" 'ip': '10.143.25.22',\n",
" 'port': '80',\n",
" 'name': '2-207',\n",
" 'ptzControl': 0,\n",
" 'enable': 0,\n",
" 'testerId': None,\n",
" 'position': None,\n",
" 'initialStateHeight': None,\n",
" 'initialStatePitchAngle': None,\n",
" 'app': None,\n",
" 'channel': '6',\n",
" 'liveurl': None,\n",
" 'channelNo': None,\n",
" 'roomId': 272,\n",
" 'teamId': 106,\n",
" 'createTime': 1755489156000,\n",
" 'updateTime': None,\n",
" 'pullUrl': None,\n",
" 'status': 1,\n",
" 'onlineTime': 1766573460000,\n",
" 'classRoom': '2-207'},\n",
" {'id': 297,\n",
" 'no': '2208',\n",
" 'type': None,\n",
" 'belongNvrId': None,\n",
" 'account': 'admin',\n",
" 'password': 'admin',\n",
" 'ip': '10.143.25.25',\n",
" 'port': '80',\n",
" 'name': '2-208',\n",
" 'ptzControl': 0,\n",
" 'enable': 0,\n",
" 'testerId': None,\n",
" 'position': None,\n",
" 'initialStateHeight': None,\n",
" 'initialStatePitchAngle': None,\n",
" 'app': None,\n",
" 'channel': '7',\n",
" 'liveurl': None,\n",
" 'channelNo': None,\n",
" 'roomId': 273,\n",
" 'teamId': 106,\n",
" 'createTime': 1755489156000,\n",
" 'updateTime': None,\n",
" 'pullUrl': None,\n",
" 'status': 1,\n",
" 'onlineTime': 1766573460000,\n",
" 'classRoom': '2-208'},\n",
" {'id': 298,\n",
" 'no': '2209',\n",
" 'type': None,\n",
" 'belongNvrId': None,\n",
" 'account': 'admin',\n",
" 'password': 'admin',\n",
" 'ip': '10.143.25.28',\n",
" 'port': '80',\n",
" 'name': '2-209',\n",
" 'ptzControl': 0,\n",
" 'enable': 0,\n",
" 'testerId': None,\n",
" 'position': None,\n",
" 'initialStateHeight': None,\n",
" 'initialStatePitchAngle': None,\n",
" 'app': None,\n",
" 'channel': '8',\n",
" 'liveurl': None,\n",
" 'channelNo': None,\n",
" 'roomId': 274,\n",
" 'teamId': 106,\n",
" 'createTime': 1755489156000,\n",
" 'updateTime': None,\n",
" 'pullUrl': None,\n",
" 'status': 0,\n",
" 'onlineTime': 1765888140000,\n",
" 'classRoom': '2-209'},\n",
" {'id': 299,\n",
" 'no': '2302',\n",
" 'type': None,\n",
" 'belongNvrId': None,\n",
" 'account': 'admin',\n",
" 'password': 'admin',\n",
" 'ip': '10.143.25.31',\n",
" 'port': '80',\n",
" 'name': '2-302',\n",
" 'ptzControl': 0,\n",
" 'enable': 0,\n",
" 'testerId': None,\n",
" 'position': None,\n",
" 'initialStateHeight': None,\n",
" 'initialStatePitchAngle': None,\n",
" 'app': None,\n",
" 'channel': '9',\n",
" 'liveurl': None,\n",
" 'channelNo': None,\n",
" 'roomId': 293,\n",
" 'teamId': 106,\n",
" 'createTime': 1755489156000,\n",
" 'updateTime': None,\n",
" 'pullUrl': None,\n",
" 'status': 1,\n",
" 'onlineTime': 1766573460000,\n",
" 'classRoom': '2-302'},\n",
" {'id': 300,\n",
" 'no': '2303',\n",
" 'type': None,\n",
" 'belongNvrId': None,\n",
" 'account': 'admin',\n",
" 'password': 'admin',\n",
" 'ip': '10.143.25.34',\n",
" 'port': '80',\n",
" 'name': '2-303',\n",
" 'ptzControl': 0,\n",
" 'enable': 0,\n",
" 'testerId': None,\n",
" 'position': None,\n",
" 'initialStateHeight': None,\n",
" 'initialStatePitchAngle': None,\n",
" 'app': None,\n",
" 'channel': '10',\n",
" 'liveurl': None,\n",
" 'channelNo': None,\n",
" 'roomId': 294,\n",
" 'teamId': 106,\n",
" 'createTime': 1755489156000,\n",
" 'updateTime': None,\n",
" 'pullUrl': None,\n",
" 'status': 1,\n",
" 'onlineTime': 1766573460000,\n",
" 'classRoom': '2-303'},\n",
" {'id': 301,\n",
" 'no': '2304',\n",
" 'type': None,\n",
" 'belongNvrId': None,\n",
" 'account': 'admin',\n",
" 'password': 'admin',\n",
" 'ip': '10.143.25.37',\n",
" 'port': '80',\n",
" 'name': '2-304',\n",
" 'ptzControl': 0,\n",
" 'enable': 0,\n",
" 'testerId': None,\n",
" 'position': None,\n",
" 'initialStateHeight': None,\n",
" 'initialStatePitchAngle': None,\n",
" 'app': None,\n",
" 'channel': '11',\n",
" 'liveurl': None,\n",
" 'channelNo': None,\n",
" 'roomId': 295,\n",
" 'teamId': 106,\n",
" 'createTime': 1755489156000,\n",
" 'updateTime': None,\n",
" 'pullUrl': None,\n",
" 'status': 1,\n",
" 'onlineTime': 1766573460000,\n",
" 'classRoom': '2-304'},\n",
" {'id': 302,\n",
" 'no': '2305',\n",
" 'type': None,\n",
" 'belongNvrId': None,\n",
" 'account': 'admin',\n",
" 'password': 'admin',\n",
" 'ip': '10.143.25.40',\n",
" 'port': '80',\n",
" 'name': '2-305',\n",
" 'ptzControl': 0,\n",
" 'enable': 0,\n",
" 'testerId': None,\n",
" 'position': None,\n",
" 'initialStateHeight': None,\n",
" 'initialStatePitchAngle': None,\n",
" 'app': None,\n",
" 'channel': '12',\n",
" 'liveurl': None,\n",
" 'channelNo': None,\n",
" 'roomId': 296,\n",
" 'teamId': 106,\n",
" 'createTime': 1755489156000,\n",
" 'updateTime': None,\n",
" 'pullUrl': None,\n",
" 'status': 1,\n",
" 'onlineTime': 1766573460000,\n",
" 'classRoom': '2-305'},\n",
" {'id': 303,\n",
" 'no': '2306',\n",
" 'type': None,\n",
" 'belongNvrId': None,\n",
" 'account': 'admin',\n",
" 'password': 'admin',\n",
" 'ip': '10.143.25.43',\n",
" 'port': '80',\n",
" 'name': '2-306',\n",
" 'ptzControl': 0,\n",
" 'enable': 0,\n",
" 'testerId': None,\n",
" 'position': None,\n",
" 'initialStateHeight': None,\n",
" 'initialStatePitchAngle': None,\n",
" 'app': None,\n",
" 'channel': '13',\n",
" 'liveurl': None,\n",
" 'channelNo': None,\n",
" 'roomId': 297,\n",
" 'teamId': 106,\n",
" 'createTime': 1755489156000,\n",
" 'updateTime': None,\n",
" 'pullUrl': None,\n",
" 'status': 1,\n",
" 'onlineTime': 1766573460000,\n",
" 'classRoom': '2-306'},\n",
" {'id': 304,\n",
" 'no': '2307',\n",
" 'type': None,\n",
" 'belongNvrId': None,\n",
" 'account': 'admin',\n",
" 'password': 'admin',\n",
" 'ip': '10.143.25.46',\n",
" 'port': '80',\n",
" 'name': '2-307',\n",
" 'ptzControl': 0,\n",
" 'enable': 0,\n",
" 'testerId': None,\n",
" 'position': None,\n",
" 'initialStateHeight': None,\n",
" 'initialStatePitchAngle': None,\n",
" 'app': None,\n",
" 'channel': '14',\n",
" 'liveurl': None,\n",
" 'channelNo': None,\n",
" 'roomId': 298,\n",
" 'teamId': 106,\n",
" 'createTime': 1755489156000,\n",
" 'updateTime': None,\n",
" 'pullUrl': None,\n",
" 'status': 1,\n",
" 'onlineTime': 1766573460000,\n",
" 'classRoom': '2-307'},\n",
" {'id': 305,\n",
" 'no': '2308',\n",
" 'type': None,\n",
" 'belongNvrId': None,\n",
" 'account': 'admin',\n",
" 'password': 'admin',\n",
" 'ip': '10.143.25.49',\n",
" 'port': '80',\n",
" 'name': '2-308',\n",
" 'ptzControl': 0,\n",
" 'enable': 0,\n",
" 'testerId': None,\n",
" 'position': None,\n",
" 'initialStateHeight': None,\n",
" 'initialStatePitchAngle': None,\n",
" 'app': None,\n",
" 'channel': '15',\n",
" 'liveurl': None,\n",
" 'channelNo': None,\n",
" 'roomId': 299,\n",
" 'teamId': 106,\n",
" 'createTime': 1755489156000,\n",
" 'updateTime': None,\n",
" 'pullUrl': None,\n",
" 'status': 1,\n",
" 'onlineTime': 1766573460000,\n",
" 'classRoom': '2-308'},\n",
" {'id': 306,\n",
" 'no': '2309',\n",
" 'type': None,\n",
" 'belongNvrId': None,\n",
" 'account': 'admin',\n",
" 'password': 'admin',\n",
" 'ip': '10.143.25.52',\n",
" 'port': '80',\n",
" 'name': '2-309',\n",
" 'ptzControl': 0,\n",
" 'enable': 0,\n",
" 'testerId': None,\n",
" 'position': None,\n",
" 'initialStateHeight': None,\n",
" 'initialStatePitchAngle': None,\n",
" 'app': None,\n",
" 'channel': '16',\n",
" 'liveurl': None,\n",
" 'channelNo': None,\n",
" 'roomId': 300,\n",
" 'teamId': 106,\n",
" 'createTime': 1755489156000,\n",
" 'updateTime': None,\n",
" 'pullUrl': None,\n",
" 'status': 1,\n",
" 'onlineTime': 1766573460000,\n",
" 'classRoom': '2-309'},\n",
" {'id': 307,\n",
" 'no': '2301',\n",
" 'type': None,\n",
" 'belongNvrId': None,\n",
" 'account': 'admin',\n",
" 'password': 'admin',\n",
" 'ip': '10.143.25.79',\n",
" 'port': '80',\n",
" 'name': '2-301',\n",
" 'ptzControl': 0,\n",
" 'enable': 0,\n",
" 'testerId': None,\n",
" 'position': None,\n",
" 'initialStateHeight': None,\n",
" 'initialStatePitchAngle': None,\n",
" 'app': None,\n",
" 'channel': '17',\n",
" 'liveurl': None,\n",
" 'channelNo': None,\n",
" 'roomId': 292,\n",
" 'teamId': 106,\n",
" 'createTime': 1755489156000,\n",
" 'updateTime': None,\n",
" 'pullUrl': None,\n",
" 'status': 1,\n",
" 'onlineTime': 1766573460000,\n",
" 'classRoom': '2-301'},\n",
" {'id': 308,\n",
" 'no': '2402',\n",
" 'type': None,\n",
" 'belongNvrId': None,\n",
" 'account': 'admin',\n",
" 'password': 'admin',\n",
" 'ip': '10.143.25.55',\n",
" 'port': '80',\n",
" 'name': '2-402',\n",
" 'ptzControl': 0,\n",
" 'enable': 0,\n",
" 'testerId': None,\n",
" 'position': None,\n",
" 'initialStateHeight': None,\n",
" 'initialStatePitchAngle': None,\n",
" 'app': None,\n",
" 'channel': '18',\n",
" 'liveurl': None,\n",
" 'channelNo': None,\n",
" 'roomId': 284,\n",
" 'teamId': 106,\n",
" 'createTime': 1755489156000,\n",
" 'updateTime': None,\n",
" 'pullUrl': None,\n",
" 'status': 1,\n",
" 'onlineTime': 1766573460000,\n",
" 'classRoom': '2-402'},\n",
" {'id': 309,\n",
" 'no': '2403',\n",
" 'type': None,\n",
" 'belongNvrId': None,\n",
" 'account': 'admin',\n",
" 'password': 'admin',\n",
" 'ip': '10.143.25.58',\n",
" 'port': '80',\n",
" 'name': '2-403',\n",
" 'ptzControl': 0,\n",
" 'enable': 0,\n",
" 'testerId': None,\n",
" 'position': None,\n",
" 'initialStateHeight': None,\n",
" 'initialStatePitchAngle': None,\n",
" 'app': None,\n",
" 'channel': '19',\n",
" 'liveurl': None,\n",
" 'channelNo': None,\n",
" 'roomId': 285,\n",
" 'teamId': 106,\n",
" 'createTime': 1755489156000,\n",
" 'updateTime': None,\n",
" 'pullUrl': None,\n",
" 'status': 1,\n",
" 'onlineTime': 1766573460000,\n",
" 'classRoom': '2-403'},\n",
" {'id': 310,\n",
" 'no': '2404',\n",
" 'type': None,\n",
" 'belongNvrId': None,\n",
" 'account': 'admin',\n",
" 'password': 'admin',\n",
" 'ip': '10.143.25.61',\n",
" 'port': '80',\n",
" 'name': '2-404',\n",
" 'ptzControl': 0,\n",
" 'enable': 0,\n",
" 'testerId': None,\n",
" 'position': None,\n",
" 'initialStateHeight': None,\n",
" 'initialStatePitchAngle': None,\n",
" 'app': None,\n",
" 'channel': '20',\n",
" 'liveurl': None,\n",
" 'channelNo': None,\n",
" 'roomId': 286,\n",
" 'teamId': 106,\n",
" 'createTime': 1755489156000,\n",
" 'updateTime': None,\n",
" 'pullUrl': None,\n",
" 'status': 1,\n",
" 'onlineTime': 1766573460000,\n",
" 'classRoom': '2-404'},\n",
" {'id': 311,\n",
" 'no': '2405',\n",
" 'type': None,\n",
" 'belongNvrId': None,\n",
" 'account': 'admin',\n",
" 'password': 'admin',\n",
" 'ip': '10.143.25.64',\n",
" 'port': '80',\n",
" 'name': '2-405',\n",
" 'ptzControl': 0,\n",
" 'enable': 0,\n",
" 'testerId': None,\n",
" 'position': None,\n",
" 'initialStateHeight': None,\n",
" 'initialStatePitchAngle': None,\n",
" 'app': None,\n",
" 'channel': '21',\n",
" 'liveurl': None,\n",
" 'channelNo': None,\n",
" 'roomId': 287,\n",
" 'teamId': 106,\n",
" 'createTime': 1755489156000,\n",
" 'updateTime': None,\n",
" 'pullUrl': None,\n",
" 'status': 1,\n",
" 'onlineTime': 1766573460000,\n",
" 'classRoom': '2-405'},\n",
" {'id': 312,\n",
" 'no': '2406',\n",
" 'type': None,\n",
" 'belongNvrId': None,\n",
" 'account': 'admin',\n",
" 'password': 'admin',\n",
" 'ip': '10.143.25.67',\n",
" 'port': '80',\n",
" 'name': '2-406',\n",
" 'ptzControl': 0,\n",
" 'enable': 0,\n",
" 'testerId': None,\n",
" 'position': None,\n",
" 'initialStateHeight': None,\n",
" 'initialStatePitchAngle': None,\n",
" 'app': None,\n",
" 'channel': '22',\n",
" 'liveurl': None,\n",
" 'channelNo': None,\n",
" 'roomId': 288,\n",
" 'teamId': 106,\n",
" 'createTime': 1755489156000,\n",
" 'updateTime': None,\n",
" 'pullUrl': None,\n",
" 'status': 1,\n",
" 'onlineTime': 1766573460000,\n",
" 'classRoom': '2-406'},\n",
" {'id': 313,\n",
" 'no': '2407',\n",
" 'type': None,\n",
" 'belongNvrId': None,\n",
" 'account': 'admin',\n",
" 'password': 'admin',\n",
" 'ip': '10.143.25.70',\n",
" 'port': '80',\n",
" 'name': '2-407',\n",
" 'ptzControl': 0,\n",
" 'enable': 0,\n",
" 'testerId': None,\n",
" 'position': None,\n",
" 'initialStateHeight': None,\n",
" 'initialStatePitchAngle': None,\n",
" 'app': None,\n",
" 'channel': '23',\n",
" 'liveurl': None,\n",
" 'channelNo': None,\n",
" 'roomId': 289,\n",
" 'teamId': 106,\n",
" 'createTime': 1755489156000,\n",
" 'updateTime': None,\n",
" 'pullUrl': None,\n",
" 'status': 1,\n",
" 'onlineTime': 1766573460000,\n",
" 'classRoom': '2-407'},\n",
" {'id': 314,\n",
" 'no': '2408',\n",
" 'type': None,\n",
" 'belongNvrId': None,\n",
" 'account': 'admin',\n",
" 'password': 'admin',\n",
" 'ip': '10.143.25.73',\n",
" 'port': '80',\n",
" 'name': '2-408',\n",
" 'ptzControl': 0,\n",
" 'enable': 0,\n",
" 'testerId': None,\n",
" 'position': None,\n",
" 'initialStateHeight': None,\n",
" 'initialStatePitchAngle': None,\n",
" 'app': None,\n",
" 'channel': '24',\n",
" 'liveurl': None,\n",
" 'channelNo': None,\n",
" 'roomId': 290,\n",
" 'teamId': 106,\n",
" 'createTime': 1755489156000,\n",
" 'updateTime': None,\n",
" 'pullUrl': None,\n",
" 'status': 1,\n",
" 'onlineTime': 1766573460000,\n",
" 'classRoom': '2-408'},\n",
" {'id': 315,\n",
" 'no': '2409',\n",
" 'type': None,\n",
" 'belongNvrId': None,\n",
" 'account': 'admin',\n",
" 'password': 'admin',\n",
" 'ip': '10.143.25.76',\n",
" 'port': '80',\n",
" 'name': '2-409',\n",
" 'ptzControl': 0,\n",
" 'enable': 0,\n",
" 'testerId': None,\n",
" 'position': None,\n",
" 'initialStateHeight': None,\n",
" 'initialStatePitchAngle': None,\n",
" 'app': None,\n",
" 'channel': '25',\n",
" 'liveurl': None,\n",
" 'channelNo': None,\n",
" 'roomId': 291,\n",
" 'teamId': 106,\n",
" 'createTime': 1755489156000,\n",
" 'updateTime': None,\n",
" 'pullUrl': None,\n",
" 'status': 1,\n",
" 'onlineTime': 1766573460000,\n",
" 'classRoom': '2-409'},\n",
" {'id': 316,\n",
" 'no': '1202',\n",
" 'type': None,\n",
" 'belongNvrId': None,\n",
" 'account': 'admin',\n",
" 'password': 'admin',\n",
" 'ip': '10.143.25.82',\n",
" 'port': '80',\n",
" 'name': '1-202',\n",
" 'ptzControl': 0,\n",
" 'enable': 0,\n",
" 'testerId': None,\n",
" 'position': None,\n",
" 'initialStateHeight': None,\n",
" 'initialStatePitchAngle': None,\n",
" 'app': None,\n",
" 'channel': '26',\n",
" 'liveurl': None,\n",
" 'channelNo': None,\n",
" 'roomId': 245,\n",
" 'teamId': 106,\n",
" 'createTime': 1755489156000,\n",
" 'updateTime': None,\n",
" 'pullUrl': None,\n",
" 'status': 1,\n",
" 'onlineTime': 1766573460000,\n",
" 'classRoom': '1-202'},\n",
" {'id': 317,\n",
" 'no': '1203',\n",
" 'type': None,\n",
" 'belongNvrId': None,\n",
" 'account': 'admin',\n",
" 'password': 'admin',\n",
" 'ip': '10.143.25.85',\n",
" 'port': '80',\n",
" 'name': '1-203',\n",
" 'ptzControl': 0,\n",
" 'enable': 0,\n",
" 'testerId': None,\n",
" 'position': None,\n",
" 'initialStateHeight': None,\n",
" 'initialStatePitchAngle': None,\n",
" 'app': None,\n",
" 'channel': '27',\n",
" 'liveurl': None,\n",
" 'channelNo': None,\n",
" 'roomId': 246,\n",
" 'teamId': 106,\n",
" 'createTime': 1755489156000,\n",
" 'updateTime': None,\n",
" 'pullUrl': None,\n",
" 'status': 1,\n",
" 'onlineTime': 1766573460000,\n",
" 'classRoom': '1-203'},\n",
" {'id': 318,\n",
" 'no': '1204',\n",
" 'type': None,\n",
" 'belongNvrId': None,\n",
" 'account': 'admin',\n",
" 'password': 'admin',\n",
" 'ip': '10.143.25.88',\n",
" 'port': '80',\n",
" 'name': '1-204',\n",
" 'ptzControl': 0,\n",
" 'enable': 0,\n",
" 'testerId': None,\n",
" 'position': None,\n",
" 'initialStateHeight': None,\n",
" 'initialStatePitchAngle': None,\n",
" 'app': None,\n",
" 'channel': '28',\n",
" 'liveurl': None,\n",
" 'channelNo': None,\n",
" 'roomId': 247,\n",
" 'teamId': 106,\n",
" 'createTime': 1755489156000,\n",
" 'updateTime': None,\n",
" 'pullUrl': None,\n",
" 'status': 1,\n",
" 'onlineTime': 1766573460000,\n",
" 'classRoom': '1-204'},\n",
" {'id': 319,\n",
" 'no': '1205',\n",
" 'type': None,\n",
" 'belongNvrId': None,\n",
" 'account': 'admin',\n",
" 'password': 'admin',\n",
" 'ip': '10.143.25.91',\n",
" 'port': '80',\n",
" 'name': '1-205',\n",
" 'ptzControl': 0,\n",
" 'enable': 0,\n",
" 'testerId': None,\n",
" 'position': None,\n",
" 'initialStateHeight': None,\n",
" 'initialStatePitchAngle': None,\n",
" 'app': None,\n",
" 'channel': '29',\n",
" 'liveurl': None,\n",
" 'channelNo': None,\n",
" 'roomId': 248,\n",
" 'teamId': 106,\n",
" 'createTime': 1755489156000,\n",
" 'updateTime': None,\n",
" 'pullUrl': None,\n",
" 'status': 1,\n",
" 'onlineTime': 1766573460000,\n",
" 'classRoom': '1-205'},\n",
" {'id': 320,\n",
" 'no': '1206',\n",
" 'type': None,\n",
" 'belongNvrId': None,\n",
" 'account': 'admin',\n",
" 'password': 'admin',\n",
" 'ip': '10.143.25.94',\n",
" 'port': '80',\n",
" 'name': '1-206',\n",
" 'ptzControl': 0,\n",
" 'enable': 0,\n",
" 'testerId': None,\n",
" 'position': None,\n",
" 'initialStateHeight': None,\n",
" 'initialStatePitchAngle': None,\n",
" 'app': None,\n",
" 'channel': '30',\n",
" 'liveurl': None,\n",
" 'channelNo': None,\n",
" 'roomId': 249,\n",
" 'teamId': 106,\n",
" 'createTime': 1755489156000,\n",
" 'updateTime': None,\n",
" 'pullUrl': None,\n",
" 'status': 1,\n",
" 'onlineTime': 1766573460000,\n",
" 'classRoom': '1-206'},\n",
" {'id': 321,\n",
" 'no': '1207',\n",
" 'type': None,\n",
" 'belongNvrId': None,\n",
" 'account': 'admin',\n",
" 'password': 'admin',\n",
" 'ip': '10.143.25.97',\n",
" 'port': '80',\n",
" 'name': '1-207',\n",
" 'ptzControl': 0,\n",
" 'enable': 0,\n",
" 'testerId': None,\n",
" 'position': None,\n",
" 'initialStateHeight': None,\n",
" 'initialStatePitchAngle': None,\n",
" 'app': None,\n",
" 'channel': '31',\n",
" 'liveurl': None,\n",
" 'channelNo': None,\n",
" 'roomId': 250,\n",
" 'teamId': 106,\n",
" 'createTime': 1755489156000,\n",
" 'updateTime': None,\n",
" 'pullUrl': None,\n",
" 'status': 1,\n",
" 'onlineTime': 1766573460000,\n",
" 'classRoom': '1-207'},\n",
" {'id': 322,\n",
" 'no': '1210',\n",
" 'type': None,\n",
" 'belongNvrId': None,\n",
" 'account': 'admin',\n",
" 'password': 'admin',\n",
" 'ip': '10.143.25.100',\n",
" 'port': '80',\n",
" 'name': '1-210',\n",
" 'ptzControl': 0,\n",
" 'enable': 0,\n",
" 'testerId': None,\n",
" 'position': None,\n",
" 'initialStateHeight': None,\n",
" 'initialStatePitchAngle': None,\n",
" 'app': None,\n",
" 'channel': '32',\n",
" 'liveurl': None,\n",
" 'channelNo': None,\n",
" 'roomId': 301,\n",
" 'teamId': 106,\n",
" 'createTime': 1755489156000,\n",
" 'updateTime': None,\n",
" 'pullUrl': None,\n",
" 'status': 1,\n",
" 'onlineTime': 1766573460000,\n",
" 'classRoom': '1-210'},\n",
" {'id': 323,\n",
" 'no': '1302',\n",
" 'type': None,\n",
" 'belongNvrId': None,\n",
" 'account': 'admin',\n",
" 'password': 'admin',\n",
" 'ip': '10.143.25.106',\n",
" 'port': '80',\n",
" 'name': '1-302',\n",
" 'ptzControl': 0,\n",
" 'enable': 0,\n",
" 'testerId': None,\n",
" 'position': None,\n",
" 'initialStateHeight': None,\n",
" 'initialStatePitchAngle': None,\n",
" 'app': None,\n",
" 'channel': '33',\n",
" 'liveurl': None,\n",
" 'channelNo': None,\n",
" 'roomId': 252,\n",
" 'teamId': 106,\n",
" 'createTime': 1755489156000,\n",
" 'updateTime': None,\n",
" 'pullUrl': None,\n",
" 'status': 1,\n",
" 'onlineTime': 1766573460000,\n",
" 'classRoom': '1-302'},\n",
" {'id': 324,\n",
" 'no': '1303',\n",
" 'type': None,\n",
" 'belongNvrId': None,\n",
" 'account': 'admin',\n",
" 'password': 'admin',\n",
" 'ip': '10.143.25.109',\n",
" 'port': '80',\n",
" 'name': '1-303',\n",
" 'ptzControl': 0,\n",
" 'enable': 0,\n",
" 'testerId': None,\n",
" 'position': None,\n",
" 'initialStateHeight': None,\n",
" 'initialStatePitchAngle': None,\n",
" 'app': None,\n",
" 'channel': '34',\n",
" 'liveurl': None,\n",
" 'channelNo': None,\n",
" 'roomId': 253,\n",
" 'teamId': 106,\n",
" 'createTime': 1755489156000,\n",
" 'updateTime': None,\n",
" 'pullUrl': None,\n",
" 'status': 1,\n",
" 'onlineTime': 1766573460000,\n",
" 'classRoom': '1-303'},\n",
" {'id': 325,\n",
" 'no': '1304',\n",
" 'type': None,\n",
" 'belongNvrId': None,\n",
" 'account': 'admin',\n",
" 'password': 'admin',\n",
" 'ip': '10.143.25.112',\n",
" 'port': '80',\n",
" 'name': '1-304',\n",
" 'ptzControl': 0,\n",
" 'enable': 0,\n",
" 'testerId': None,\n",
" 'position': None,\n",
" 'initialStateHeight': None,\n",
" 'initialStatePitchAngle': None,\n",
" 'app': None,\n",
" 'channel': '35',\n",
" 'liveurl': None,\n",
" 'channelNo': None,\n",
" 'roomId': 254,\n",
" 'teamId': 106,\n",
" 'createTime': 1755489156000,\n",
" 'updateTime': None,\n",
" 'pullUrl': None,\n",
" 'status': 0,\n",
" 'onlineTime': 1766480820000,\n",
" 'classRoom': '1-304'},\n",
" {'id': 326,\n",
" 'no': '1305',\n",
" 'type': None,\n",
" 'belongNvrId': None,\n",
" 'account': 'admin',\n",
" 'password': 'admin',\n",
" 'ip': '10.143.25.115',\n",
" 'port': '80',\n",
" 'name': '1-305',\n",
" 'ptzControl': 0,\n",
" 'enable': 0,\n",
" 'testerId': None,\n",
" 'position': None,\n",
" 'initialStateHeight': None,\n",
" 'initialStatePitchAngle': None,\n",
" 'app': None,\n",
" 'channel': '36',\n",
" 'liveurl': None,\n",
" 'channelNo': None,\n",
" 'roomId': 255,\n",
" 'teamId': 106,\n",
" 'createTime': 1755489156000,\n",
" 'updateTime': None,\n",
" 'pullUrl': None,\n",
" 'status': 1,\n",
" 'onlineTime': 1766573460000,\n",
" 'classRoom': '1-305'},\n",
" {'id': 327,\n",
" 'no': '1306',\n",
" 'type': None,\n",
" 'belongNvrId': None,\n",
" 'account': 'admin',\n",
" 'password': 'admin',\n",
" 'ip': '10.143.25.118',\n",
" 'port': '80',\n",
" 'name': '1-306',\n",
" 'ptzControl': 0,\n",
" 'enable': 0,\n",
" 'testerId': None,\n",
" 'position': None,\n",
" 'initialStateHeight': None,\n",
" 'initialStatePitchAngle': None,\n",
" 'app': None,\n",
" 'channel': '37',\n",
" 'liveurl': None,\n",
" 'channelNo': None,\n",
" 'roomId': 256,\n",
" 'teamId': 106,\n",
" 'createTime': 1755489156000,\n",
" 'updateTime': None,\n",
" 'pullUrl': None,\n",
" 'status': 1,\n",
" 'onlineTime': 1766573460000,\n",
" 'classRoom': '1-306'},\n",
" {'id': 328,\n",
" 'no': '1307',\n",
" 'type': None,\n",
" 'belongNvrId': None,\n",
" 'account': 'admin',\n",
" 'password': 'admin',\n",
" 'ip': '10.143.25.121',\n",
" 'port': '80',\n",
" 'name': '1-307',\n",
" 'ptzControl': 0,\n",
" 'enable': 0,\n",
" 'testerId': None,\n",
" 'position': None,\n",
" 'initialStateHeight': None,\n",
" 'initialStatePitchAngle': None,\n",
" 'app': None,\n",
" 'channel': '38',\n",
" 'liveurl': None,\n",
" 'channelNo': None,\n",
" 'roomId': 257,\n",
" 'teamId': 106,\n",
" 'createTime': 1755489156000,\n",
" 'updateTime': None,\n",
" 'pullUrl': None,\n",
" 'status': 1,\n",
" 'onlineTime': 1766573460000,\n",
" 'classRoom': '1-307'},\n",
" {'id': 329,\n",
" 'no': '1301',\n",
" 'type': None,\n",
" 'belongNvrId': None,\n",
" 'account': 'admin',\n",
" 'password': 'admin',\n",
" 'ip': '10.143.25.124',\n",
" 'port': '80',\n",
" 'name': '1-301',\n",
" 'ptzControl': 0,\n",
" 'enable': 0,\n",
" 'testerId': None,\n",
" 'position': None,\n",
" 'initialStateHeight': None,\n",
" 'initialStatePitchAngle': None,\n",
" 'app': None,\n",
" 'channel': '39',\n",
" 'liveurl': None,\n",
" 'channelNo': None,\n",
" 'roomId': 251,\n",
" 'teamId': 106,\n",
" 'createTime': 1755489156000,\n",
" 'updateTime': None,\n",
" 'pullUrl': None,\n",
" 'status': 1,\n",
" 'onlineTime': 1766573460000,\n",
" 'classRoom': '1-301'},\n",
" {'id': 330,\n",
" 'no': '1310',\n",
" 'type': None,\n",
" 'belongNvrId': None,\n",
" 'account': 'admin',\n",
" 'password': 'admin',\n",
" 'ip': '10.143.25.127',\n",
" 'port': '80',\n",
" 'name': '1-310',\n",
" 'ptzControl': 0,\n",
" 'enable': 0,\n",
" 'testerId': None,\n",
" 'position': None,\n",
" 'initialStateHeight': None,\n",
" 'initialStatePitchAngle': None,\n",
" 'app': None,\n",
" 'channel': '40',\n",
" 'liveurl': None,\n",
" 'channelNo': None,\n",
" 'roomId': 258,\n",
" 'teamId': 106,\n",
" 'createTime': 1755489156000,\n",
" 'updateTime': None,\n",
" 'pullUrl': None,\n",
" 'status': 1,\n",
" 'onlineTime': 1766573460000,\n",
" 'classRoom': '1-310'},\n",
" {'id': 331,\n",
" 'no': '1402',\n",
" 'type': None,\n",
" 'belongNvrId': None,\n",
" 'account': 'admin',\n",
" 'password': 'admin',\n",
" 'ip': '10.143.25.130',\n",
" 'port': '80',\n",
" 'name': '1-402',\n",
" 'ptzControl': 0,\n",
" 'enable': 0,\n",
" 'testerId': None,\n",
" 'position': None,\n",
" 'initialStateHeight': None,\n",
" 'initialStatePitchAngle': None,\n",
" 'app': None,\n",
" 'channel': '41',\n",
" 'liveurl': None,\n",
" 'channelNo': None,\n",
" 'roomId': 259,\n",
" 'teamId': 106,\n",
" 'createTime': 1755489156000,\n",
" 'updateTime': None,\n",
" 'pullUrl': None,\n",
" 'status': 1,\n",
" 'onlineTime': 1766573460000,\n",
" 'classRoom': '1-402'},\n",
" {'id': 332,\n",
" 'no': '1403',\n",
" 'type': None,\n",
" 'belongNvrId': None,\n",
" 'account': 'admin',\n",
" 'password': 'admin',\n",
" 'ip': '10.143.25.133',\n",
" 'port': '80',\n",
" 'name': '1-403',\n",
" 'ptzControl': 0,\n",
" 'enable': 0,\n",
" 'testerId': None,\n",
" 'position': None,\n",
" 'initialStateHeight': None,\n",
" 'initialStatePitchAngle': None,\n",
" 'app': None,\n",
" 'channel': '42',\n",
" 'liveurl': None,\n",
" 'channelNo': None,\n",
" 'roomId': 261,\n",
" 'teamId': 106,\n",
" 'createTime': 1755489156000,\n",
" 'updateTime': None,\n",
" 'pullUrl': None,\n",
" 'status': 1,\n",
" 'onlineTime': 1766573460000,\n",
" 'classRoom': '1-403'},\n",
" {'id': 333,\n",
" 'no': '1404',\n",
" 'type': None,\n",
" 'belongNvrId': None,\n",
" 'account': 'admin',\n",
" 'password': 'admin',\n",
" 'ip': '10.143.25.136',\n",
" 'port': '80',\n",
" 'name': '1-404',\n",
" 'ptzControl': 0,\n",
" 'enable': 0,\n",
" 'testerId': None,\n",
" 'position': None,\n",
" 'initialStateHeight': None,\n",
" 'initialStatePitchAngle': None,\n",
" 'app': None,\n",
" 'channel': '43',\n",
" 'liveurl': None,\n",
" 'channelNo': None,\n",
" 'roomId': 262,\n",
" 'teamId': 106,\n",
" 'createTime': 1755489156000,\n",
" 'updateTime': None,\n",
" 'pullUrl': None,\n",
" 'status': 1,\n",
" 'onlineTime': 1766573460000,\n",
" 'classRoom': '1-404'},\n",
" {'id': 334,\n",
" 'no': '1405',\n",
" 'type': None,\n",
" 'belongNvrId': None,\n",
" 'account': 'admin',\n",
" 'password': 'admin',\n",
" 'ip': '10.143.25.139',\n",
" 'port': '80',\n",
" 'name': '1-405',\n",
" 'ptzControl': 0,\n",
" 'enable': 0,\n",
" 'testerId': None,\n",
" 'position': None,\n",
" 'initialStateHeight': None,\n",
" 'initialStatePitchAngle': None,\n",
" 'app': None,\n",
" 'channel': '44',\n",
" 'liveurl': None,\n",
" 'channelNo': None,\n",
" 'roomId': 263,\n",
" 'teamId': 106,\n",
" 'createTime': 1755489156000,\n",
" 'updateTime': None,\n",
" 'pullUrl': None,\n",
" 'status': 1,\n",
" 'onlineTime': 1766573460000,\n",
" 'classRoom': '1-405'},\n",
" {'id': 335,\n",
" 'no': '1406',\n",
" 'type': None,\n",
" 'belongNvrId': None,\n",
" 'account': 'admin',\n",
" 'password': 'admin',\n",
" 'ip': '10.143.25.142',\n",
" 'port': '80',\n",
" 'name': '1-406',\n",
" 'ptzControl': 0,\n",
" 'enable': 0,\n",
" 'testerId': None,\n",
" 'position': None,\n",
" 'initialStateHeight': None,\n",
" 'initialStatePitchAngle': None,\n",
" 'app': None,\n",
" 'channel': '45',\n",
" 'liveurl': None,\n",
" 'channelNo': None,\n",
" 'roomId': 264,\n",
" 'teamId': 106,\n",
" 'createTime': 1755489156000,\n",
" 'updateTime': None,\n",
" 'pullUrl': None,\n",
" 'status': 1,\n",
" 'onlineTime': 1766573460000,\n",
" 'classRoom': '1-406'},\n",
" {'id': 336,\n",
" 'no': '1407',\n",
" 'type': None,\n",
" 'belongNvrId': None,\n",
" 'account': 'admin',\n",
" 'password': 'admin',\n",
" 'ip': '10.143.25.145',\n",
" 'port': '80',\n",
" 'name': '1-407',\n",
" 'ptzControl': 0,\n",
" 'enable': 0,\n",
" 'testerId': None,\n",
" 'position': None,\n",
" 'initialStateHeight': None,\n",
" 'initialStatePitchAngle': None,\n",
" 'app': None,\n",
" 'channel': '46',\n",
" 'liveurl': None,\n",
" 'channelNo': None,\n",
" 'roomId': 265,\n",
" 'teamId': 106,\n",
" 'createTime': 1755489156000,\n",
" 'updateTime': None,\n",
" 'pullUrl': None,\n",
" 'status': 0,\n",
" 'onlineTime': 1766572140000,\n",
" 'classRoom': '1-407'},\n",
" {'id': 337,\n",
" 'no': '1410',\n",
" 'type': None,\n",
" 'belongNvrId': None,\n",
" 'account': 'admin',\n",
" 'password': 'admin',\n",
" 'ip': '10.143.25.148',\n",
" 'port': '80',\n",
" 'name': '1-410',\n",
" 'ptzControl': 0,\n",
" 'enable': 0,\n",
" 'testerId': None,\n",
" 'position': None,\n",
" 'initialStateHeight': None,\n",
" 'initialStatePitchAngle': None,\n",
" 'app': None,\n",
" 'channel': '47',\n",
" 'liveurl': None,\n",
" 'channelNo': None,\n",
" 'roomId': 266,\n",
" 'teamId': 106,\n",
" 'createTime': 1755489156000,\n",
" 'updateTime': None,\n",
" 'pullUrl': None,\n",
" 'status': 1,\n",
" 'onlineTime': 1766573460000,\n",
" 'classRoom': '1-410'},\n",
" {'id': 338,\n",
" 'no': '9308',\n",
" 'type': None,\n",
" 'belongNvrId': None,\n",
" 'account': 'admin',\n",
" 'password': 'admin',\n",
" 'ip': '10.143.25.103',\n",
" 'port': '80',\n",
" 'name': '9-308',\n",
" 'ptzControl': 0,\n",
" 'enable': 0,\n",
" 'testerId': None,\n",
" 'position': None,\n",
" 'initialStateHeight': None,\n",
" 'initialStatePitchAngle': None,\n",
" 'app': None,\n",
" 'channel': '48',\n",
" 'liveurl': None,\n",
" 'channelNo': None,\n",
" 'roomId': 302,\n",
" 'teamId': 106,\n",
" 'createTime': 1755489156000,\n",
" 'updateTime': None,\n",
" 'pullUrl': None,\n",
" 'status': 1,\n",
" 'onlineTime': 1766573460000,\n",
" 'classRoom': '9-308'}]"
]
},
"execution_count": 3,
"metadata": {},
"output_type": "execute_result"
}
],
"source": [
"camera_data"
]
},
{
"cell_type": "code",
"execution_count": 4,
"id": "01075ba7",
"metadata": {},
"outputs": [],
"source": [
"students = get(f\"http://10.143.25.3/prod-api/school/stuface/list?teamId=106&page=1&pageSize=1000&gradeId=&classId=&stuName=&stuNo=&pageNumber=0&sortField=create_time&sortOrder=asc&access_token=c256320a-7216-45ce-891c-751b73fe8d71\").json()"
]
},
{
"cell_type": "code",
"execution_count": 6,
"id": "cdf738bb",
"metadata": {},
"outputs": [],
"source": [
"nopic = []\n",
"for item in students['data'][\"records\"]:\n",
" if item[\"files\"]==None or item[\"files\"]==[]:\n",
" nopic.append(item)\n"
]
},
{
"cell_type": "code",
"execution_count": 8,
"id": "3067371d",
"metadata": {},
"outputs": [],
"source": [
"df2 = pd.DataFrame(nopic)\n",
"df2.to_excel(\"无照片学生.xlsx\",index=False)"
]
},
{
"cell_type": "code",
"execution_count": 4,
"id": "46d67a84",
"metadata": {},
"outputs": [],
"source": [
"camera_channel = {i[\"classRoom\"]:i[\"channel\"] for i in camera_data}"
]
},
{
"cell_type": "code",
"execution_count": 5,
"id": "4d4311bf",
"metadata": {},
"outputs": [
{
"data": {
"text/plain": [
"{'2-202': '1',\n",
" '2-203': '2',\n",
" '2-204': '3',\n",
" '2-205': '4',\n",
" '2-206': '5',\n",
" '2-207': '6',\n",
" '2-208': '7',\n",
" '2-209': '8',\n",
" '2-302': '9',\n",
" '2-303': '10',\n",
" '2-304': '11',\n",
" '2-305': '12',\n",
" '2-306': '13',\n",
" '2-307': '14',\n",
" '2-308': '15',\n",
" '2-309': '16',\n",
" '2-301': '17',\n",
" '2-402': '18',\n",
" '2-403': '19',\n",
" '2-404': '20',\n",
" '2-405': '21',\n",
" '2-406': '22',\n",
" '2-407': '23',\n",
" '2-408': '24',\n",
" '2-409': '25',\n",
" '1-202': '26',\n",
" '1-203': '27',\n",
" '1-204': '28',\n",
" '1-205': '29',\n",
" '1-206': '30',\n",
" '1-207': '31',\n",
" '1-210': '32',\n",
" '1-302': '33',\n",
" '1-303': '34',\n",
" '1-304': '35',\n",
" '1-305': '36',\n",
" '1-306': '37',\n",
" '1-307': '38',\n",
" '1-301': '39',\n",
" '1-310': '40',\n",
" '1-402': '41',\n",
" '1-403': '42',\n",
" '1-404': '43',\n",
" '1-405': '44',\n",
" '1-406': '45',\n",
" '1-407': '46',\n",
" '1-410': '47',\n",
" '9-308': '48'}"
]
},
"execution_count": 5,
"metadata": {},
"output_type": "execute_result"
}
],
"source": [
"camera_channel"
]
},
{
"cell_type": "code",
"execution_count": null,
"id": "5ac6e180",
"metadata": {},
"outputs": [],
"source": [
"class2room = get(f\"{ip}/classAndRoom/listPage?teamId=106&page=1&pageSize=100&pageNumber=1\",headers=header).json()[\"data\"][\"records\"]\n",
"tem = []\n",
"for i in class2room:\n",
" if i[\"classAndRooms\"]:\n",
" tem.append(i[\"classAndRooms\"][0])"
]
},
{
"cell_type": "code",
"execution_count": 16,
"id": "d3de9836",
"metadata": {},
"outputs": [
{
"data": {
"text/plain": [
"[{'id': 53, 'classId': 693, 'roomId': 269, 'roomName': '2-204'},\n",
" {'id': 12, 'classId': 694, 'roomId': 306, 'roomName': '5-303'},\n",
" {'id': 13, 'classId': 695, 'roomId': 301, 'roomName': '1-210'},\n",
" {'id': 14, 'classId': 696, 'roomId': 305, 'roomName': '5-304'},\n",
" {'id': 15, 'classId': 697, 'roomId': 245, 'roomName': '1-202'},\n",
" {'id': 17, 'classId': 700, 'roomId': 267, 'roomName': '2-202'},\n",
" {'id': 16, 'classId': 701, 'roomId': 307, 'roomName': '5-307'},\n",
" {'id': 18, 'classId': 702, 'roomId': 246, 'roomName': '1-203'},\n",
" {'id': 50, 'classId': 709, 'roomId': 268, 'roomName': '2-203'},\n",
" {'id': 26, 'classId': 711, 'roomId': 249, 'roomName': '1-206'},\n",
" {'id': 20, 'classId': 714, 'roomId': 248, 'roomName': '1-205'},\n",
" {'id': 21, 'classId': 715, 'roomId': 309, 'roomName': '1-309'},\n",
" {'id': 22, 'classId': 717, 'roomId': 268, 'roomName': '2-203'},\n",
" {'id': 24, 'classId': 720, 'roomId': 250, 'roomName': '1-207'},\n",
" {'id': 54, 'classId': 721, 'roomId': 250, 'roomName': '1-207'},\n",
" {'id': 25, 'classId': 722, 'roomId': 270, 'roomName': '2-205'},\n",
" {'id': 55, 'classId': 723, 'roomId': 245, 'roomName': '1-202'},\n",
" {'id': 52, 'classId': 727, 'roomId': 273, 'roomName': '2-208'},\n",
" {'id': 27, 'classId': 735, 'roomId': 274, 'roomName': '2-209'},\n",
" {'id': 28, 'classId': 737, 'roomId': 271, 'roomName': '2-206'},\n",
" {'id': 29, 'classId': 742, 'roomId': 264, 'roomName': '1-406'},\n",
" {'id': 30, 'classId': 744, 'roomId': 310, 'roomName': '1-209'},\n",
" {'id': 31, 'classId': 752, 'roomId': 290, 'roomName': '2-408'},\n",
" {'id': 32, 'classId': 753, 'roomId': 297, 'roomName': '2-306'},\n",
" {'id': 33, 'classId': 754, 'roomId': 302, 'roomName': '9-308'},\n",
" {'id': 34, 'classId': 755, 'roomId': 300, 'roomName': '2-309'},\n",
" {'id': 35, 'classId': 756, 'roomId': 311, 'roomName': '2-401'},\n",
" {'id': 47, 'classId': 759, 'roomId': 299, 'roomName': '2-308'},\n",
" {'id': 37, 'classId': 760, 'roomId': 285, 'roomName': '2-403'},\n",
" {'id': 51, 'classId': 761, 'roomId': 298, 'roomName': '2-307'},\n",
" {'id': 38, 'classId': 763, 'roomId': 293, 'roomName': '2-302'},\n",
" {'id': 39, 'classId': 764, 'roomId': 294, 'roomName': '2-303'},\n",
" {'id': 40, 'classId': 765, 'roomId': 295, 'roomName': '2-304'},\n",
" {'id': 41, 'classId': 766, 'roomId': 291, 'roomName': '2-409'},\n",
" {'id': 43, 'classId': 768, 'roomId': 284, 'roomName': '2-402'},\n",
" {'id': 49, 'classId': 769, 'roomId': 288, 'roomName': '2-406'},\n",
" {'id': 46, 'classId': 770, 'roomId': 292, 'roomName': '2-301'},\n",
" {'id': 45, 'classId': 771, 'roomId': 296, 'roomName': '2-305'},\n",
" {'id': 42, 'classId': 773, 'roomId': 312, 'roomName': '涂装实训室对面'},\n",
" {'id': 48, 'classId': 777, 'roomId': 284, 'roomName': '2-402'}]"
]
},
"execution_count": 16,
"metadata": {},
"output_type": "execute_result"
}
],
"source": [
"tem"
]
},
{
"cell_type": "code",
"execution_count": 17,
"id": "d4220f16",
"metadata": {},
"outputs": [],
"source": [
"data = []\n",
"for i in tem:\n",
" key = i['roomName']\n",
" value = camera_channel.get(key,False)\n",
" if value:\n",
" i[\"channel\"] = camera_channel[key]\n",
" data.append(i)"
]
},
{
"cell_type": "code",
"execution_count": 19,
"id": "96a65411",
"metadata": {},
"outputs": [
{
"data": {
"text/plain": [
"[{'id': 53,\n",
" 'classId': 693,\n",
" 'roomId': 269,\n",
" 'roomName': '2-204',\n",
" 'channel': '3'},\n",
" {'id': 13,\n",
" 'classId': 695,\n",
" 'roomId': 301,\n",
" 'roomName': '1-210',\n",
" 'channel': '32'},\n",
" {'id': 15,\n",
" 'classId': 697,\n",
" 'roomId': 245,\n",
" 'roomName': '1-202',\n",
" 'channel': '26'},\n",
" {'id': 17,\n",
" 'classId': 700,\n",
" 'roomId': 267,\n",
" 'roomName': '2-202',\n",
" 'channel': '1'},\n",
" {'id': 18,\n",
" 'classId': 702,\n",
" 'roomId': 246,\n",
" 'roomName': '1-203',\n",
" 'channel': '27'},\n",
" {'id': 50,\n",
" 'classId': 709,\n",
" 'roomId': 268,\n",
" 'roomName': '2-203',\n",
" 'channel': '2'},\n",
" {'id': 26,\n",
" 'classId': 711,\n",
" 'roomId': 249,\n",
" 'roomName': '1-206',\n",
" 'channel': '30'},\n",
" {'id': 20,\n",
" 'classId': 714,\n",
" 'roomId': 248,\n",
" 'roomName': '1-205',\n",
" 'channel': '29'},\n",
" {'id': 22,\n",
" 'classId': 717,\n",
" 'roomId': 268,\n",
" 'roomName': '2-203',\n",
" 'channel': '2'},\n",
" {'id': 24,\n",
" 'classId': 720,\n",
" 'roomId': 250,\n",
" 'roomName': '1-207',\n",
" 'channel': '31'},\n",
" {'id': 54,\n",
" 'classId': 721,\n",
" 'roomId': 250,\n",
" 'roomName': '1-207',\n",
" 'channel': '31'},\n",
" {'id': 25,\n",
" 'classId': 722,\n",
" 'roomId': 270,\n",
" 'roomName': '2-205',\n",
" 'channel': '4'},\n",
" {'id': 55,\n",
" 'classId': 723,\n",
" 'roomId': 245,\n",
" 'roomName': '1-202',\n",
" 'channel': '26'},\n",
" {'id': 52,\n",
" 'classId': 727,\n",
" 'roomId': 273,\n",
" 'roomName': '2-208',\n",
" 'channel': '7'},\n",
" {'id': 27,\n",
" 'classId': 735,\n",
" 'roomId': 274,\n",
" 'roomName': '2-209',\n",
" 'channel': '8'},\n",
" {'id': 28,\n",
" 'classId': 737,\n",
" 'roomId': 271,\n",
" 'roomName': '2-206',\n",
" 'channel': '5'},\n",
" {'id': 29,\n",
" 'classId': 742,\n",
" 'roomId': 264,\n",
" 'roomName': '1-406',\n",
" 'channel': '45'},\n",
" {'id': 31,\n",
" 'classId': 752,\n",
" 'roomId': 290,\n",
" 'roomName': '2-408',\n",
" 'channel': '24'},\n",
" {'id': 32,\n",
" 'classId': 753,\n",
" 'roomId': 297,\n",
" 'roomName': '2-306',\n",
" 'channel': '13'},\n",
" {'id': 33,\n",
" 'classId': 754,\n",
" 'roomId': 302,\n",
" 'roomName': '9-308',\n",
" 'channel': '48'},\n",
" {'id': 34,\n",
" 'classId': 755,\n",
" 'roomId': 300,\n",
" 'roomName': '2-309',\n",
" 'channel': '16'},\n",
" {'id': 47,\n",
" 'classId': 759,\n",
" 'roomId': 299,\n",
" 'roomName': '2-308',\n",
" 'channel': '15'},\n",
" {'id': 37,\n",
" 'classId': 760,\n",
" 'roomId': 285,\n",
" 'roomName': '2-403',\n",
" 'channel': '19'},\n",
" {'id': 51,\n",
" 'classId': 761,\n",
" 'roomId': 298,\n",
" 'roomName': '2-307',\n",
" 'channel': '14'},\n",
" {'id': 38,\n",
" 'classId': 763,\n",
" 'roomId': 293,\n",
" 'roomName': '2-302',\n",
" 'channel': '9'},\n",
" {'id': 39,\n",
" 'classId': 764,\n",
" 'roomId': 294,\n",
" 'roomName': '2-303',\n",
" 'channel': '10'},\n",
" {'id': 40,\n",
" 'classId': 765,\n",
" 'roomId': 295,\n",
" 'roomName': '2-304',\n",
" 'channel': '11'},\n",
" {'id': 41,\n",
" 'classId': 766,\n",
" 'roomId': 291,\n",
" 'roomName': '2-409',\n",
" 'channel': '25'},\n",
" {'id': 43,\n",
" 'classId': 768,\n",
" 'roomId': 284,\n",
" 'roomName': '2-402',\n",
" 'channel': '18'},\n",
" {'id': 49,\n",
" 'classId': 769,\n",
" 'roomId': 288,\n",
" 'roomName': '2-406',\n",
" 'channel': '22'},\n",
" {'id': 46,\n",
" 'classId': 770,\n",
" 'roomId': 292,\n",
" 'roomName': '2-301',\n",
" 'channel': '17'},\n",
" {'id': 45,\n",
" 'classId': 771,\n",
" 'roomId': 296,\n",
" 'roomName': '2-305',\n",
" 'channel': '12'},\n",
" {'id': 48,\n",
" 'classId': 777,\n",
" 'roomId': 284,\n",
" 'roomName': '2-402',\n",
" 'channel': '18'}]"
]
},
"execution_count": 19,
"metadata": {},
"output_type": "execute_result"
}
],
"source": [
"data"
]
},
{
"cell_type": "code",
"execution_count": 20,
"id": "c5c8aa48",
"metadata": {},
"outputs": [],
"source": [
"# get(f\"{ip}/school/stuface/list?teamId=106&page=1&pageSize=15&gradeId=&classId=&stuName=&stuNo=&pageNumber=0&sortField=create_time&sortOrder=asc\",headers=header).json()[\"data\"][\"records\"]"
]
},
{
"cell_type": "code",
"execution_count": 22,
"id": "7009701a",
"metadata": {},
"outputs": [],
"source": [
"df = []\n",
"for item in data:\n",
" stus = get(f\"{ip}/school/stuface/list?teamId=106&page=1&pageSize=15&gradeId=&classId={item['classId']}&stuName=&stuNo=&pageNumber=0&sortField=create_time&sortOrder=asc\",headers=header,timeout=100).json()[\"data\"][\"records\"]\n",
" for stu in stus:\n",
" tem = {}\n",
" value = stu.get(\"files\",'')\n",
" if value and 'http' in value:\n",
" tem[\"学生id\"] = stu[\"studentId\"]\n",
" tem[\"faceId\"] = stu[\"faceId\"]\n",
" tem[\"姓名\"] = stu[\"stuName\"]\n",
" tem[\"通道号\"] = item.get(\"channel\",'')\n",
" df.append(tem)\n"
]
},
{
"cell_type": "code",
"execution_count": 24,
"id": "8e8b0659",
"metadata": {},
"outputs": [
{
"data": {
"text/plain": [
"272"
]
},
"execution_count": 24,
"metadata": {},
"output_type": "execute_result"
}
],
"source": [
"len(df)"
]
},
{
"cell_type": "code",
"execution_count": 25,
"id": "cdf44fb2",
"metadata": {},
"outputs": [
{
"ename": "PermissionError",
"evalue": "[Errno 13] Permission denied: '学生对应的通道号.xlsx'",
"output_type": "error",
"traceback": [
"\u001b[1;31m---------------------------------------------------------------------------\u001b[0m",
"\u001b[1;31mPermissionError\u001b[0m Traceback (most recent call last)",
"Cell \u001b[1;32mIn[25], line 3\u001b[0m\n\u001b[0;32m 1\u001b[0m \u001b[38;5;28;01mimport\u001b[39;00m \u001b[38;5;21;01mpandas\u001b[39;00m \u001b[38;5;28;01mas\u001b[39;00m \u001b[38;5;21;01mpd\u001b[39;00m\n\u001b[0;32m 2\u001b[0m df1 \u001b[38;5;241m=\u001b[39m pd\u001b[38;5;241m.\u001b[39mDataFrame(df)\n\u001b[1;32m----> 3\u001b[0m df1\u001b[38;5;241m.\u001b[39mto_excel(\u001b[38;5;124m\"\u001b[39m\u001b[38;5;124m学生对应的通道号.xlsx\u001b[39m\u001b[38;5;124m\"\u001b[39m,index\u001b[38;5;241m=\u001b[39m\u001b[38;5;28;01mFalse\u001b[39;00m)\n",
"File \u001b[1;32md:\\Anaconda3\\Lib\\site-packages\\pandas\\util\\_decorators.py:333\u001b[0m, in \u001b[0;36mdeprecate_nonkeyword_arguments.<locals>.decorate.<locals>.wrapper\u001b[1;34m(*args, **kwargs)\u001b[0m\n\u001b[0;32m 327\u001b[0m \u001b[38;5;28;01mif\u001b[39;00m \u001b[38;5;28mlen\u001b[39m(args) \u001b[38;5;241m>\u001b[39m num_allow_args:\n\u001b[0;32m 328\u001b[0m warnings\u001b[38;5;241m.\u001b[39mwarn(\n\u001b[0;32m 329\u001b[0m msg\u001b[38;5;241m.\u001b[39mformat(arguments\u001b[38;5;241m=\u001b[39m_format_argument_list(allow_args)),\n\u001b[0;32m 330\u001b[0m \u001b[38;5;167;01mFutureWarning\u001b[39;00m,\n\u001b[0;32m 331\u001b[0m stacklevel\u001b[38;5;241m=\u001b[39mfind_stack_level(),\n\u001b[0;32m 332\u001b[0m )\n\u001b[1;32m--> 333\u001b[0m \u001b[38;5;28;01mreturn\u001b[39;00m func(\u001b[38;5;241m*\u001b[39margs, \u001b[38;5;241m*\u001b[39m\u001b[38;5;241m*\u001b[39mkwargs)\n",
"File \u001b[1;32md:\\Anaconda3\\Lib\\site-packages\\pandas\\core\\generic.py:2417\u001b[0m, in \u001b[0;36mNDFrame.to_excel\u001b[1;34m(self, excel_writer, sheet_name, na_rep, float_format, columns, header, index, index_label, startrow, startcol, engine, merge_cells, inf_rep, freeze_panes, storage_options, engine_kwargs)\u001b[0m\n\u001b[0;32m 2404\u001b[0m \u001b[38;5;28;01mfrom\u001b[39;00m \u001b[38;5;21;01mpandas\u001b[39;00m\u001b[38;5;21;01m.\u001b[39;00m\u001b[38;5;21;01mio\u001b[39;00m\u001b[38;5;21;01m.\u001b[39;00m\u001b[38;5;21;01mformats\u001b[39;00m\u001b[38;5;21;01m.\u001b[39;00m\u001b[38;5;21;01mexcel\u001b[39;00m \u001b[38;5;28;01mimport\u001b[39;00m ExcelFormatter\n\u001b[0;32m 2406\u001b[0m formatter \u001b[38;5;241m=\u001b[39m ExcelFormatter(\n\u001b[0;32m 2407\u001b[0m df,\n\u001b[0;32m 2408\u001b[0m na_rep\u001b[38;5;241m=\u001b[39mna_rep,\n\u001b[1;32m (...)\u001b[0m\n\u001b[0;32m 2415\u001b[0m inf_rep\u001b[38;5;241m=\u001b[39minf_rep,\n\u001b[0;32m 2416\u001b[0m )\n\u001b[1;32m-> 2417\u001b[0m formatter\u001b[38;5;241m.\u001b[39mwrite(\n\u001b[0;32m 2418\u001b[0m excel_writer,\n\u001b[0;32m 2419\u001b[0m sheet_name\u001b[38;5;241m=\u001b[39msheet_name,\n\u001b[0;32m 2420\u001b[0m startrow\u001b[38;5;241m=\u001b[39mstartrow,\n\u001b[0;32m 2421\u001b[0m startcol\u001b[38;5;241m=\u001b[39mstartcol,\n\u001b[0;32m 2422\u001b[0m freeze_panes\u001b[38;5;241m=\u001b[39mfreeze_panes,\n\u001b[0;32m 2423\u001b[0m engine\u001b[38;5;241m=\u001b[39mengine,\n\u001b[0;32m 2424\u001b[0m storage_options\u001b[38;5;241m=\u001b[39mstorage_options,\n\u001b[0;32m 2425\u001b[0m engine_kwargs\u001b[38;5;241m=\u001b[39mengine_kwargs,\n\u001b[0;32m 2426\u001b[0m )\n",
"File \u001b[1;32md:\\Anaconda3\\Lib\\site-packages\\pandas\\io\\formats\\excel.py:943\u001b[0m, in \u001b[0;36mExcelFormatter.write\u001b[1;34m(self, writer, sheet_name, startrow, startcol, freeze_panes, engine, storage_options, engine_kwargs)\u001b[0m\n\u001b[0;32m 941\u001b[0m need_save \u001b[38;5;241m=\u001b[39m \u001b[38;5;28;01mFalse\u001b[39;00m\n\u001b[0;32m 942\u001b[0m \u001b[38;5;28;01melse\u001b[39;00m:\n\u001b[1;32m--> 943\u001b[0m writer \u001b[38;5;241m=\u001b[39m ExcelWriter(\n\u001b[0;32m 944\u001b[0m writer,\n\u001b[0;32m 945\u001b[0m engine\u001b[38;5;241m=\u001b[39mengine,\n\u001b[0;32m 946\u001b[0m storage_options\u001b[38;5;241m=\u001b[39mstorage_options,\n\u001b[0;32m 947\u001b[0m engine_kwargs\u001b[38;5;241m=\u001b[39mengine_kwargs,\n\u001b[0;32m 948\u001b[0m )\n\u001b[0;32m 949\u001b[0m need_save \u001b[38;5;241m=\u001b[39m \u001b[38;5;28;01mTrue\u001b[39;00m\n\u001b[0;32m 951\u001b[0m \u001b[38;5;28;01mtry\u001b[39;00m:\n",
"File \u001b[1;32md:\\Anaconda3\\Lib\\site-packages\\pandas\\io\\excel\\_openpyxl.py:61\u001b[0m, in \u001b[0;36mOpenpyxlWriter.__init__\u001b[1;34m(self, path, engine, date_format, datetime_format, mode, storage_options, if_sheet_exists, engine_kwargs, **kwargs)\u001b[0m\n\u001b[0;32m 57\u001b[0m \u001b[38;5;28;01mfrom\u001b[39;00m \u001b[38;5;21;01mopenpyxl\u001b[39;00m\u001b[38;5;21;01m.\u001b[39;00m\u001b[38;5;21;01mworkbook\u001b[39;00m \u001b[38;5;28;01mimport\u001b[39;00m Workbook\n\u001b[0;32m 59\u001b[0m engine_kwargs \u001b[38;5;241m=\u001b[39m combine_kwargs(engine_kwargs, kwargs)\n\u001b[1;32m---> 61\u001b[0m \u001b[38;5;28msuper\u001b[39m()\u001b[38;5;241m.\u001b[39m\u001b[38;5;21m__init__\u001b[39m(\n\u001b[0;32m 62\u001b[0m path,\n\u001b[0;32m 63\u001b[0m mode\u001b[38;5;241m=\u001b[39mmode,\n\u001b[0;32m 64\u001b[0m storage_options\u001b[38;5;241m=\u001b[39mstorage_options,\n\u001b[0;32m 65\u001b[0m if_sheet_exists\u001b[38;5;241m=\u001b[39mif_sheet_exists,\n\u001b[0;32m 66\u001b[0m engine_kwargs\u001b[38;5;241m=\u001b[39mengine_kwargs,\n\u001b[0;32m 67\u001b[0m )\n\u001b[0;32m 69\u001b[0m \u001b[38;5;66;03m# ExcelWriter replaced \"a\" by \"r+\" to allow us to first read the excel file from\u001b[39;00m\n\u001b[0;32m 70\u001b[0m \u001b[38;5;66;03m# the file and later write to it\u001b[39;00m\n\u001b[0;32m 71\u001b[0m \u001b[38;5;28;01mif\u001b[39;00m \u001b[38;5;124m\"\u001b[39m\u001b[38;5;124mr+\u001b[39m\u001b[38;5;124m\"\u001b[39m \u001b[38;5;129;01min\u001b[39;00m \u001b[38;5;28mself\u001b[39m\u001b[38;5;241m.\u001b[39m_mode: \u001b[38;5;66;03m# Load from existing workbook\u001b[39;00m\n",
"File \u001b[1;32md:\\Anaconda3\\Lib\\site-packages\\pandas\\io\\excel\\_base.py:1246\u001b[0m, in \u001b[0;36mExcelWriter.__init__\u001b[1;34m(self, path, engine, date_format, datetime_format, mode, storage_options, if_sheet_exists, engine_kwargs)\u001b[0m\n\u001b[0;32m 1242\u001b[0m \u001b[38;5;28mself\u001b[39m\u001b[38;5;241m.\u001b[39m_handles \u001b[38;5;241m=\u001b[39m IOHandles(\n\u001b[0;32m 1243\u001b[0m cast(IO[\u001b[38;5;28mbytes\u001b[39m], path), compression\u001b[38;5;241m=\u001b[39m{\u001b[38;5;124m\"\u001b[39m\u001b[38;5;124mcompression\u001b[39m\u001b[38;5;124m\"\u001b[39m: \u001b[38;5;28;01mNone\u001b[39;00m}\n\u001b[0;32m 1244\u001b[0m )\n\u001b[0;32m 1245\u001b[0m \u001b[38;5;28;01mif\u001b[39;00m \u001b[38;5;129;01mnot\u001b[39;00m \u001b[38;5;28misinstance\u001b[39m(path, ExcelWriter):\n\u001b[1;32m-> 1246\u001b[0m \u001b[38;5;28mself\u001b[39m\u001b[38;5;241m.\u001b[39m_handles \u001b[38;5;241m=\u001b[39m get_handle(\n\u001b[0;32m 1247\u001b[0m path, mode, storage_options\u001b[38;5;241m=\u001b[39mstorage_options, is_text\u001b[38;5;241m=\u001b[39m\u001b[38;5;28;01mFalse\u001b[39;00m\n\u001b[0;32m 1248\u001b[0m )\n\u001b[0;32m 1249\u001b[0m \u001b[38;5;28mself\u001b[39m\u001b[38;5;241m.\u001b[39m_cur_sheet \u001b[38;5;241m=\u001b[39m \u001b[38;5;28;01mNone\u001b[39;00m\n\u001b[0;32m 1251\u001b[0m \u001b[38;5;28;01mif\u001b[39;00m date_format \u001b[38;5;129;01mis\u001b[39;00m \u001b[38;5;28;01mNone\u001b[39;00m:\n",
"File \u001b[1;32md:\\Anaconda3\\Lib\\site-packages\\pandas\\io\\common.py:882\u001b[0m, in \u001b[0;36mget_handle\u001b[1;34m(path_or_buf, mode, encoding, compression, memory_map, is_text, errors, storage_options)\u001b[0m\n\u001b[0;32m 873\u001b[0m handle \u001b[38;5;241m=\u001b[39m \u001b[38;5;28mopen\u001b[39m(\n\u001b[0;32m 874\u001b[0m handle,\n\u001b[0;32m 875\u001b[0m ioargs\u001b[38;5;241m.\u001b[39mmode,\n\u001b[1;32m (...)\u001b[0m\n\u001b[0;32m 878\u001b[0m newline\u001b[38;5;241m=\u001b[39m\u001b[38;5;124m\"\u001b[39m\u001b[38;5;124m\"\u001b[39m,\n\u001b[0;32m 879\u001b[0m )\n\u001b[0;32m 880\u001b[0m \u001b[38;5;28;01melse\u001b[39;00m:\n\u001b[0;32m 881\u001b[0m \u001b[38;5;66;03m# Binary mode\u001b[39;00m\n\u001b[1;32m--> 882\u001b[0m handle \u001b[38;5;241m=\u001b[39m \u001b[38;5;28mopen\u001b[39m(handle, ioargs\u001b[38;5;241m.\u001b[39mmode)\n\u001b[0;32m 883\u001b[0m handles\u001b[38;5;241m.\u001b[39mappend(handle)\n\u001b[0;32m 885\u001b[0m \u001b[38;5;66;03m# Convert BytesIO or file objects passed with an encoding\u001b[39;00m\n",
"\u001b[1;31mPermissionError\u001b[0m: [Errno 13] Permission denied: '学生对应的通道号.xlsx'"
]
}
],
"source": [
"import pandas as pd\n",
"df1 = pd.DataFrame(df)\n",
"df1.to_excel(\"学生对应的通道号.xlsx\",index=False)\n"
]
},
{
"cell_type": "code",
"execution_count": 48,
"id": "60f7aee3",
"metadata": {},
"outputs": [
{
"data": {
"text/plain": [
"{'姓名': '陈松刘', '通道号': '16'}"
]
},
"execution_count": 48,
"metadata": {},
"output_type": "execute_result"
}
],
"source": [
"tem"
]
}
],
"metadata": {
"kernelspec": {
"display_name": "base",
"language": "python",
"name": "python3"
},
"language_info": {
"codemirror_mode": {
"name": "ipython",
"version": 3
},
"file_extension": ".py",
"mimetype": "text/x-python",
"name": "python",
"nbconvert_exporter": "python",
"pygments_lexer": "ipython3",
"version": "3.12.4"
}
},
"nbformat": 4,
"nbformat_minor": 5
}