5.18脚本更新

This commit is contained in:
2026-05-18 13:45:58 +08:00
parent cc4148b67d
commit b9977b9c13
8 changed files with 1251 additions and 679 deletions
@@ -14,8 +14,8 @@
"metadata": {
"collapsed": true,
"ExecuteTime": {
"end_time": "2026-03-24T03:12:19.747274800Z",
"start_time": "2026-03-24T02:42:20.660416400Z"
"end_time": "2026-04-23T08:20:44.296733100Z",
"start_time": "2026-04-23T08:16:24.431928500Z"
}
},
"source": [
@@ -26,17 +26,16 @@
"\n",
"# Cookie 和 Headers 配置\n",
"cookies = {\n",
" 'acw_tc': '76b20f7917743149845914058ebc47559507cd60c8642e0d54dbe45b6da222',\n",
" 'Hm_lvt_684c22b31d0037eca5a691cde16370ad': '1773130169,1774314982',\n",
" 'Hm_lpvt_684c22b31d0037eca5a691cde16370ad': '1774314982',\n",
" 'HMACCOUNT': 'A6A0585E8C70051D',\n",
" 'e_token': 'f44423067c184689a19eb9dc564bf33e',\n",
" 'acw_tc': '76b20ff917769316546828414e03f43fa61f25e670b6f93f0480d1876ff447',\n",
" 'e_token': '3734b115f75f41ba8534f6780317e904',\n",
" 'weixin_token': 'Y',\n",
" 'e_c': 'NTQ0MzQ1MDE0MTA3ODA1Mg==',\n",
" 'e_i_o_c_n': 'JTIyJUU1JTlCJTlCJUU0JUJDJTlBJUU1JUI4JTgyJUU4JThEJUEzJUU5JUFBJThGJUU2JUIxJUJEJUU4JUJEJUE2JUU3JUJCJUI0JUU0JUJGJUFFJUU0JUI4JUFEJUU1JUJGJTgzJTVCKzIwMDM5MDYrJTVEJTIy',\n",
" 'e_i_p_c_n': 'JTIyJUU5JUE5JUIwJUU1JThBJUEwJUU2JUIxJUJEJUU4JUJEJUE2JUU2JTlDJThEJUU1JThBJUExJUU0JUI4JUFEJUU1JUJGJTgzJUU1JTlCJTlCJUU0JUJDJTlBJUU1JUI4JTgyJUU2JUEzJTk1JUU2JUE2JTg4JUU1JTlCJUFEJUU1JUJBJTk3JUU1JUJBJTk3JUU0JUI4JUJCJTVCKzIwMjk5MDkrJTVEJTIy',\n",
" 'e_c': 'MjEwNjQxMDIzMTY2ODczNjc0',\n",
" 'e_i_o_c_n': 'JTIyJUU5JUE5JUIwJUU1JThBJUEwJUU2JUIxJUJEJUU4JUJEJUE2JUU2JTlDJThEJUU1JThBJUExJUU0JUI4JUFEJUU1JUJGJTgzJUU2JUIxJTlGJUU1JThDJTk3JUU1JThDJUJBJUU2JTlGJUIzJUU1JUIyJUI4JUU4JUI3JUFGJUU1JUJBJTk3JTVCKzIwMDU2MzQrJTVEJTIy',\n",
" 'e_i_p_c_n': 'JTIyJUU5JUE5JUIwJUU1JThBJUEwJUU2JUIxJUJEJUU4JUJEJUE2JUU2JTlDJThEJUU1JThBJUExJUU0JUI4JUFEJUU1JUJGJTgzJUU2JUIxJTlGJUU1JThDJTk3JUU1JThDJUJBJUU2JTlGJUIzJUU1JUIyJUI4JUU4JUI3JUFGJUU1JUJBJTk3JUU1JUJBJTk3JUU5JTk1JUJGJTVCKzIwMjg3NTcrJTVEJTIy',\n",
"}\n",
"\n",
"\n",
"headers = {\n",
" 'Accept': 'application/json, text/plain, */*',\n",
" 'Accept-Language': 'zh-CN,zh;q=0.9,en;q=0.8,en-GB;q=0.7,en-US;q=0.6',\n",
@@ -56,7 +55,7 @@
"\n",
"\n",
"all_data = []\n",
"for i in tqdm(range(1, 2019)):\n",
"for i in tqdm(range(1, 372)):\n",
" json_data = {\n",
" 'pageStart': i,\n",
" 'pageNums': 10,\n",
@@ -81,11 +80,11 @@
"name": "stderr",
"output_type": "stream",
"text": [
"100%|██████████| 2018/2018 [29:27<00:00, 1.14it/s]\n"
"100%|██████████| 371/371 [04:12<00:00, 1.47it/s]\n"
]
}
],
"execution_count": 2
"execution_count": 1
},
{
"cell_type": "markdown",
@@ -100,8 +99,8 @@
"id": "51f8f4b21505280a",
"metadata": {
"ExecuteTime": {
"end_time": "2026-03-24T07:37:35.090160900Z",
"start_time": "2026-03-24T05:31:09.783019900Z"
"end_time": "2026-04-23T08:36:56.349271400Z",
"start_time": "2026-04-23T08:20:44.300734900Z"
}
},
"source": [
@@ -113,15 +112,13 @@
"# ================= 配置区域 =================\n",
"# Cookie 和 Headers 配置\n",
"cookies = {\n",
" 'acw_tc': '76b20f7917743149845914058ebc47559507cd60c8642e0d54dbe45b6da222',\n",
" 'Hm_lvt_684c22b31d0037eca5a691cde16370ad': '1773130169,1774314982',\n",
" 'Hm_lpvt_684c22b31d0037eca5a691cde16370ad': '1774314982',\n",
" 'HMACCOUNT': 'A6A0585E8C70051D',\n",
" 'e_token': 'f44423067c184689a19eb9dc564bf33e',\n",
" 'acw_tc': '76b20ff917769316546828414e03f43fa61f25e670b6f93f0480d1876ff447',\n",
" 'e_token': '3734b115f75f41ba8534f6780317e904',\n",
" 'weixin_token': 'Y',\n",
" 'e_c': 'NTQ0MzQ1MDE0MTA3ODA1Mg==',\n",
" 'e_i_o_c_n': 'JTIyJUU1JTlCJTlCJUU0JUJDJTlBJUU1JUI4JTgyJUU4JThEJUEzJUU5JUFBJThGJUU2JUIxJUJEJUU4JUJEJUE2JUU3JUJCJUI0JUU0JUJGJUFFJUU0JUI4JUFEJUU1JUJGJTgzJTVCKzIwMDM5MDYrJTVEJTIy',\n",
" 'e_i_p_c_n': 'JTIyJUU5JUE5JUIwJUU1JThBJUEwJUU2JUIxJUJEJUU4JUJEJUE2JUU2JTlDJThEJUU1JThBJUExJUU0JUI4JUFEJUU1JUJGJTgzJUU1JTlCJTlCJUU0JUJDJTlBJUU1JUI4JTgyJUU2JUEzJTk1JUU2JUE2JTg4JUU1JTlCJUFEJUU1JUJBJTk3JUU1JUJBJTk3JUU0JUI4JUJCJTVCKzIwMjk5MDkrJTVEJTIy',\n",
" 'e_c': 'MjEwNjQxMDIzMTY2ODczNjc0',\n",
" 'e_i_o_c_n': 'JTIyJUU5JUE5JUIwJUU1JThBJUEwJUU2JUIxJUJEJUU4JUJEJUE2JUU2JTlDJThEJUU1JThBJUExJUU0JUI4JUFEJUU1JUJGJTgzJUU2JUIxJTlGJUU1JThDJTk3JUU1JThDJUJBJUU2JTlGJUIzJUU1JUIyJUI4JUU4JUI3JUFGJUU1JUJBJTk3JTVCKzIwMDU2MzQrJTVEJTIy',\n",
" 'e_i_p_c_n': 'JTIyJUU5JUE5JUIwJUU1JThBJUEwJUU2JUIxJUJEJUU4JUJEJUE2JUU2JTlDJThEJUU1JThBJUExJUU0JUI4JUFEJUU1JUJGJTgzJUU2JUIxJTlGJUU1JThDJTk3JUU1JThDJUJBJUU2JTlGJUIzJUU1JUIyJUI4JUU4JUI3JUFGJUU1JUJBJTk3JUU1JUJBJTk3JUU5JTk1JUJGJTVCKzIwMjg3NTcrJTVEJTIy',\n",
"}\n",
"\n",
"headers = {\n",
@@ -145,9 +142,9 @@
"\n",
"# 业务参数配置\n",
"TARGET_URL = 'https://teds.tyreplus.com.cn/api/aftersales/payment/queryPaymentSettlementListByCondition'\n",
"STORE_CODES = [\"330522\", \"343280\"] # 门店列表\n",
"STORE_CODES = [\"350085\"] # 门店列表\n",
"PAGE_SIZE = 10\n",
"OUTPUT_PATH = r\"D:\\Idea Project\\F6+宜搭+其它(1)\\张阳脚本\\文件输出\\13822673880结算单.xlsx\"\n",
"OUTPUT_PATH = r\"D:\\Idea Project\\F6+宜搭+其它(1)\\张阳脚本\\文件输出\\15888527505结算单.xlsx\"\n",
"MAX_RETRIES = 3\n",
"\n",
"# ================= 功能函数 =================\n",
@@ -272,43 +269,15 @@
"output_type": "stream",
"text": [
"正在获取第 1 页数据以计算总记录数...\n",
"✅ 获取成功。总记录数: 43728\n",
"📄 预计总页数: 4373 (每页 10 条)\n"
"✅ 获取成功。总记录数: 8310\n",
"📄 预计总页数: 831 (每页 10 条)\n"
]
},
{
"name": "stderr",
"output_type": "stream",
"text": [
"正在爬取结算单: 33%|███▎ | 1441/4373 [38:12<1:29:11, 1.83s/it]"
]
},
{
"name": "stdout",
"output_type": "stream",
"text": [
"第1442页请求失败 (尝试 1/3): ('Connection aborted.', ConnectionResetError(10054, '远程主机强迫关闭了一个现有的连接。', None, 10054, None))\n"
]
},
{
"name": "stderr",
"output_type": "stream",
"text": [
"正在爬取结算单: 51%|█████ | 2241/4373 [1:02:36<1:01:42, 1.74s/it]"
]
},
{
"name": "stdout",
"output_type": "stream",
"text": [
"第2242页请求失败 (尝试 1/3): ('Connection aborted.', ConnectionResetError(10054, '远程主机强迫关闭了一个现有的连接。', None, 10054, None))\n"
]
},
{
"name": "stderr",
"output_type": "stream",
"text": [
"正在爬取结算单: 100%|██████████| 4373/4373 [2:05:27<00:00, 1.72s/it] \n"
"正在爬取结算单: 100%|██████████| 831/831 [16:01<00:00, 1.16s/it]\n"
]
},
{
@@ -316,12 +285,12 @@
"output_type": "stream",
"text": [
"\n",
"🎉 数据已成功保存至: D:\\Idea Project\\F6+宜搭+其它(1)\\张阳脚本\\文件输出\\13822673880结算单.xlsx\n",
"📊 共保存 43730 条记录 (期望: 43728)\n"
"🎉 数据已成功保存至: D:\\Idea Project\\F6+宜搭+其它(1)\\张阳脚本\\文件输出\\15888527505结算单.xlsx\n",
"📊 共保存 8310 条记录 (期望: 8310)\n"
]
}
],
"execution_count": 3
"execution_count": 2
},
{
"cell_type": "markdown",
@@ -336,8 +305,8 @@
"id": "b7e0d7a4da6c9b03",
"metadata": {
"ExecuteTime": {
"end_time": "2026-03-25T10:15:04.125375900Z",
"start_time": "2026-03-24T12:31:05.631170600Z"
"end_time": "2026-04-23T12:43:38.281667400Z",
"start_time": "2026-04-23T08:36:56.424636200Z"
}
},
"source": [
@@ -347,15 +316,13 @@
"import time\n",
"\n",
"cookies = {\n",
" 'acw_tc': '76b20f7917743149845914058ebc47559507cd60c8642e0d54dbe45b6da222',\n",
" 'Hm_lvt_684c22b31d0037eca5a691cde16370ad': '1773130169,1774314982',\n",
" 'Hm_lpvt_684c22b31d0037eca5a691cde16370ad': '1774314982',\n",
" 'HMACCOUNT': 'A6A0585E8C70051D',\n",
" 'e_token': 'f44423067c184689a19eb9dc564bf33e',\n",
" 'acw_tc': '76b20ff917769316546828414e03f43fa61f25e670b6f93f0480d1876ff447',\n",
" 'e_token': '3734b115f75f41ba8534f6780317e904',\n",
" 'weixin_token': 'Y',\n",
" 'e_c': 'NTQ0MzQ1MDE0MTA3ODA1Mg==',\n",
" 'e_i_o_c_n': 'JTIyJUU1JTlCJTlCJUU0JUJDJTlBJUU1JUI4JTgyJUU4JThEJUEzJUU5JUFBJThGJUU2JUIxJUJEJUU4JUJEJUE2JUU3JUJCJUI0JUU0JUJGJUFFJUU0JUI4JUFEJUU1JUJGJTgzJTVCKzIwMDM5MDYrJTVEJTIy',\n",
" 'e_i_p_c_n': 'JTIyJUU5JUE5JUIwJUU1JThBJUEwJUU2JUIxJUJEJUU4JUJEJUE2JUU2JTlDJThEJUU1JThBJUExJUU0JUI4JUFEJUU1JUJGJTgzJUU1JTlCJTlCJUU0JUJDJTlBJUU1JUI4JTgyJUU2JUEzJTk1JUU2JUE2JTg4JUU1JTlCJUFEJUU1JUJBJTk3JUU1JUJBJTk3JUU0JUI4JUJCJTVCKzIwMjk5MDkrJTVEJTIy',\n",
" 'e_c': 'MjEwNjQxMDIzMTY2ODczNjc0',\n",
" 'e_i_o_c_n': 'JTIyJUU5JUE5JUIwJUU1JThBJUEwJUU2JUIxJUJEJUU4JUJEJUE2JUU2JTlDJThEJUU1JThBJUExJUU0JUI4JUFEJUU1JUJGJTgzJUU2JUIxJTlGJUU1JThDJTk3JUU1JThDJUJBJUU2JTlGJUIzJUU1JUIyJUI4JUU4JUI3JUFGJUU1JUJBJTk3JTVCKzIwMDU2MzQrJTVEJTIy',\n",
" 'e_i_p_c_n': 'JTIyJUU5JUE5JUIwJUU1JThBJUEwJUU2JUIxJUJEJUU4JUJEJUE2JUU2JTlDJThEJUU1JThBJUExJUU0JUI4JUFEJUU1JUJGJTgzJUU2JUIxJTlGJUU1JThDJTk3JUU1JThDJUJBJUU2JTlGJUIzJUU1JUIyJUI4JUU4JUI3JUFGJUU1JUJBJTk3JUU1JUJBJTk3JUU5JTk1JUJGJTVCKzIwMjg3NTcrJTVEJTIy',\n",
"}\n",
"\n",
"headers = {\n",
@@ -376,7 +343,7 @@
" # 'Cookie': 'acw_tc=76b20f7917743149845914058ebc47559507cd60c8642e0d54dbe45b6da222; Hm_lvt_684c22b31d0037eca5a691cde16370ad=1773130169,1774314982; Hm_lpvt_684c22b31d0037eca5a691cde16370ad=1774314982; HMACCOUNT=A6A0585E8C70051D; e_token=f44423067c184689a19eb9dc564bf33e; weixin_token=Y; e_c=NTQ0MzQ1MDE0MTA3ODA1Mg==; e_i_o_c_n=JTIyJUU1JTlCJTlCJUU0JUJDJTlBJUU1JUI4JTgyJUU4JThEJUEzJUU5JUFBJThGJUU2JUIxJUJEJUU4JUJEJUE2JUU3JUJCJUI0JUU0JUJGJUFFJUU0JUI4JUFEJUU1JUJGJTgzJTVCKzIwMDM5MDYrJTVEJTIy; e_i_p_c_n=JTIyJUU5JUE5JUIwJUU1JThBJUEwJUU2JUIxJUJEJUU4JUJEJUE2JUU2JTlDJThEJUU1JThBJUExJUU0JUI4JUFEJUU1JUJGJTgzJUU1JTlCJTlCJUU0JUJDJTlBJUU1JUI4JTgyJUU2JUEzJTk1JUU2JUE2JTg4JUU1JTlCJUFEJUU1JUJBJTk3JUU1JUJBJTk3JUU0JUI4JUJCJTVCKzIwMjk5MDkrJTVEJTIy',\n",
"}\n",
"\n",
"df = pd.read_excel(fr\"D:\\Idea Project\\F6+宜搭+其它(1)\\张阳脚本\\文件输出\\13822673880结算单.xlsx\", sheet_name='Sheet1')\n",
"df = pd.read_excel(fr\"D:\\Idea Project\\F6+宜搭+其它(1)\\张阳脚本\\文件输出\\15888527505结算单.xlsx\", sheet_name='Sheet1')\n",
"\n",
"all_data_list = []\n",
"all_service_data = []\n",
@@ -464,12 +431,12 @@
{
"data": {
"text/plain": [
" 0%| | 0/43730 [00:00<?, ?it/s]"
" 0%| | 0/8310 [00:00<?, ?it/s]"
],
"application/vnd.jupyter.widget-view+json": {
"version_major": 2,
"version_minor": 0,
"model_id": "2475aaf2f08b4f3f9b6915bcbc30a4fc"
"model_id": "f91b10f941ab425bb47b2b50c721ccd3"
}
},
"metadata": {},
@@ -482,21 +449,13 @@
"name": "stdout",
"output_type": "stream",
"text": [
"请求异常: ('Connection aborted.', ConnectionResetError(10054, '远程主机强迫关闭了一个现有的连接。', None, 10054, None)) (paymentNo: SI2511031810785166)\n",
"请求异常: ('Connection aborted.', ConnectionResetError(10054, '远程主机强迫关闭了一个现有的连接。', None, 10054, None)) (paymentNo: SI2510121646331912)\n",
"请求异常: ('Connection aborted.', ConnectionResetError(10054, '远程主机强迫关闭了一个现有的连接。', None, 10054, None)) (paymentNo: SI2504251333197830)\n",
"请求异常: HTTPSConnectionPool(host='teds.tyreplus.com.cn', port=443): Read timed out. (read timeout=10) (paymentNo: SI2504251333197185)\n",
"HTTP 请求失败,状态码: 504 (paymentNo: SI2504251328192860)\n",
"请求异常: ('Connection aborted.', ConnectionResetError(10054, '远程主机强迫关闭了一个现有的连接。', None, 10054, None)) (paymentNo: SI2504251327191463)\n",
"HTTP 请求失败,状态码: 502 (paymentNo: SI2504251326190989)\n",
"请求异常: ('Connection aborted.', ConnectionResetError(10054, '远程主机强迫关闭了一个现有的连接。', None, 10054, None)) (paymentNo: SI2504251320185538)\n",
"请求异常: ('Connection aborted.', ConnectionResetError(10054, '远程主机强迫关闭了一个现有的连接。', None, 10054, None)) (paymentNo: SI2504251319184980)\n",
"HTTP 请求失败,状态码: 502 (paymentNo: SI2504251316180693)\n",
"请求异常: HTTPSConnectionPool(host='teds.tyreplus.com.cn', port=443): Read timed out. (read timeout=10) (paymentNo: SI2504251302159764)\n"
"HTTP 请求失败,状态码: 502 (paymentNo: SI2511041053790586)\n",
"请求异常: HTTPSConnectionPool(host='teds.tyreplus.com.cn', port=443): Max retries exceeded with url: /api/v2/aftersales/payment/queryPaymentSettlementDetail (Caused by ConnectTimeoutError(<HTTPSConnection(host='teds.tyreplus.com.cn', port=443) at 0x194ab953c50>, 'Connection to teds.tyreplus.com.cn timed out. (connect timeout=10)')) (paymentNo: SI2511011255731172)\n",
"请求异常: HTTPSConnectionPool(host='teds.tyreplus.com.cn', port=443): Max retries exceeded with url: /api/v2/aftersales/payment/queryPaymentSettlementDetail (Caused by ConnectTimeoutError(<HTTPSConnection(host='teds.tyreplus.com.cn', port=443) at 0x194ab9539d0>, 'Connection to teds.tyreplus.com.cn timed out. (connect timeout=10)')) (paymentNo: SI2504160329323760)\n"
]
}
],
"execution_count": 5
"execution_count": 3
},
{
"metadata": {},