Files
tvboxzt/spider_validation.json
T
2026-08-08 12:18:03 +08:00

4859 lines
150 KiB
JSON

{
"generated_at": "2026-08-08T12:17:05+08:00",
"max_workers": 16,
"total_duration_ms": 39336.634,
"summary": {
"total": 124,
"success": 94,
"failed": 30,
"success_rate": 0.7581,
"stage_failures": {
"module_load": 0,
"init": 0,
"home": 6,
"category": 15,
"detail": 1,
"player": 1,
"url_check": 2,
"unexpected": 5
}
},
"results": [
{
"spider": "123社区",
"file": "123社区.txt",
"success": false,
"failed_stage": "category",
"error": "分类视频缺少 vod_id",
"traceback": null,
"timings_ms": {
"module_load": 233.872,
"init": 763.595,
"home": 0.002,
"category": 416.854,
"detail": 0.0,
"player": 0.0,
"url_check": 0.0,
"total": 1940.902
},
"counts": {
"classes": 5,
"category_videos": 1,
"detail_videos": 0,
"episodes": 0
},
"samples": {
"tid": "48",
"vod_id": null,
"flag": null,
"play_id": null
},
"player": {
"parse": null,
"url": "",
"valid": false,
"reachable": null,
"status_code": null,
"final_url": "",
"reason": null
}
},
{
"spider": "123臻藏",
"file": "123臻藏.txt",
"success": true,
"failed_stage": null,
"error": null,
"traceback": null,
"timings_ms": {
"module_load": 232.973,
"init": 0.07,
"home": 0.014,
"category": 1630.812,
"detail": 706.494,
"player": 0.387,
"url_check": 577.11,
"total": 3162.912
},
"counts": {
"classes": 6,
"category_videos": 10,
"detail_videos": 1,
"episodes": 1
},
"samples": {
"tid": "film",
"vod_id": "4008",
"flag": "提示",
"play_id": "https://123.qsxy.top/4008.html"
},
"player": {
"parse": 1,
"url": "https://123.qsxy.top/4008.html",
"valid": true,
"reachable": true,
"status_code": 200,
"final_url": "https://123.qsxy.top/4008.html",
"reason": null
}
},
{
"spider": "275听书",
"file": "275听书.txt",
"success": true,
"failed_stage": null,
"error": null,
"traceback": null,
"timings_ms": {
"module_load": 236.765,
"init": 0.001,
"home": 0.006,
"category": 778.791,
"detail": 516.94,
"player": 703.923,
"url_check": 36.539,
"total": 2299.031
},
"counts": {
"classes": 20,
"category_videos": 12,
"detail_videos": 1,
"episodes": 1
},
"samples": {
"tid": "latest",
"vod_id": "39441",
"flag": "275听书",
"play_id": "/play/39441/23497761.html"
},
"player": {
"parse": 0,
"url": "https://audiopay.cos.tx.xmcdn.com/download/1.0.0/storages/8478-audiopay/BB/AD/GKwRIUEOLL7CABrUHAS20I5t.m4a?sign=bd810af95b325bd3e3734249154d1b99&buy_key=FM&token=9634&timestamp=1786162605&duration=216",
"valid": true,
"reachable": true,
"status_code": 200,
"final_url": "https://audiopay.cos.tx.xmcdn.com/download/1.0.0/storages/8478-audiopay/BB/AD/GKwRIUEOLL7CABrUHAS20I5t.m4a?sign=bd810af95b325bd3e3734249154d1b99&buy_key=FM&token=9634&timestamp=1786162605&duration=216",
"reason": null
}
},
{
"spider": "4KVM",
"file": "4KVM.txt",
"success": true,
"failed_stage": null,
"error": null,
"traceback": null,
"timings_ms": {
"module_load": 232.787,
"init": 0.001,
"home": 420.969,
"category": 0.021,
"detail": 351.344,
"player": 672.295,
"url_check": 449.043,
"total": 2153.155
},
"counts": {
"classes": 6,
"category_videos": 24,
"detail_videos": 1,
"episodes": 1
},
"samples": {
"tid": "-1",
"vod_id": "ch4ft0x09",
"flag": "alists",
"play_id": "37309|ch4ft0x09"
},
"player": {
"parse": 0,
"url": "https://oss.douyinbit.com/m3u8/cf385153ba146627da1a7e22e7ae264d.m3u8",
"valid": true,
"reachable": true,
"status_code": 200,
"final_url": "https://oss.douyinbit.com/m3u8/cf385153ba146627da1a7e22e7ae264d.m3u8",
"reason": null
}
},
{
"spider": "4K指南",
"file": "4K指南.txt",
"success": true,
"failed_stage": null,
"error": null,
"traceback": null,
"timings_ms": {
"module_load": 231.883,
"init": 0.005,
"home": 0.003,
"category": 910.736,
"detail": 578.779,
"player": 0.004,
"url_check": 154.17,
"total": 1903.382
},
"counts": {
"classes": 5,
"category_videos": 50,
"detail_videos": 1,
"episodes": 1
},
"samples": {
"tid": "zuixin",
"vod_id": "20640",
"flag": "夸克网盘",
"play_id": "push://https://pan.quark.cn/s/eaed7eb30c3c"
},
"player": {
"parse": 0,
"url": "https://pan.quark.cn/s/eaed7eb30c3c",
"valid": true,
"reachable": true,
"status_code": 200,
"final_url": "https://pan.quark.cn/s/eaed7eb30c3c",
"reason": null
}
},
{
"spider": "55短剧",
"file": "55短剧.txt",
"success": true,
"failed_stage": null,
"error": null,
"traceback": null,
"timings_ms": {
"module_load": 225.68,
"init": 0.002,
"home": 0.001,
"category": 930.007,
"detail": 452.411,
"player": 409.628,
"url_check": 848.994,
"total": 2873.483
},
"counts": {
"classes": 1,
"category_videos": 24,
"detail_videos": 1,
"episodes": 1
},
"samples": {
"tid": "1",
"vod_id": "26926",
"flag": "55短剧",
"play_id": "26926~2~1"
},
"player": {
"parse": 0,
"url": "https://tyyszywvod2.com/videos/202606/28/6a413d12df0906c5d56b7f69/7d5306/index.m3u8",
"valid": true,
"reachable": true,
"status_code": 200,
"final_url": "https://tyyszywvod2.com/videos/202606/28/6a413d12df0906c5d56b7f69/7d5306/index.m3u8",
"reason": null
}
},
{
"spider": "6V磁力",
"file": "6V磁力.txt",
"success": true,
"failed_stage": null,
"error": null,
"traceback": null,
"timings_ms": {
"module_load": 243.414,
"init": 0.009,
"home": 0.001,
"category": 915.91,
"detail": 698.216,
"player": 0.003,
"url_check": 0.057,
"total": 1873.971
},
"counts": {
"classes": 12,
"category_videos": 18,
"detail_videos": 1,
"episodes": 2
},
"samples": {
"tid": "dianshiju/guoju",
"vod_id": "/dianshiju/guoju/29263.html",
"flag": "01-04.1080p.HD国语中字无水印.mkv",
"play_id": "magnet:?xt=urn:btih:a21240d7d789ebc0510102a47d01f99c785a7275&dn=%E5%BE%A1%E5%BB%B7%E8%B0%A301-04"
},
"player": {
"parse": 0,
"url": "magnet:?xt=urn:btih:a21240d7d789ebc0510102a47d01f99c785a7275&dn=%E5%BE%A1%E5%BB%B7%E8%B0%A301-04",
"valid": true,
"reachable": null,
"status_code": null,
"final_url": "magnet:?xt=urn:btih:a21240d7d789ebc0510102a47d01f99c785a7275&dn=%E5%BE%A1%E5%BB%B7%E8%B0%A301-04",
"reason": "非 HTTP 地址,按协议格式通过"
}
},
{
"spider": "AAZ音乐",
"file": "AAZ音乐.txt",
"success": false,
"failed_stage": "unexpected",
"error": "('Connection aborted.', RemoteDisconnected('Remote end closed connection without response'))",
"traceback": "Traceback (most recent call last):\n File \"/home/harold/workspace/atv-spiders/py/.venv/lib/python3.14/site-packages/urllib3/connectionpool.py\", line 787, in urlopen\n response = self._make_request(\n conn,\n ...<10 lines>...\n **response_kw,\n )\n File \"/home/harold/workspace/atv-spiders/py/.venv/lib/python3.14/site-packages/urllib3/connectionpool.py\", line 534, in _make_request\n response = conn.getresponse()\n File \"/home/harold/workspace/atv-spiders/py/.venv/lib/python3.14/site-packages/urllib3/connection.py\", line 571, in getresponse\n httplib_response = super().getresponse()\n File \"/home/harold/.local/share/uv/python/cpython-3.14.3-linux-x86_64-gnu/lib/python3.14/http/client.py\", line 1450, in getresponse\n response.begin()\n ~~~~~~~~~~~~~~^^\n File \"/home/harold/.local/share/uv/python/cpython-3.14.3-linux-x86_64-gnu/lib/python3.14/http/client.py\", line 336, in begin\n version, status, reason = self._read_status()\n ~~~~~~~~~~~~~~~~~^^\nhttp.client.RemoteDisconnected: Remote end closed connection without response\n\nDuring handling of the above exception, another exception occurred:\n\nTraceback (most recent call last):\n File \"/home/harold/workspace/atv-spiders/py/.venv/lib/python3.14/site-packages/requests/adapters.py\", line 645, in send\n resp = conn.urlopen(\n method=request.method,\n ...<9 lines>...\n chunked=chunked,\n )\n File \"/home/harold/workspace/atv-spiders/py/.venv/lib/python3.14/site-packages/urllib3/connectionpool.py\", line 841, in urlopen\n retries = retries.increment(\n method, url, error=new_e, _pool=self, _stacktrace=sys.exc_info()[2]\n )\n File \"/home/harold/workspace/atv-spiders/py/.venv/lib/python3.14/site-packages/urllib3/util/retry.py\", line 490, in increment\n raise reraise(type(error), error, _stacktrace)\n ~~~~~~~^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/home/harold/workspace/atv-spiders/py/.venv/lib/python3.14/site-packages/urllib3/util/util.py\", line 38, in reraise\n raise value.with_traceback(tb)\n File \"/home/harold/workspace/atv-spiders/py/.venv/lib/python3.14/site-packages/urllib3/connectionpool.py\", line 787, in urlopen\n response = self._make_request(\n conn,\n ...<10 lines>...\n **response_kw,\n )\nurllib3.exceptions.ProtocolError: ('Connection aborted.', RemoteDisconnected('Remote end closed connection without response'))\n\nDuring handling of the above exception, another exception occurred:\n\nTraceback (most recent call last):\n File \"/home/harold/workspace/atv-spiders/py/validate_spiders.py\", line 756, in validate_spider_file\n home_result = _run_timed(result[\"timings_ms\"], \"home\", spider.homeContent, clock, False)\n File \"/home/harold/workspace/atv-spiders/py/validate_spiders.py\", line 318, in _run_timed\n return func(*args, **kwargs)\n File \"/home/harold/workspace/tvbox-resources/py/AAZ音乐.txt\", line 220, in homeContent\n File \"/home/harold/workspace/tvbox-resources/py/AAZ音乐.txt\", line 57, in _fetch_html\n File \"/home/harold/workspace/atv-spiders/py/base/spider.py\", line 145, in fetch\n rsp = requests.get(url, params=params, cookies=cookies, headers=headers, timeout=timeout, verify=verify,\n stream=stream, allow_redirects=allow_redirects)\nrequests.exceptions.ConnectionError: ('Connection aborted.', RemoteDisconnected('Remote end closed connection without response'))\n",
"timings_ms": {
"module_load": 232.972,
"init": 0.001,
"home": 551.647,
"category": 0.0,
"detail": 0.0,
"player": 0.0,
"url_check": 0.0,
"total": 811.241
},
"counts": {
"classes": 0,
"category_videos": 0,
"detail_videos": 0,
"episodes": 0
},
"samples": {
"tid": null,
"vod_id": null,
"flag": null,
"play_id": null
},
"player": {
"parse": null,
"url": "",
"valid": false,
"reachable": null,
"status_code": null,
"final_url": "",
"reason": null
}
},
{
"spider": "APP影院",
"file": "APP影院.txt",
"success": true,
"failed_stage": null,
"error": null,
"traceback": null,
"timings_ms": {
"module_load": 228.98,
"init": 0.002,
"home": 0.006,
"category": 715.637,
"detail": 190.754,
"player": 270.079,
"url_check": 1866.732,
"total": 3289.491
},
"counts": {
"classes": 8,
"category_videos": 36,
"detail_videos": 1,
"episodes": 2
},
"samples": {
"tid": "1",
"vod_id": "597162",
"flag": "闪电播放",
"play_id": "597162~1~1"
},
"player": {
"parse": 0,
"url": "https://v14.qqqrst.com/yyv14/202608/07/MXtWFNTYLX27/video/index.m3u8",
"valid": true,
"reachable": true,
"status_code": 200,
"final_url": "https://v14.qqqrst.com/yyv14/202608/07/MXtWFNTYLX27/video/index.m3u8",
"reason": null
}
},
{
"spider": "BT影视",
"file": "BT影视.txt",
"success": true,
"failed_stage": null,
"error": null,
"traceback": null,
"timings_ms": {
"module_load": 228.694,
"init": 0.048,
"home": 0.003,
"category": 339.21,
"detail": 269.055,
"player": 391.344,
"url_check": 0.057,
"total": 1254.728
},
"counts": {
"classes": 2,
"category_videos": 32,
"detail_videos": 1,
"episodes": 2
},
"samples": {
"tid": "movies",
"vod_id": "46840300",
"flag": "狄仁杰之彼岸奇花[国语配音+中文字幕].Detective.Dee.The.Other.Shore.Flower.2025.1080p.WEB-DL.H264.AAC-QuickIO 4.87GB",
"play_id": "848900354"
},
"player": {
"parse": 0,
"url": "magnet:?xt=urn:btih:075de6e14fb3b518d5e2be55e269c096c9b052d8",
"valid": true,
"reachable": null,
"status_code": null,
"final_url": "magnet:?xt=urn:btih:075de6e14fb3b518d5e2be55e269c096c9b052d8",
"reason": "非 HTTP 地址,按协议格式通过"
}
},
{
"spider": "PPnix",
"file": "PPnix.txt",
"success": true,
"failed_stage": null,
"error": null,
"traceback": null,
"timings_ms": {
"module_load": 229.004,
"init": 0.001,
"home": 0.002,
"category": 521.97,
"detail": 378.743,
"player": 0.01,
"url_check": 188.762,
"total": 1347.119
},
"counts": {
"classes": 2,
"category_videos": 24,
"detail_videos": 1,
"episodes": 1
},
"samples": {
"tid": "1",
"vod_id": "movie/8391.html",
"flag": "PPnix",
"play_id": "8391|1080P"
},
"player": {
"parse": 0,
"url": "https://www.ppnix.com/info/m3u8/8391/1080P.m3u8",
"valid": true,
"reachable": true,
"status_code": 200,
"final_url": "https://www.ppnix.com/info/m3u8/8391/1080P.m3u8",
"reason": null
}
},
{
"spider": "Pomo",
"file": "Pomo.txt",
"success": true,
"failed_stage": null,
"error": null,
"traceback": null,
"timings_ms": {
"module_load": 237.761,
"init": 0.001,
"home": 0.001,
"category": 291.154,
"detail": 336.946,
"player": 0.004,
"url_check": 153.26,
"total": 1026.048
},
"counts": {
"classes": 8,
"category_videos": 16,
"detail_videos": 1,
"episodes": 2
},
"samples": {
"tid": "zuixin",
"vod_id": "1735",
"flag": "夸克",
"play_id": "https://pan.quark.cn/s/cf237eb67916"
},
"player": {
"parse": 0,
"url": "https://pan.quark.cn/s/cf237eb67916",
"valid": true,
"reachable": true,
"status_code": 200,
"final_url": "https://pan.quark.cn/s/cf237eb67916",
"reason": null
}
},
{
"spider": "QQ音乐",
"file": "QQ音乐.txt",
"success": true,
"failed_stage": null,
"error": null,
"traceback": null,
"timings_ms": {
"module_load": 230.057,
"init": 0.012,
"home": 0.011,
"category": 330.529,
"detail": 353.624,
"player": 332.707,
"url_check": 82.892,
"total": 1358.24
},
"counts": {
"classes": 6,
"category_videos": 30,
"detail_videos": 1,
"episodes": 1
},
"samples": {
"tid": "playlist",
"vod_id": "playlist:2671455045",
"flag": "QQ音乐",
"play_id": "qqmusic:0039MnYb0qxYhV:97773|晴天 - 周杰伦"
},
"player": {
"parse": 0,
"url": "https://isure.stream.qqmusic.qq.com/F000003Qui1q2u1Zho.flac?guid=979a92cfc54eaf8b269a4f205d180394&vkey=BFCF68EEB7A69F4445BF4DF9B6A252C2196ED8C2340011BB0AA6766C95986DE1338348A86E9F413BA9AD52ECA19414244AA61F3C005545B5__v2b9abbaa&uin=1152921504846230218&fromtag=119114&redirect=1",
"valid": true,
"reachable": true,
"status_code": 200,
"final_url": "https://isure.stream.qqmusic.qq.com/F000003Qui1q2u1Zho.flac?guid=979a92cfc54eaf8b269a4f205d180394&vkey=BFCF68EEB7A69F4445BF4DF9B6A252C2196ED8C2340011BB0AA6766C95986DE1338348A86E9F413BA9AD52ECA19414244AA61F3C005545B5__v2b9abbaa&uin=1152921504846230218&fromtag=119114&redirect=1",
"reason": null
}
},
{
"spider": "YouTube",
"file": "YouTube.txt",
"success": true,
"failed_stage": null,
"error": null,
"traceback": null,
"timings_ms": {
"module_load": 227.922,
"init": 0.007,
"home": 0.058,
"category": 664.918,
"detail": 976.603,
"player": 0.004,
"url_check": 649.134,
"total": 2534.426
},
"counts": {
"classes": 29,
"category_videos": 19,
"detail_videos": 1,
"episodes": 1
},
"samples": {
"tid": "cat_recommend",
"vod_id": "yt:video:PbiKpbLuoL4",
"flag": "YouTube",
"play_id": "yt:video:PbiKpbLuoL4"
},
"player": {
"parse": 0,
"url": "https://www.youtube.com/watch?v=PbiKpbLuoL4",
"valid": true,
"reachable": true,
"status_code": 204,
"final_url": "https://www.youtube.com/watch?v=PbiKpbLuoL4",
"reason": null
}
},
{
"spider": "libvio",
"file": "libvio.txt",
"success": true,
"failed_stage": null,
"error": null,
"traceback": null,
"timings_ms": {
"module_load": 247.884,
"init": 0.001,
"home": 0.002,
"category": 325.511,
"detail": 210.12,
"player": 0.006,
"url_check": 148.854,
"total": 939.806
},
"counts": {
"classes": 6,
"category_videos": 48,
"detail_videos": 1,
"episodes": 2
},
"samples": {
"tid": "index",
"vod_id": "714893611",
"flag": "夸克",
"play_id": "https://pan.quark.cn/s/344cca2b4f40"
},
"player": {
"parse": 0,
"url": "https://pan.quark.cn/s/344cca2b4f40",
"valid": true,
"reachable": true,
"status_code": 200,
"final_url": "https://pan.quark.cn/s/344cca2b4f40",
"reason": null
}
},
{
"spider": "mifun",
"file": "mifun.txt",
"success": true,
"failed_stage": null,
"error": null,
"traceback": null,
"timings_ms": {
"module_load": 230.698,
"init": 0.001,
"home": 1540.064,
"category": 1093.12,
"detail": 1112.73,
"player": 1708.182,
"url_check": 141.214,
"total": 6812.258
},
"counts": {
"classes": 5,
"category_videos": 30,
"detail_videos": 1,
"episodes": 2
},
"samples": {
"tid": "1",
"vod_id": "19782",
"flag": "无限云",
"play_id": "无限云@@direct@@ba11073ae57ba0eede130eeda148f635,tos-cn-i-ik7evvg4ik/3a0b8b4c24fd423b9418c414a19ecb9d.mp4,token+,1,1"
},
"player": {
"parse": 0,
"url": "https://p9-flow-sign.byteimg.com/tos-cn-i-ik7evvg4ik/3a0b8b4c24fd423b9418c414a19ecb9d.mp4?lk3s=8e244e95&rcl=20260808121650C9B3942193071A1A6382&rrcfp=1860f75c&x-expires=1786767410&x-signature=s7lZQ6eCugvMHGdBWe9uSD8PT5k%3D",
"valid": true,
"reachable": true,
"status_code": 200,
"final_url": "https://p9-flow-sign.byteimg.com/tos-cn-i-ik7evvg4ik/3a0b8b4c24fd423b9418c414a19ecb9d.mp4?lk3s=8e244e95&rcl=20260808121650C9B3942193071A1A6382&rrcfp=1860f75c&x-expires=1786767410&x-signature=s7lZQ6eCugvMHGdBWe9uSD8PT5k%3D",
"reason": null
}
},
{
"spider": "youknow",
"file": "youknow.txt",
"success": true,
"failed_stage": null,
"error": null,
"traceback": null,
"timings_ms": {
"module_load": 6.452,
"init": 0.002,
"home": 0.001,
"category": 1823.798,
"detail": 980.977,
"player": 951.927,
"url_check": 1181.381,
"total": 4945.51
},
"counts": {
"classes": 7,
"category_videos": 228,
"detail_videos": 1,
"episodes": 1
},
"samples": {
"tid": "index",
"vod_id": "205757",
"flag": "YouKnowTV",
"play_id": "eyJ2b2RfaWQiOiIyMDU3NTciLCJlcGlzb2RlX2luZGV4IjoxLCJ0aXRsZSI6IuesrDAx6ZuGIiwiY2FuZGlkYXRlcyI6W3sic291cmNlIjoi57q_6LevMSIsInNvdXJjZV9pZCI6IjEiLCJlcGlzb2RlX3VybCI6Imh0dHBzOi8vd3d3LnlvdWtub3cudHYvcC8yMDU3NTctMS0xLyJ9LHsic291cmNlIjoi57q_6LevMyIsInNvdXJjZV9pZCI6IjEiLCJlcGlzb2RlX3VybCI6Imh0dHBzOi8vd3d3LnlvdWtub3cudHYvcC8yMDU3NTctMS0xLyJ9LHsic291cmNlIjoi57q_6LevMjAiLCJzb3VyY2VfaWQiOiIyIiwiZXBpc29kZV91cmwiOiJodHRwczovL3d3dy55b3Vrbm93LnR2L3AvMjA1NzU3LTItMS8ifSx7InNvdXJjZSI6Iue6v-i3rzIxIiwic291cmNlX2lkIjoiMiIsImVwaXNvZGVfdXJsIjoiaHR0cHM6Ly93d3cueW91a25vdy50di9wLzIwNTc1Ny0yLTEvIn1dfQ"
},
"player": {
"parse": 0,
"url": "https://play.phimgood.com/20260802/29636_8d6a9e37/index.m3u8",
"valid": true,
"reachable": true,
"status_code": 200,
"final_url": "https://play.phimgood.com/20260802/29636_8d6a9e37/index.m3u8",
"reason": null
}
},
{
"spider": "七味",
"file": "七味.txt",
"success": true,
"failed_stage": null,
"error": null,
"traceback": null,
"timings_ms": {
"module_load": 14.05,
"init": 0.004,
"home": 0.001,
"category": 543.467,
"detail": 503.235,
"player": 8761.298,
"url_check": 987.404,
"total": 10810.427
},
"counts": {
"classes": 5,
"category_videos": 42,
"detail_videos": 1,
"episodes": 2
},
"samples": {
"tid": "1",
"vod_id": "511913",
"flag": "牛牛 2",
"play_id": "pcmp4:/py/511913-2-1.html"
},
"player": {
"parse": 1,
"url": "https://www.pcmp4.com/py/511913-2-1.html",
"valid": true,
"reachable": true,
"status_code": 200,
"final_url": "https://www.pcmp4.com/py/511913-2-1.html",
"reason": null
}
},
{
"spider": "不太灵",
"file": "不太灵.txt",
"success": true,
"failed_stage": null,
"error": null,
"traceback": null,
"timings_ms": {
"module_load": 7.956,
"init": 0.001,
"home": 391.396,
"category": 483.822,
"detail": 398.703,
"player": 0.005,
"url_check": 151.159,
"total": 1433.717
},
"counts": {
"classes": 5,
"category_videos": 25,
"detail_videos": 1,
"episodes": 2
},
"samples": {
"tid": "1",
"vod_id": "36117834",
"flag": "夸克",
"play_id": "https://pan.quark.cn/s/dcb1fa12d96f"
},
"player": {
"parse": 0,
"url": "https://pan.quark.cn/s/dcb1fa12d96f",
"valid": true,
"reachable": true,
"status_code": 200,
"final_url": "https://pan.quark.cn/s/dcb1fa12d96f",
"reason": null
}
},
{
"spider": "世纪音乐",
"file": "世纪音乐.txt",
"success": false,
"failed_stage": "category",
"error": "分类视频列表为空",
"traceback": null,
"timings_ms": {
"module_load": 4.702,
"init": 0.001,
"home": 104.472,
"category": 105.837,
"detail": 0.0,
"player": 0.0,
"url_check": 0.0,
"total": 322.616
},
"counts": {
"classes": 5,
"category_videos": 0,
"detail_videos": 0,
"episodes": 0
},
"samples": {
"tid": "rank_list",
"vod_id": null,
"flag": null,
"play_id": null
},
"player": {
"parse": null,
"url": "",
"valid": false,
"reachable": null,
"status_code": null,
"final_url": "",
"reason": null
}
},
{
"spider": "两个BT",
"file": "两个BT.txt",
"success": true,
"failed_stage": null,
"error": null,
"traceback": null,
"timings_ms": {
"module_load": 13.832,
"init": 0.001,
"home": 0.001,
"category": 402.567,
"detail": 334.384,
"player": 802.094,
"url_check": 461.519,
"total": 2014.895
},
"counts": {
"classes": 14,
"category_videos": 24,
"detail_videos": 1,
"episodes": 1
},
"samples": {
"tid": "zgjun",
"vod_id": "ch4frryu2",
"flag": "两个BT",
"play_id": "eyJwaWQiOiIvcGxheS9jaDRmcnJ5dTIiLCJzaWQiOiJjaDRmcnJ5dTIiLCJuYW1lIjoiMSJ9"
},
"player": {
"parse": 0,
"url": "https://zijieapi.douyinbyte.com/m3u8/784199f158a25a4c76840a3f97f6afb9.m3u8",
"valid": true,
"reachable": true,
"status_code": 200,
"final_url": "https://zijieapi.douyinbyte.com/m3u8/784199f158a25a4c76840a3f97f6afb9.m3u8",
"reason": null
}
},
{
"spider": "乌云影视",
"file": "乌云影视.txt",
"success": true,
"failed_stage": null,
"error": null,
"traceback": null,
"timings_ms": {
"module_load": 12.728,
"init": 0.001,
"home": 234.851,
"category": 383.706,
"detail": 830.346,
"player": 0.031,
"url_check": 2577.356,
"total": 13723.765
},
"counts": {
"classes": 7,
"category_videos": 24,
"detail_videos": 1,
"episodes": 1
},
"samples": {
"tid": "tv_series",
"vod_id": "62169",
"flag": "乌云影视",
"play_id": "eyJtZWRpYUlkIjogIjYyMTY5IiwgInNlYXNvbk5vIjogMSwgImVwTm8iOiAxLCAidmlkZW9JZCI6IDU1Nzg2MSwgInBsYXlVcmwiOiAiaHR0cHM6Ly93b295dW4udHYvZ2VuX292ZXJzZWFzL2h0dHBzOi8vdi5mZW5nYmFvOC5jb20vdmlkZW8vZ2VsZWl4aWRlemhhb2h1bnlvdXhpL-esrDAx6ZuGL2luZGV4Lm0zdTgiLCAibmFtZSI6ICLnrKwx6ZuGIOesrDAx6ZuGIn0"
},
"player": {
"parse": 0,
"url": "https://wooyun.tv/gen_overseas/https://v.fengbao8.com/video/geleixidezhaohunyouxi/第01集/index.m3u8",
"valid": true,
"reachable": true,
"status_code": 200,
"final_url": "https://vod-cdn.wooyun.tv/v2/hls_fresh/2607291/7398dcf2747bc8498b38674679dbf9714659a071.m3u8",
"reason": null
}
},
{
"spider": "乐兔",
"file": "乐兔.txt",
"success": false,
"failed_stage": "category",
"error": "分类视频列表为空",
"traceback": null,
"timings_ms": {
"module_load": 5.77,
"init": 0.001,
"home": 0.001,
"category": 460.897,
"detail": 0.0,
"player": 0.0,
"url_check": 0.0,
"total": 1228.853
},
"counts": {
"classes": 5,
"category_videos": 0,
"detail_videos": 0,
"episodes": 0
},
"samples": {
"tid": "2",
"vod_id": null,
"flag": null,
"play_id": null
},
"player": {
"parse": null,
"url": "",
"valid": false,
"reachable": null,
"status_code": null,
"final_url": "",
"reason": null
}
},
{
"spider": "二小",
"file": "二小.txt",
"success": true,
"failed_stage": null,
"error": null,
"traceback": null,
"timings_ms": {
"module_load": 9.408,
"init": 0.01,
"home": 0.001,
"category": 1304.077,
"detail": 199.021,
"player": 0.004,
"url_check": 1050.192,
"total": 2563.283
},
"counts": {
"classes": 4,
"category_videos": 72,
"detail_videos": 1,
"episodes": 2
},
"samples": {
"tid": "1",
"vod_id": "12979",
"flag": "百度#二小",
"play_id": "https://pan.baidu.com/s/1O0RJ5o3zTMEOwF7MGLEhIw?pwd=zhqr"
},
"player": {
"parse": 0,
"url": "https://pan.baidu.com/s/1O0RJ5o3zTMEOwF7MGLEhIw?pwd=zhqr",
"valid": true,
"reachable": true,
"status_code": 200,
"final_url": "https://pan.baidu.com/share/init?surl=O0RJ5o3zTMEOwF7MGLEhIw&pwd=zhqr",
"reason": null
}
},
{
"spider": "云朵",
"file": "云朵.txt",
"success": true,
"failed_stage": null,
"error": null,
"traceback": null,
"timings_ms": {
"module_load": 6.961,
"init": 0.001,
"home": 1551.408,
"category": 809.865,
"detail": 638.886,
"player": 729.548,
"url_check": 1482.957,
"total": 5221.502
},
"counts": {
"classes": 4,
"category_videos": 20,
"detail_videos": 1,
"episodes": 1
},
"samples": {
"tid": "1",
"vod_id": "69353",
"flag": "vwnet",
"play_id": "vwnet-e32cce374db795d5b77dd658a435827f"
},
"player": {
"parse": 0,
"url": "https://yun.jiexicn.top/api/banyun/e32cce374db795d5b77dd658a435827f.m3u8?ODg1ZUQvbmdhcFMrVWYzVFJYTGhxQnNKZkpBVTYwV3loT1FUQllTc0VQNzZyT1hWOGs1SjBYcWRYOGR3RUYybnNSNFZmK3VJYkVxd3FVUFJPRTVwNUk5OGpqeEcvS2hRWnBuMitQTk9rV2ZmbjNkdmg4YWtuTDZheUc0dVoxRlNWV3VDdXVMaUM5UXM3aHJScGhoYXNlTmtzY2tvWEJj",
"valid": true,
"reachable": true,
"status_code": 200,
"final_url": "https://yun.jiexicn.top/api/banyun/e32cce374db795d5b77dd658a435827f.m3u8?ODg1ZUQvbmdhcFMrVWYzVFJYTGhxQnNKZkpBVTYwV3loT1FUQllTc0VQNzZyT1hWOGs1SjBYcWRYOGR3RUYybnNSNFZmK3VJYkVxd3FVUFJPRTVwNUk5OGpqeEcvS2hRWnBuMitQTk9rV2ZmbjNkdmg4YWtuTDZheUc0dVoxRlNWV3VDdXVMaUM5UXM3aHJScGhoYXNlTmtzY2tvWEJj",
"reason": null
}
},
{
"spider": "人人电影",
"file": "人人电影.txt",
"success": true,
"failed_stage": null,
"error": null,
"traceback": null,
"timings_ms": {
"module_load": 4.034,
"init": 0.001,
"home": 0.001,
"category": 515.519,
"detail": 446.024,
"player": 0.008,
"url_check": 1036.084,
"total": 2002.286
},
"counts": {
"classes": 4,
"category_videos": 10,
"detail_videos": 1,
"episodes": 2
},
"samples": {
"tid": "movie/list_2",
"vod_id": "/movie/2026/0807/60733.html",
"flag": "baidu",
"play_id": "https://pan.baidu.com/s/1JyWYqRQZQZxz8-3v6LUDdQ?pwd=n1f4"
},
"player": {
"parse": 0,
"url": "https://pan.baidu.com/s/1JyWYqRQZQZxz8-3v6LUDdQ?pwd=n1f4",
"valid": true,
"reachable": true,
"status_code": 200,
"final_url": "https://pan.baidu.com/share/init?surl=JyWYqRQZQZxz8-3v6LUDdQ&pwd=n1f4",
"reason": null
}
},
{
"spider": "人人视频",
"file": "人人视频.txt",
"success": true,
"failed_stage": null,
"error": null,
"traceback": null,
"timings_ms": {
"module_load": 6.316,
"init": 0.001,
"home": 210.987,
"category": 331.605,
"detail": 278.157,
"player": 428.585,
"url_check": 115.12,
"total": 2580.016
},
"counts": {
"classes": 4,
"category_videos": 30,
"detail_videos": 1,
"episodes": 1
},
"samples": {
"tid": "MOVIE",
"vod_id": "58573",
"flag": "人人专线",
"play_id": "58573@390446"
},
"player": {
"parse": 0,
"url": "https://a0i8iluh0mj2odh.302.fledgecloud.com:56782/zj-302-cdn.bwcgee.cn/10beb4e08b1d71f181315017e1e90402/0da4b4c2f1e94bc1aaf917d1df2dc06b-f2988a7de73606c91fe62e335add886e-ld.mp4?auth_key=1786177008-04ff2fcad7de30f968937c557e176370-0-38eaca93f6b51e9b3fdc3f02a00a1ea9&clientType=web_pc&clientVersion=1.0.0&parseUsage=PLAY&uid=0&rk=1113ca7ceeda4270905c7fbcb369baac&hevc=false&seasonId=58573",
"valid": true,
"reachable": true,
"status_code": 200,
"final_url": "https://a0i8iluh0mj2odh.302.fledgecloud.com:56782/zj-302-cdn.bwcgee.cn/10beb4e08b1d71f181315017e1e90402/0da4b4c2f1e94bc1aaf917d1df2dc06b-f2988a7de73606c91fe62e335add886e-ld.mp4?auth_key=1786177008-04ff2fcad7de30f968937c557e176370-0-38eaca93f6b51e9b3fdc3f02a00a1ea9&clientType=web_pc&clientVersion=1.0.0&parseUsage=PLAY&uid=0&rk=1113ca7ceeda4270905c7fbcb369baac&hevc=false&seasonId=58573",
"reason": null
}
},
{
"spider": "优酷",
"file": "优酷.txt",
"success": true,
"failed_stage": null,
"error": null,
"traceback": null,
"timings_ms": {
"module_load": 12.626,
"init": 0.001,
"home": 0.001,
"category": 307.972,
"detail": 558.515,
"player": 0.002,
"url_check": 236.553,
"total": 1117.199
},
"counts": {
"classes": 6,
"category_videos": 23,
"detail_videos": 1,
"episodes": 1
},
"samples": {
"tid": "电视剧",
"vod_id": "show:dafb6cc804ca4fedb40b",
"flag": "优酷",
"play_id": "https://v.youku.com/v_show/id_XNjU0MjIxOTc4NA==.html"
},
"player": {
"parse": 1,
"url": "https://v.youku.com/v_show/id_XNjU0MjIxOTc4NA==.html",
"valid": true,
"reachable": true,
"status_code": 200,
"final_url": "https://v.youku.com/v_show/id_XNjU0MjIxOTc4NA==.html",
"reason": null
}
},
{
"spider": "低端影视",
"file": "低端影视.txt",
"success": true,
"failed_stage": null,
"error": null,
"traceback": null,
"timings_ms": {
"module_load": 6.121,
"init": 0.001,
"home": 0.001,
"category": 1160.328,
"detail": 1452.66,
"player": 0.01,
"url_check": 482.063,
"total": 3101.715
},
"counts": {
"classes": 4,
"category_videos": 24,
"detail_videos": 1,
"episodes": 2
},
"samples": {
"tid": "series",
"vod_id": "movie/vivant-season-2",
"flag": "备胎1号 (1080P)",
"play_id": "https://v.lfthirtytwo.com/20260727/9033_6941fddc/index.m3u8"
},
"player": {
"parse": 0,
"url": "https://v.lfthirtytwo.com/20260727/9033_6941fddc/index.m3u8",
"valid": true,
"reachable": true,
"status_code": 200,
"final_url": "https://v.lfthirtytwo.com/20260727/9033_6941fddc/index.m3u8",
"reason": null
}
},
{
"spider": "修罗",
"file": "修罗.txt",
"success": true,
"failed_stage": null,
"error": null,
"traceback": null,
"timings_ms": {
"module_load": 10.347,
"init": 0.001,
"home": 0.001,
"category": 654.667,
"detail": 188.647,
"player": 1029.02,
"url_check": 557.501,
"total": 2442.506
},
"counts": {
"classes": 4,
"category_videos": 24,
"detail_videos": 1,
"episodes": 2
},
"samples": {
"tid": "movie",
"vod_id": "kehuan/27043",
"flag": "修罗直连",
"play_id": "play/27043-0"
},
"player": {
"parse": 0,
"url": "https://v.xl01.eu.cc/obj/6FD25ABF7107B0DFF1A7CD817501AFE7F14E2AD5B0A6B168B1F0A2B73638175D",
"valid": true,
"reachable": true,
"status_code": 200,
"final_url": "https://lf26-imcloud-file-sign.bytetos.com/tos-cn-o-0000c2428/oEqdhGgbfCIJfoDcADxqPECq9EACFXAV2vAAV7?x-expires=1786164753&x-signature=gLBjR8aQVm5tAMGurEp9S8cPOMA%3D",
"reason": null
}
},
{
"spider": "免费短剧",
"file": "免费短剧.txt",
"success": true,
"failed_stage": null,
"error": null,
"traceback": null,
"timings_ms": {
"module_load": 4.467,
"init": 0.013,
"home": 0.001,
"category": 338.671,
"detail": 347.198,
"player": 0.003,
"url_check": 1019.349,
"total": 1710.448
},
"counts": {
"classes": 4,
"category_videos": 20,
"detail_videos": 1,
"episodes": 2
},
"samples": {
"tid": "2",
"vod_id": "https://20.90kan.cc/?id=69927",
"flag": "百度",
"play_id": "https://pan.baidu.com/s/1yF6sz_RszA5vr4eHVQVgIw?pwd=6666"
},
"player": {
"parse": 0,
"url": "https://pan.baidu.com/s/1yF6sz_RszA5vr4eHVQVgIw?pwd=6666",
"valid": true,
"reachable": true,
"status_code": 200,
"final_url": "https://pan.baidu.com/share/init?surl=yF6sz_RszA5vr4eHVQVgIw&pwd=6666",
"reason": null
}
},
{
"spider": "农民",
"file": "农民.txt",
"success": false,
"failed_stage": "category",
"error": "分类视频列表为空",
"traceback": null,
"timings_ms": {
"module_load": 6.763,
"init": 0.001,
"home": 187.257,
"category": 196.108,
"detail": 0.0,
"player": 0.0,
"url_check": 0.0,
"total": 596.848
},
"counts": {
"classes": 5,
"category_videos": 0,
"detail_videos": 0,
"episodes": 0
},
"samples": {
"tid": "juji",
"vod_id": null,
"flag": null,
"play_id": null
},
"player": {
"parse": null,
"url": "",
"valid": false,
"reachable": null,
"status_code": null,
"final_url": "",
"reason": null
}
},
{
"spider": "凡客TV",
"file": "凡客TV.txt",
"success": false,
"failed_stage": "category",
"error": "分类视频列表为空",
"traceback": null,
"timings_ms": {
"module_load": 7.922,
"init": 0.002,
"home": 0.001,
"category": 411.3,
"detail": 0.0,
"player": 0.0,
"url_check": 0.0,
"total": 727.594
},
"counts": {
"classes": 8,
"category_videos": 0,
"detail_videos": 0,
"episodes": 0
},
"samples": {
"tid": "2",
"vod_id": null,
"flag": null,
"play_id": null
},
"player": {
"parse": null,
"url": "",
"valid": false,
"reachable": null,
"status_code": null,
"final_url": "",
"reason": null
}
},
{
"spider": "剧圈圈",
"file": "剧圈圈.txt",
"success": false,
"failed_stage": "category",
"error": "分类视频列表为空",
"traceback": null,
"timings_ms": {
"module_load": 5.801,
"init": 0.001,
"home": 0.001,
"category": 658.077,
"detail": 0.0,
"player": 0.0,
"url_check": 0.0,
"total": 1463.915
},
"counts": {
"classes": 5,
"category_videos": 0,
"detail_videos": 0,
"episodes": 0
},
"samples": {
"tid": "juji",
"vod_id": null,
"flag": null,
"play_id": null
},
"player": {
"parse": null,
"url": "",
"valid": false,
"reachable": null,
"status_code": null,
"final_url": "",
"reason": null
}
},
{
"spider": "剧看",
"file": "剧看.txt",
"success": true,
"failed_stage": null,
"error": null,
"traceback": null,
"timings_ms": {
"module_load": 6.946,
"init": 149.988,
"home": 0.073,
"category": 98.618,
"detail": 1750.546,
"player": 215.49,
"url_check": 42.72,
"total": 2265.405
},
"counts": {
"classes": 5,
"category_videos": 21,
"detail_videos": 1,
"episodes": 2
},
"samples": {
"tid": "2",
"vod_id": "188925",
"flag": "蓝光B线-在线看",
"play_id": "BBA@FYNB-353864636661643935653263333537357a8e49239ef0fe17238d56f9a9e07af4f15ce2424dd8c1cee99fd9354a703820d17321242e6b028ca5bd43a81139703632aef85a24fc2e5177d1a341152f7f8d3dcd86d8b6014a4ebeea9b2679f5cd28c39f57873fca12a297cba14d3202649096bbc844568b988b1c7add6cd8ed3be29af96a84c2ca49c34f869b068eee4c36e9e176bdb348060f2f00a10a930f99f5c4c0523471cc3f20b36cdac16eef9817d42e67d446f0c1ad37b0d92ad263d8928338bcc0bcdd94fc78baa0ebb333bfbd"
},
"player": {
"parse": 0,
"url": "https://lf6-imcloud-video-sign.bytetos.com/tos-cn-v-ecaa22/ocfaM1WZeQM7z5kLfsTA8UQMpkRLGKPCMFfBHE?a=1223&ch=3&cr=7&x-signature=lgbE1ChcbfPbDudtv%2FpR3HkCoR8%3D&dr=5&x-tos-authkey=1828fde59fac371cf66ba66eab9ceb4f&er=0&lr=test&x-tos-expires=1787557560&cd=5%7C1%7C0%7C2&br=1532&bt=1462&cs=4&x-tos-signature=hJdLJuW9OGbHPougnFLRUVBBMAxf4i9h2ZeiBWwD&ds=6&x-expires=1786418783&ft=TAXi4WfVyhU0H1VJrbGf&mime_type=video_mp4&qs=13&rc=GbNDQihkkC5YAYuJCF5Aem00ytbrFbRWIKL7UET8zWldx1bjx5%3D%3D&btag=a0000e550110000&dy_q=1778051370&l=2026052169519317572db9e2c697a9c31&filename=BBA.mp4",
"valid": true,
"reachable": true,
"status_code": 200,
"final_url": "https://lf6-imcloud-video-sign.bytetos.com/tos-cn-v-ecaa22/ocfaM1WZeQM7z5kLfsTA8UQMpkRLGKPCMFfBHE?a=1223&ch=3&cr=7&x-signature=lgbE1ChcbfPbDudtv%2FpR3HkCoR8%3D&dr=5&x-tos-authkey=1828fde59fac371cf66ba66eab9ceb4f&er=0&lr=test&x-tos-expires=1787557560&cd=5%7C1%7C0%7C2&br=1532&bt=1462&cs=4&x-tos-signature=hJdLJuW9OGbHPougnFLRUVBBMAxf4i9h2ZeiBWwD&ds=6&x-expires=1786418783&ft=TAXi4WfVyhU0H1VJrbGf&mime_type=video_mp4&qs=13&rc=GbNDQihkkC5YAYuJCF5Aem00ytbrFbRWIKL7UET8zWldx1bjx5%3D%3D&btag=a0000e550110000&dy_q=1778051370&l=2026052169519317572db9e2c697a9c31&filename=BBA.mp4",
"reason": null
}
},
{
"spider": "剧迷",
"file": "剧迷.txt",
"success": true,
"failed_stage": null,
"error": null,
"traceback": null,
"timings_ms": {
"module_load": 6.636,
"init": 0.001,
"home": 0.001,
"category": 208.667,
"detail": 192.226,
"player": 406.579,
"url_check": 1160.752,
"total": 1975.472
},
"counts": {
"classes": 6,
"category_videos": 60,
"detail_videos": 1,
"episodes": 1
},
"samples": {
"tid": "1",
"vod_id": "480105",
"flag": "gimy",
"play_id": "480105-5-1"
},
"player": {
"parse": 0,
"url": "https://vip.dytt-network.com/20260801/36961_a0a6d7cc/index.m3u8",
"valid": true,
"reachable": true,
"status_code": 200,
"final_url": "https://vip.dytt-network.com/20260801/36961_a0a6d7cc/index.m3u8",
"reason": null
}
},
{
"spider": "华数影视",
"file": "华数影视.txt",
"success": true,
"failed_stage": null,
"error": null,
"traceback": null,
"timings_ms": {
"module_load": 4.888,
"init": 0.001,
"home": 0.001,
"category": 488.684,
"detail": 81.88,
"player": 679.528,
"url_check": 89.4,
"total": 1345.794
},
"counts": {
"classes": 5,
"category_videos": 40,
"detail_videos": 1,
"episodes": 1
},
"samples": {
"tid": "961",
"vod_id": "961@177761",
"flag": "华数专线",
"play_id": "aHR0cHM6Ly92aWRlby41Zy53YXN1LnR2L3Bjc2FuMjQvcGMvbW92aWUvMjAyNi0wOC8wMy8yMDI2MDgwMzA5Mjc0MTA1NzNqTGlFV05sLm1wNA"
},
"player": {
"parse": 0,
"url": "https://pcvideo.5g.wasu.tv/pcsan24/pc/movie/2026-08/03/202608030927410573jLiEWNl/playlist.m3u8?auth_key=1786162608-0-0-b74040d747ffea6589c598e10b096cb5",
"valid": true,
"reachable": true,
"status_code": 200,
"final_url": "https://pcvideo.5g.wasu.tv/pcsan24/pc/movie/2026-08/03/202608030927410573jLiEWNl/playlist.m3u8?auth_key=1786162608-0-0-b74040d747ffea6589c598e10b096cb5",
"reason": null
}
},
{
"spider": "博看听书",
"file": "博看听书.txt",
"success": true,
"failed_stage": null,
"error": null,
"traceback": null,
"timings_ms": {
"module_load": 4.468,
"init": 0.001,
"home": 2837.001,
"category": 255.234,
"detail": 667.41,
"player": 0.002,
"url_check": 41.976,
"total": 3806.68
},
"counts": {
"classes": 11,
"category_videos": 24,
"detail_videos": 1,
"episodes": 1
},
"samples": {
"tid": "1319",
"vod_id": "902849",
"flag": "博看听书",
"play_id": "http://audio.bookan.com.cn/video1/audio/20200706001/aache64_133068a2.m4a"
},
"player": {
"parse": 0,
"url": "http://audio.bookan.com.cn/video1/audio/20200706001/aache64_133068a2.m4a",
"valid": true,
"reachable": true,
"status_code": 200,
"final_url": "http://audio.bookan.com.cn/video1/audio/20200706001/aache64_133068a2.m4a",
"reason": null
}
},
{
"spider": "双子星",
"file": "双子星.txt",
"success": true,
"failed_stage": null,
"error": null,
"traceback": null,
"timings_ms": {
"module_load": 6.31,
"init": 0.005,
"home": 1047.499,
"category": 91.488,
"detail": 84.364,
"player": 0.003,
"url_check": 256.407,
"total": 1486.702
},
"counts": {
"classes": 6,
"category_videos": 21,
"detail_videos": 1,
"episodes": 1
},
"samples": {
"tid": "1",
"vod_id": "12180",
"flag": "线路P",
"play_id": "http://103.97.176.23/m3u8/m3u811/1785598614.m3u8"
},
"player": {
"parse": 0,
"url": "http://103.97.176.23/m3u8/m3u811/1785598614.m3u8",
"valid": true,
"reachable": true,
"status_code": 200,
"final_url": "http://103.97.176.23/m3u8/m3u811/1785598614.m3u8",
"reason": null
}
},
{
"spider": "双星",
"file": "双星.txt",
"success": true,
"failed_stage": null,
"error": null,
"traceback": null,
"timings_ms": {
"module_load": 3.85,
"init": 542.648,
"home": 0.01,
"category": 163.953,
"detail": 188.39,
"player": 0.005,
"url_check": 149.167,
"total": 1048.886
},
"counts": {
"classes": 7,
"category_videos": 15,
"detail_videos": 1,
"episodes": 2
},
"samples": {
"tid": "ju",
"vod_id": "/ju/11107.html",
"flag": "夸克",
"play_id": "https://pan.quark.cn/s/420f5e44d99e"
},
"player": {
"parse": 0,
"url": "https://pan.quark.cn/s/420f5e44d99e",
"valid": true,
"reachable": true,
"status_code": 200,
"final_url": "https://pan.quark.cn/s/420f5e44d99e",
"reason": null
}
},
{
"spider": "听书",
"file": "听书.txt",
"success": true,
"failed_stage": null,
"error": null,
"traceback": null,
"timings_ms": {
"module_load": 4.554,
"init": 81.181,
"home": 0.001,
"category": 220.733,
"detail": 733.443,
"player": 1599.364,
"url_check": 34.145,
"total": 2674.15
},
"counts": {
"classes": 11,
"category_videos": 10,
"detail_videos": 1,
"episodes": 1
},
"samples": {
"tid": "6",
"vod_id": "63",
"flag": "直链",
"play_id": "2926931|||63"
},
"player": {
"parse": 0,
"url": "http://audiopay.cos.tx.xmcdn.com/download/1.0.0/storages/b817-audiopay/16/AA/GKwRIaIGGaRGADgE-gEx_hMS-aacv2-48K.m4a?sign=6089de99ace465846a9d01b481bc2458&buy_key=FM&token=1215&timestamp=1786162610&duration=453",
"valid": true,
"reachable": true,
"status_code": 200,
"final_url": "http://audiopay.cos.tx.xmcdn.com/download/1.0.0/storages/b817-audiopay/16/AA/GKwRIaIGGaRGADgE-gEx_hMS-aacv2-48K.m4a?sign=6089de99ace465846a9d01b481bc2458&buy_key=FM&token=1215&timestamp=1786162610&duration=453",
"reason": null
}
},
{
"spider": "听友FM",
"file": "听友FM.txt",
"success": true,
"failed_stage": null,
"error": null,
"traceback": null,
"timings_ms": {
"module_load": 11.167,
"init": 0.001,
"home": 474.562,
"category": 366.837,
"detail": 1707.424,
"player": 315.473,
"url_check": 169.946,
"total": 3047.348
},
"counts": {
"classes": 8,
"category_videos": 20,
"detail_videos": 1,
"episodes": 1
},
"samples": {
"tid": "46",
"vod_id": "9783312385",
"flag": "听友FM",
"play_id": "9783312385|1"
},
"player": {
"parse": 0,
"url": "https://file.hgeuz.cn/stream/eJwANwDI_wJVZgVKIIrU0ECux-GJ1PSt38ahythCqsH-r9TAQ4rj5F94rOjbQKjk063xyIX2z3hfeGcIHF4BAAD__5DtISY.?ts=1786162471&sign=04af986d77c0f2246ba4f8ea44e75f0d",
"valid": true,
"reachable": true,
"status_code": 200,
"final_url": "https://file.hgeuz.cn/stream/eJwANwDI_wJVZgVKIIrU0ECux-GJ1PSt38ahythCqsH-r9TAQ4rj5F94rOjbQKjk063xyIX2z3hfeGcIHF4BAAD__5DtISY.?ts=1786162471&sign=04af986d77c0f2246ba4f8ea44e75f0d",
"reason": null
}
},
{
"spider": "咕咕动漫",
"file": "咕咕动漫.txt",
"success": false,
"failed_stage": "url_check",
"error": "不支持的地址协议: empty",
"traceback": null,
"timings_ms": {
"module_load": 8.122,
"init": 0.006,
"home": 484.406,
"category": 571.525,
"detail": 466.418,
"player": 1469.736,
"url_check": 0.057,
"total": 6071.842
},
"counts": {
"classes": 3,
"category_videos": 30,
"detail_videos": 1,
"episodes": 1
},
"samples": {
"tid": "21",
"vod_id": "5083",
"flag": "咕咕新线(国内高速)",
"play_id": "parse_api=a2796a09189261bcaf3cc4542d7c5ac2&url=L5qxaG2Fo2lMBTzslGJc3ejY2pnokP6qOIZDRkD0EucUj5bI3LWtGrn8Z2wYKSXy&token=|靠死亡游戏混饭吃。 44:CLOUDY BEACH|1"
},
"player": {
"parse": 1,
"url": "parse_api=a2796a09189261bcaf3cc4542d7c5ac2&url=L5qxaG2Fo2lMBTzslGJc3ejY2pnokP6qOIZDRkD0EucUj5bI3LWtGrn8Z2wYKSXy&token=",
"valid": false,
"reachable": false,
"status_code": null,
"final_url": "parse_api=a2796a09189261bcaf3cc4542d7c5ac2&url=L5qxaG2Fo2lMBTzslGJc3ejY2pnokP6qOIZDRkD0EucUj5bI3LWtGrn8Z2wYKSXy&token=",
"reason": "不支持的地址协议: empty"
}
},
{
"spider": "四万影视",
"file": "四万影视.txt",
"success": false,
"failed_stage": "category",
"error": "分类视频列表为空",
"traceback": null,
"timings_ms": {
"module_load": 5.22,
"init": 0.001,
"home": 0.001,
"category": 643.38,
"detail": 0.0,
"player": 0.0,
"url_check": 0.0,
"total": 1795.675
},
"counts": {
"classes": 5,
"category_videos": 0,
"detail_videos": 0,
"episodes": 0
},
"samples": {
"tid": "30",
"vod_id": null,
"flag": null,
"play_id": null
},
"player": {
"parse": null,
"url": "",
"valid": false,
"reachable": null,
"status_code": null,
"final_url": "",
"reason": null
}
},
{
"spider": "在线之家",
"file": "在线之家.txt",
"success": false,
"failed_stage": "url_check",
"error": "HTTP 403",
"traceback": null,
"timings_ms": {
"module_load": 11.566,
"init": 0.001,
"home": 0.001,
"category": 575.8,
"detail": 1210.317,
"player": 979.459,
"url_check": 313.346,
"total": 6863.371
},
"counts": {
"classes": 6,
"category_videos": 12,
"detail_videos": 1,
"episodes": 1
},
"samples": {
"tid": "2",
"vod_id": "4623",
"flag": "zxzj",
"play_id": "vodplay/4623-1-1.html"
},
"player": {
"parse": 1,
"url": "https://ex.zxzja.com:9876/player-v2/common/1996901774556008448/E9BB91E8A28DE7BAA0E5AF9FE9989F5330354530312E6D70347C333233343136333635",
"valid": false,
"reachable": false,
"status_code": 403,
"final_url": "https://ex.zxzja.com:9876/player-v2/common/1996901774556008448/E9BB91E8A28DE7BAA0E5AF9FE9989F5330354530312E6D70347C333233343136333635",
"reason": "HTTP 403"
}
},
{
"spider": "多多",
"file": "多多.txt",
"success": true,
"failed_stage": null,
"error": null,
"traceback": null,
"timings_ms": {
"module_load": 8.606,
"init": 0.003,
"home": 0.001,
"category": 1815.833,
"detail": 823.685,
"player": 0.004,
"url_check": 1017.488,
"total": 3666.469
},
"counts": {
"classes": 6,
"category_videos": 72,
"detail_videos": 1,
"episodes": 2
},
"samples": {
"tid": "1",
"vod_id": "9628",
"flag": "百度#多多",
"play_id": "https://pan.baidu.com/s/1C2akm1U8xz_uAX-1pjsCrQ?pwd=9527"
},
"player": {
"parse": 0,
"url": "https://pan.baidu.com/s/1C2akm1U8xz_uAX-1pjsCrQ?pwd=9527",
"valid": true,
"reachable": true,
"status_code": 200,
"final_url": "https://pan.baidu.com/share/init?surl=C2akm1U8xz_uAX-1pjsCrQ&pwd=9527",
"reason": null
}
},
{
"spider": "多瑙影视",
"file": "多瑙影视.txt",
"success": true,
"failed_stage": null,
"error": null,
"traceback": null,
"timings_ms": {
"module_load": 7.638,
"init": 0.003,
"home": 0.001,
"category": 453.56,
"detail": 505.758,
"player": 1166.18,
"url_check": 370.404,
"total": 2504.256
},
"counts": {
"classes": 5,
"category_videos": 36,
"detail_videos": 1,
"episodes": 2
},
"samples": {
"tid": "1",
"vod_id": "368456",
"flag": "蓝光",
"play_id": "368456-4-1"
},
"player": {
"parse": 0,
"url": "https://vip.dytt-tvs.com/20260520/20754_0727459d/index.m3u8",
"valid": true,
"reachable": true,
"status_code": 200,
"final_url": "https://cnvod.jimxtc.com/20260520/20754_0727459d/index.m3u8",
"reason": null
}
},
{
"spider": "如意资源",
"file": "如意资源.txt",
"success": true,
"failed_stage": null,
"error": null,
"traceback": null,
"timings_ms": {
"module_load": 4.878,
"init": 0.001,
"home": 0.006,
"category": 768.463,
"detail": 348.591,
"player": 0.004,
"url_check": 1569.286,
"total": 2692.07
},
"counts": {
"classes": 6,
"category_videos": 20,
"detail_videos": 1,
"episodes": 2
},
"samples": {
"tid": "1",
"vod_id": "83533",
"flag": "rym3u8",
"play_id": "https://svip.ryplay14.com/20260807/17915_8288317c/index.m3u8"
},
"player": {
"parse": 0,
"url": "https://svip.ryplay14.com/20260807/17915_8288317c/index.m3u8",
"valid": true,
"reachable": true,
"status_code": 200,
"final_url": "https://svip.ryplay14.com/20260807/17915_8288317c/index.m3u8",
"reason": null
}
},
{
"spider": "寻川4K",
"file": "寻川4K.txt",
"success": false,
"failed_stage": "home",
"error": "分类列表为空",
"traceback": null,
"timings_ms": {
"module_load": 11.092,
"init": 445.019,
"home": 446.669,
"category": 0.0,
"detail": 0.0,
"player": 0.0,
"url_check": 0.0,
"total": 903.069
},
"counts": {
"classes": 0,
"category_videos": 0,
"detail_videos": 0,
"episodes": 0
},
"samples": {
"tid": null,
"vod_id": null,
"flag": null,
"play_id": null
},
"player": {
"parse": null,
"url": "",
"valid": false,
"reachable": null,
"status_code": null,
"final_url": "",
"reason": null
}
},
{
"spider": "小宝影院",
"file": "小宝影院.txt",
"success": true,
"failed_stage": null,
"error": null,
"traceback": null,
"timings_ms": {
"module_load": 5.523,
"init": 0.001,
"home": 0.001,
"category": 199.346,
"detail": 251.063,
"player": 201.54,
"url_check": 1882.258,
"total": 2540.769
},
"counts": {
"classes": 6,
"category_videos": 48,
"detail_videos": 1,
"episodes": 2
},
"samples": {
"tid": "7",
"vod_id": "254815",
"flag": "小宝影院",
"play_id": "254815/2/1"
},
"player": {
"parse": 0,
"url": "https://svip.ryplay14.com/20260807/17918_f70d3661/index.m3u8",
"valid": true,
"reachable": true,
"status_code": 200,
"final_url": "https://svip.ryplay14.com/20260807/17918_f70d3661/index.m3u8",
"reason": null
}
},
{
"spider": "山楂影视",
"file": "山楂影视.txt",
"success": true,
"failed_stage": null,
"error": null,
"traceback": null,
"timings_ms": {
"module_load": 6.17,
"init": 142.774,
"home": 89.622,
"category": 236.916,
"detail": 444.419,
"player": 540.577,
"url_check": 696.591,
"total": 2158.235
},
"counts": {
"classes": 8,
"category_videos": 40,
"detail_videos": 1,
"episodes": 1
},
"samples": {
"tid": "M16",
"vod_id": "1319022",
"flag": "超清",
"play_id": "1319022@77@30080036@episode"
},
"player": {
"parse": "0",
"url": "https://cibn-edge-5g.1ljx.com/cloud/flv/9a8ba818c0d4281f963989c9cc8b12ea/f09766648a82a89d2e719eec6f539a07/6a76adb2dc79d.m3u8?auth_key=1786162610.903-1-170422045.info-internet-2-llq-499d5a073fe724fcea0783ed111c111b",
"valid": true,
"reachable": true,
"status_code": 200,
"final_url": "https://cibn-edge-5g.1ljx.com/ufile/flv/qq/a814b9872feb05a3bc1d5410b0305f2ecd3beb52b1425984a8f02256d7ed46a374e5d5ec17950d3196ff063305734238c8c7d713327e0ac7f39dba429e5baa17/658430c38905b385efe97a0ab8b30c5c_@lirose_tv.m3u8",
"reason": null
}
},
{
"spider": "布布影视",
"file": "布布影视.txt",
"success": true,
"failed_stage": null,
"error": null,
"traceback": null,
"timings_ms": {
"module_load": 8.098,
"init": 0.001,
"home": 0.001,
"category": 851.48,
"detail": 681.861,
"player": 1113.368,
"url_check": 252.602,
"total": 2908.051
},
"counts": {
"classes": 4,
"category_videos": 24,
"detail_videos": 1,
"episodes": 2
},
"samples": {
"tid": "1",
"vod_id": "86421",
"flag": "CO蓝光(2)",
"play_id": "co@1@co_uzc2tzd6xi4age5ryd43dxouwpop5mo776z4twdexhvn5m6yzgz7lzvr37plt2w7"
},
"player": {
"parse": 0,
"url": "https://cibn-edge-5g.1ljx.com/cloud/flv/c5c6f486a6a3aeb64dbb719924883eb0/4ec07872a24718f2fc31f3a2a478f8ab/6a76adb49e101.m3u8?auth_key=1786162612.6473-1-357168183.info-internet-2-llq-2c6f054c370a18f17d59e1ce00ec2e6c",
"valid": true,
"reachable": true,
"status_code": 200,
"final_url": "https://cibn-edge-4g.1ljx.com/vod-rose/9ecb05a0a6bb3d8d87db40f2d4081a35d613ef83bca9348245f79e192b68f4b4ccb6e17d403decf82065616ac46fa9c8ca0659c2afe7d1358a26c0b5356a4070eaf1c434fa8da18946d13956f66b8002e6892ce5df00610b68f02edc48518e63/playwm.m3u8?e=&sig=&tg@lirose_tv",
"reason": null
}
},
{
"spider": "微观短剧",
"file": "微观短剧.txt",
"success": true,
"failed_stage": null,
"error": null,
"traceback": null,
"timings_ms": {
"module_load": 5.259,
"init": 0.049,
"home": 198.845,
"category": 291.642,
"detail": 198.323,
"player": 372.671,
"url_check": 267.604,
"total": 1335.181
},
"counts": {
"classes": 30,
"category_videos": 30,
"detail_videos": 1,
"episodes": 2
},
"samples": {
"tid": "逆袭",
"vod_id": "110000046951321516",
"flag": "超清",
"play_id": "110000046951321516:1"
},
"player": {
"parse": 0,
"url": "https://tv-video.cdn.drama.9ddm.com/C1/F6/C1F63C79CBF09E493F99B1E0824CEAB2.mp4?timestamp=1786162611&sign=e4af6cee3ad9efdbfc4b6093fc8a35db",
"valid": true,
"reachable": true,
"status_code": 200,
"final_url": "https://tv-video.cdn.drama.9ddm.com/C1/F6/C1F63C79CBF09E493F99B1E0824CEAB2.mp4?timestamp=1786162611&sign=e4af6cee3ad9efdbfc4b6093fc8a35db",
"reason": null
}
},
{
"spider": "怀桑",
"file": "怀桑.txt",
"success": true,
"failed_stage": null,
"error": null,
"traceback": null,
"timings_ms": {
"module_load": 8.081,
"init": 0.008,
"home": 467.371,
"category": 184.788,
"detail": 251.152,
"player": 147.8,
"url_check": 4342.991,
"total": 5825.79
},
"counts": {
"classes": 8,
"category_videos": 30,
"detail_videos": 1,
"episodes": 2
},
"samples": {
"tid": "1",
"vod_id": "70218",
"flag": "线·伍",
"play_id": "parse_api=4a720977ebfe3f13296b548e51cc3355&url=adF0opw+KAOkZWcG9j542WJe+NRlhsdlmpW+ysCg0kA=&token=|错过了遗憾吗|1"
},
"player": {
"parse": 0,
"url": "http://110.42.49.74:2222/jp/api.php?token=ZY-7be2jk4Q99IYGGJE8OnYtUXAKmc9Myt3L8o5JpFUxfuaGg&url=JP-146240-1308855&zy.m3u8",
"valid": true,
"reachable": true,
"status_code": 200,
"final_url": "https://ppvod011.blbtgg.com/splitOut/20260808/1368597/V20260808115140801511368597/index.m3u8?auth_key=1786162615-bd2ffa4995b24ef5b5dc7721acc12991-0-15e0a044b4524034ece6183706b65a7d",
"reason": null
}
},
{
"spider": "悯善",
"file": "悯善.txt",
"success": false,
"failed_stage": "unexpected",
"error": "HTTPConnectionPool(host='113.31.180.218', port=19987): Max retries exceeded with url: /app/bn/app/systemInit (Caused by ConnectTimeoutError(<HTTPConnection(host='113.31.180.218', port=19987) at 0x77d604ca9370>, 'Connection to 113.31.180.218 timed out. (connect timeout=10)'))",
"traceback": "Traceback (most recent call last):\n File \"/home/harold/workspace/atv-spiders/py/.venv/lib/python3.14/site-packages/urllib3/connection.py\", line 204, in _new_conn\n sock = connection.create_connection(\n (self._dns_host, self.port),\n ...<2 lines>...\n socket_options=self.socket_options,\n )\n File \"/home/harold/workspace/atv-spiders/py/.venv/lib/python3.14/site-packages/urllib3/util/connection.py\", line 85, in create_connection\n raise err\n File \"/home/harold/workspace/atv-spiders/py/.venv/lib/python3.14/site-packages/urllib3/util/connection.py\", line 73, in create_connection\n sock.connect(sa)\n ~~~~~~~~~~~~^^^^\nTimeoutError: timed out\n\nThe above exception was the direct cause of the following exception:\n\nTraceback (most recent call last):\n File \"/home/harold/workspace/atv-spiders/py/.venv/lib/python3.14/site-packages/urllib3/connectionpool.py\", line 787, in urlopen\n response = self._make_request(\n conn,\n ...<10 lines>...\n **response_kw,\n )\n File \"/home/harold/workspace/atv-spiders/py/.venv/lib/python3.14/site-packages/urllib3/connectionpool.py\", line 493, in _make_request\n conn.request(\n ~~~~~~~~~~~~^\n method,\n ^^^^^^^\n ...<6 lines>...\n enforce_content_length=enforce_content_length,\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n )\n ^\n File \"/home/harold/workspace/atv-spiders/py/.venv/lib/python3.14/site-packages/urllib3/connection.py\", line 500, in request\n self.endheaders()\n ~~~~~~~~~~~~~~~^^\n File \"/home/harold/.local/share/uv/python/cpython-3.14.3-linux-x86_64-gnu/lib/python3.14/http/client.py\", line 1353, in endheaders\n self._send_output(message_body, encode_chunked=encode_chunked)\n ~~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/home/harold/.local/share/uv/python/cpython-3.14.3-linux-x86_64-gnu/lib/python3.14/http/client.py\", line 1113, in _send_output\n self.send(msg)\n ~~~~~~~~~^^^^^\nurllib3.exceptions.ConnectTimeoutError: (<HTTPConnection(host='113.31.180.218', port=19987) at 0x77d604ca9370>, 'Connection to 113.31.180.218 timed out. (connect timeout=10)')\n\nThe above exception was the direct cause of the following exception:\n\nTraceback (most recent call last):\n File \"/home/harold/workspace/atv-spiders/py/.venv/lib/python3.14/site-packages/requests/adapters.py\", line 645, in send\n resp = conn.urlopen(\n method=request.method,\n ...<9 lines>...\n chunked=chunked,\n )\n File \"/home/harold/workspace/atv-spiders/py/.venv/lib/python3.14/site-packages/urllib3/connectionpool.py\", line 841, in urlopen\n retries = retries.increment(\n method, url, error=new_e, _pool=self, _stacktrace=sys.exc_info()[2]\n )\n File \"/home/harold/workspace/atv-spiders/py/.venv/lib/python3.14/site-packages/urllib3/util/retry.py\", line 535, in increment\n raise MaxRetryError(_pool, url, reason) from reason # type: ignore[arg-type]\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\nurllib3.exceptions.MaxRetryError: HTTPConnectionPool(host='113.31.180.218', port=19987): Max retries exceeded with url: /app/bn/app/systemInit (Caused by ConnectTimeoutError(<HTTPConnection(host='113.31.180.218', port=19987) at 0x77d604ca9370>, 'Connection to 113.31.180.218 timed out. (connect timeout=10)'))\n\nDuring handling of the above exception, another exception occurred:\n\nTraceback (most recent call last):\n File \"/home/harold/workspace/atv-spiders/py/validate_spiders.py\", line 756, in validate_spider_file\n home_result = _run_timed(result[\"timings_ms\"], \"home\", spider.homeContent, clock, False)\n File \"/home/harold/workspace/atv-spiders/py/validate_spiders.py\", line 318, in _run_timed\n return func(*args, **kwargs)\n File \"/home/harold/workspace/tvbox-resources/py/悯善.txt\", line 145, in homeContent\n File \"/home/harold/workspace/tvbox-resources/py/悯善.txt\", line 263, in _ensure_system_init\n File \"/home/harold/workspace/tvbox-resources/py/悯善.txt\", line 292, in _post_api\nrequests.exceptions.ConnectTimeout: HTTPConnectionPool(host='113.31.180.218', port=19987): Max retries exceeded with url: /app/bn/app/systemInit (Caused by ConnectTimeoutError(<HTTPConnection(host='113.31.180.218', port=19987) at 0x77d604ca9370>, 'Connection to 113.31.180.218 timed out. (connect timeout=10)'))\n",
"timings_ms": {
"module_load": 8.093,
"init": 0.01,
"home": 10011.116,
"category": 0.0,
"detail": 0.0,
"player": 0.0,
"url_check": 0.0,
"total": 10021.243
},
"counts": {
"classes": 0,
"category_videos": 0,
"detail_videos": 0,
"episodes": 0
},
"samples": {
"tid": null,
"vod_id": null,
"flag": null,
"play_id": null
},
"player": {
"parse": null,
"url": "",
"valid": false,
"reachable": null,
"status_code": null,
"final_url": "",
"reason": null
}
},
{
"spider": "新片预告",
"file": "新片预告.txt",
"success": true,
"failed_stage": null,
"error": null,
"traceback": null,
"timings_ms": {
"module_load": 4.8,
"init": 0.0,
"home": 557.392,
"category": 312.423,
"detail": 301.963,
"player": 275.763,
"url_check": 65.862,
"total": 1518.745
},
"counts": {
"classes": 1,
"category_videos": 30,
"detail_videos": 1,
"episodes": 1
},
"samples": {
"tid": "movlist/",
"vod_id": "/movie/85472",
"flag": "预告片",
"play_id": "/show/195685"
},
"player": {
"parse": 0,
"url": "https://vfx.mtime.cn/Video/2026/07/25/mp4/260725232238067105.mp4",
"valid": true,
"reachable": true,
"status_code": 200,
"final_url": "https://vfx.mtime.cn/Video/2026/07/25/mp4/260725232238067105.mp4",
"reason": null
}
},
{
"spider": "新韩剧网",
"file": "新韩剧网.txt",
"success": true,
"failed_stage": null,
"error": null,
"traceback": null,
"timings_ms": {
"module_load": 6.509,
"init": 0.001,
"home": 0.0,
"category": 877.68,
"detail": 537.743,
"player": 521.77,
"url_check": 2013.669,
"total": 3957.983
},
"counts": {
"classes": 5,
"category_videos": 16,
"detail_videos": 1,
"episodes": 1
},
"samples": {
"tid": "1",
"vod_id": "3720",
"flag": "在线云播",
"play_id": "3720_1_1"
},
"player": {
"parse": 0,
"url": "https://cdn.yzzyvip-29.com/20260801/26480_90d048af/index.m3u8",
"valid": true,
"reachable": true,
"status_code": 200,
"final_url": "https://cdn.yzzyvip-29.com/20260801/26480_90d048af/index.m3u8",
"reason": null
}
},
{
"spider": "星星短剧",
"file": "星星短剧.txt",
"success": true,
"failed_stage": null,
"error": null,
"traceback": null,
"timings_ms": {
"module_load": 3.383,
"init": 0.001,
"home": 0.001,
"category": 493.608,
"detail": 466.385,
"player": 0.004,
"url_check": 81.886,
"total": 1045.814
},
"counts": {
"classes": 5,
"category_videos": 10,
"detail_videos": 1,
"episodes": 1
},
"samples": {
"tid": "1287",
"vod_id": "437823882657793@@千金驾到@@向往自由的首富千金唐灵自普林斯顿商学院毕业后,非但没有听从爷爷唐天的安排进公司做总裁,反而去荣盛集团那样的小公司实习,唐天拗不过唐灵,只能答应后安排人暗中照顾,却不料,在荣盛集团,唐灵的千金身份被自己的同班同学唐星月所冒用,在唐灵这位正主面前,唐星月不知悔改,一步步迈入贪婪的深渊无法回头。",
"flag": "星星短剧",
"play_id": "https://img.novel.wsljf.xyz/shortPlay-mp4/437424643637249/GZRfB1754881124538/2a2bf885-69ea-4aa9-80a4-1ebb782af11f/540x960/output.m3u8"
},
"player": {
"parse": 0,
"url": "https://img.novel.wsljf.xyz/shortPlay-mp4/437424643637249/GZRfB1754881124538/2a2bf885-69ea-4aa9-80a4-1ebb782af11f/540x960/output.m3u8",
"valid": true,
"reachable": true,
"status_code": 200,
"final_url": "https://img.novel.wsljf.xyz/shortPlay-mp4/437424643637249/GZRfB1754881124538/2a2bf885-69ea-4aa9-80a4-1ebb782af11f/540x960/output.m3u8",
"reason": null
}
},
{
"spider": "木偶",
"file": "木偶.txt",
"success": true,
"failed_stage": null,
"error": null,
"traceback": null,
"timings_ms": {
"module_load": 10.255,
"init": 0.004,
"home": 0.001,
"category": 844.408,
"detail": 278.084,
"player": 0.016,
"url_check": 221.521,
"total": 1354.722
},
"counts": {
"classes": 7,
"category_videos": 72,
"detail_videos": 1,
"episodes": 1
},
"samples": {
"tid": "25",
"vod_id": "8411",
"flag": "115#木偶",
"play_id": "https://115cdn.com/s/sws43qp36dh?password=b0b6"
},
"player": {
"parse": 0,
"url": "https://115cdn.com/s/sws43qp36dh?password=b0b6",
"valid": true,
"reachable": true,
"status_code": 200,
"final_url": "https://115cdn.com/s/sws43qp36dh?password=b0b6",
"reason": null
}
},
{
"spider": "樱花动漫",
"file": "樱花动漫.txt",
"success": true,
"failed_stage": null,
"error": null,
"traceback": null,
"timings_ms": {
"module_load": 5.287,
"init": 0.001,
"home": 0.001,
"category": 831.677,
"detail": 641.981,
"player": 654.875,
"url_check": 289.032,
"total": 2423.814
},
"counts": {
"classes": 4,
"category_videos": 36,
"detail_videos": 1,
"episodes": 2
},
"samples": {
"tid": "guoman",
"vod_id": "19885",
"flag": "高清",
"play_id": "/play/19885-1-1/"
},
"player": {
"parse": 0,
"url": "https://vip.dytt-tvs.com/20260721/29092_2ad36b66/index.m3u8",
"valid": true,
"reachable": true,
"status_code": 200,
"final_url": "https://cnvod.jimxtc.com/20260721/29092_2ad36b66/index.m3u8",
"reason": null
}
},
{
"spider": "橘子TV",
"file": "橘子TV.txt",
"success": true,
"failed_stage": null,
"error": null,
"traceback": null,
"timings_ms": {
"module_load": 4.828,
"init": 533.953,
"home": 434.58,
"category": 342.919,
"detail": 371.811,
"player": 1229.919,
"url_check": 1007.472,
"total": 3926.254
},
"counts": {
"classes": 8,
"category_videos": 18,
"detail_videos": 1,
"episodes": 1
},
"samples": {
"tid": "50",
"vod_id": "434999",
"flag": "一起看APP",
"play_id": "26505151"
},
"player": {
"parse": 0,
"url": "https://usaydd.zvoz3tsd.com/m3u87/share/8623435/8818929/20260804/102945/1080/index.m3u8?sign=8637f0a802614d6e94a47059477ae67e&t=1786162614",
"valid": true,
"reachable": true,
"status_code": 200,
"final_url": "https://usaydd.zvoz3tsd.com/m3u87/share/8623435/8818929/20260804/102945/1080/index.m3u8?sign=8637f0a802614d6e94a47059477ae67e&t=1786162614",
"reason": null
}
},
{
"spider": "橘汁",
"file": "橘汁.txt",
"success": true,
"failed_stage": null,
"error": null,
"traceback": null,
"timings_ms": {
"module_load": 6.734,
"init": 317.046,
"home": 585.266,
"category": 206.887,
"detail": 145.154,
"player": 343.022,
"url_check": 1039.357,
"total": 2644.068
},
"counts": {
"classes": 7,
"category_videos": 21,
"detail_videos": 1,
"episodes": 2
},
"samples": {
"tid": "20",
"vod_id": "125592",
"flag": "神话蓝光",
"play_id": "eyJ2b2RQbGF5RnJvbSI6ICJxc3ZpcCIsICJwbGF5VXJsIjogInFzdmlwLXpWdndVX214Nnd3eFJ2aXNuem5VeWFqMDJqRlNwNGdpbnVXU0NLZHdoci1FdGlGc0ZYVmlhc1lRQ1hjWVVCZUw3MWNsNERpNHdXbThOUGZSZHZNelF2eElUaGxxQkdxaDhfNF90Y21adVhWYkowQlU2V0NPVnZXSVdiel84c3RoVkl4NVEwSEwyYUJHOGVBNFVvcUxRdyJ9"
},
"player": {
"parse": 0,
"url": "https://hxx2026.bbroot.com/data/telegram/2026-08-07/200378340_1c219d81.m3u8?verify=1786162613-As%2BxYiYNrL0uaZauFawGdqN48vY0HnPNKU7XKOvCLPA%3D",
"valid": true,
"reachable": true,
"status_code": 200,
"final_url": "https://hxx2026.bbroot.com/data/telegram/2026-08-07/200378340_1c219d81.m3u8?verify=1786162613-As%2BxYiYNrL0uaZauFawGdqN48vY0HnPNKU7XKOvCLPA%3D",
"reason": null
}
},
{
"spider": "次元城",
"file": "次元城.txt",
"success": false,
"failed_stage": "category",
"error": "分类视频列表为空",
"traceback": null,
"timings_ms": {
"module_load": 6.936,
"init": 0.001,
"home": 246.943,
"category": 280.026,
"detail": 0.0,
"player": 0.0,
"url_check": 0.0,
"total": 755.198
},
"counts": {
"classes": 2,
"category_videos": 0,
"detail_videos": 0,
"episodes": 0
},
"samples": {
"tid": "21",
"vod_id": null,
"flag": null,
"play_id": null
},
"player": {
"parse": null,
"url": "",
"valid": false,
"reachable": null,
"status_code": null,
"final_url": "",
"reason": null
}
},
{
"spider": "欧歌",
"file": "欧歌.txt",
"success": true,
"failed_stage": null,
"error": null,
"traceback": null,
"timings_ms": {
"module_load": 9.937,
"init": 0.005,
"home": 0.001,
"category": 455.934,
"detail": 191.813,
"player": 0.007,
"url_check": 951.381,
"total": 1609.603
},
"counts": {
"classes": 6,
"category_videos": 72,
"detail_videos": 1,
"episodes": 2
},
"samples": {
"tid": "1",
"vod_id": "32379",
"flag": "百度",
"play_id": "https://pan.baidu.com/s/1UkMTNtCshINyqHq5AK-0QQ?pwd=8888"
},
"player": {
"parse": 0,
"url": "https://pan.baidu.com/s/1UkMTNtCshINyqHq5AK-0QQ?pwd=8888",
"valid": true,
"reachable": true,
"status_code": 200,
"final_url": "https://pan.baidu.com/share/init?surl=UkMTNtCshINyqHq5AK-0QQ&pwd=8888",
"reason": null
}
},
{
"spider": "毒蛇",
"file": "毒蛇.txt",
"success": true,
"failed_stage": null,
"error": null,
"traceback": null,
"timings_ms": {
"module_load": 5.265,
"init": 0.002,
"home": 0.001,
"category": 747.906,
"detail": 236.229,
"player": 287.002,
"url_check": 1190.858,
"total": 2467.928
},
"counts": {
"classes": 5,
"category_videos": 18,
"detail_videos": 1,
"episodes": 2
},
"samples": {
"tid": "1",
"vod_id": "336972",
"flag": "FF线路",
"play_id": "336972-4-2098039"
},
"player": {
"parse": 0,
"url": "https://vip.ffzy-play9.com/20260801/46848_66a18289/index.m3u8",
"valid": true,
"reachable": true,
"status_code": 200,
"final_url": "https://vip.ffzy-play9.com/20260801/46848_66a18289/index.m3u8",
"reason": null
}
},
{
"spider": "沐辞4K",
"file": "沐辞4K.txt",
"success": false,
"failed_stage": "home",
"error": "分类列表为空",
"traceback": null,
"timings_ms": {
"module_load": 10.337,
"init": 102.432,
"home": 98.218,
"category": 0.0,
"detail": 0.0,
"player": 0.0,
"url_check": 0.0,
"total": 211.23
},
"counts": {
"classes": 0,
"category_videos": 0,
"detail_videos": 0,
"episodes": 0
},
"samples": {
"tid": null,
"vod_id": null,
"flag": null,
"play_id": null
},
"player": {
"parse": null,
"url": "",
"valid": false,
"reachable": null,
"status_code": null,
"final_url": "",
"reason": null
}
},
{
"spider": "河马短剧",
"file": "河马短剧.txt",
"success": true,
"failed_stage": null,
"error": null,
"traceback": null,
"timings_ms": {
"module_load": 4.225,
"init": 0.0,
"home": 337.53,
"category": 351.012,
"detail": 447.545,
"player": 215.21,
"url_check": 71.591,
"total": 1428.253
},
"counts": {
"classes": 8,
"category_videos": 18,
"detail_videos": 1,
"episodes": 1
},
"samples": {
"tid": "65",
"vod_id": "41000254353",
"flag": "河马剧场",
"play_id": "41000254353@614683599"
},
"player": {
"parse": 0,
"url": "https://mfvideo.cbread.cn/219a68866bb92ac3ab1c0a487ff0b5ce/6a77fb40/99/3x5/35x3/353x4/35345200014/614683599_1/614683599.720p.wzh26506V2.mp4",
"valid": true,
"reachable": true,
"status_code": 200,
"final_url": "https://mfvideo.cbread.cn/219a68866bb92ac3ab1c0a487ff0b5ce/6a77fb40/99/3x5/35x3/353x4/35345200014/614683599_1/614683599.720p.wzh26506V2.mp4",
"reason": null
}
},
{
"spider": "泥视频",
"file": "泥视频.txt",
"success": true,
"failed_stage": null,
"error": null,
"traceback": null,
"timings_ms": {
"module_load": 10.74,
"init": 0.001,
"home": 0.001,
"category": 448.014,
"detail": 651.799,
"player": 1317.852,
"url_check": 273.421,
"total": 2702.389
},
"counts": {
"classes": 6,
"category_videos": 72,
"detail_videos": 1,
"episodes": 2
},
"samples": {
"tid": "1",
"vod_id": "125695",
"flag": "自营1线",
"play_id": "125695-1-1"
},
"player": {
"parse": 0,
"url": "https://y6fb.vhmzy.com/videos/202608/07/6a75c0062f546fadf00e5ac1/a98e8e/index.m3u8",
"valid": true,
"reachable": true,
"status_code": 200,
"final_url": "https://y6fb.vhmzy.com/videos/202608/07/6a75c0062f546fadf00e5ac1/a98e8e/index.m3u8",
"reason": null
}
},
{
"spider": "海纳TV",
"file": "海纳TV.txt",
"success": false,
"failed_stage": "category",
"error": "分类视频列表为空",
"traceback": null,
"timings_ms": {
"module_load": 5.634,
"init": 0.001,
"home": 10018.92,
"category": 10019.008,
"detail": 0.0,
"player": 0.0,
"url_check": 0.0,
"total": 30061.153
},
"counts": {
"classes": 4,
"category_videos": 0,
"detail_videos": 0,
"episodes": 0
},
"samples": {
"tid": "3",
"vod_id": null,
"flag": null,
"play_id": null
},
"player": {
"parse": null,
"url": "",
"valid": false,
"reachable": null,
"status_code": null,
"final_url": "",
"reason": null
}
},
{
"spider": "清沅4K",
"file": "清沅4K.txt",
"success": false,
"failed_stage": "home",
"error": "分类列表为空",
"traceback": null,
"timings_ms": {
"module_load": 9.111,
"init": 224.287,
"home": 247.499,
"category": 0.0,
"detail": 0.0,
"player": 0.0,
"url_check": 0.0,
"total": 481.233
},
"counts": {
"classes": 0,
"category_videos": 0,
"detail_videos": 0,
"episodes": 0
},
"samples": {
"tid": null,
"vod_id": null,
"flag": null,
"play_id": null
},
"player": {
"parse": null,
"url": "",
"valid": false,
"reachable": null,
"status_code": null,
"final_url": "",
"reason": null
}
},
{
"spider": "滴答影视",
"file": "滴答影视.txt",
"success": true,
"failed_stage": null,
"error": null,
"traceback": null,
"timings_ms": {
"module_load": 4.787,
"init": 0.001,
"home": 0.001,
"category": 414.105,
"detail": 555.773,
"player": 0.004,
"url_check": 2054.931,
"total": 3030.728
},
"counts": {
"classes": 5,
"category_videos": 48,
"detail_videos": 1,
"episodes": 2
},
"samples": {
"tid": "1",
"vod_id": "3638",
"flag": "百度",
"play_id": "https://pan.baidu.com/s/1GE6bGuHNSiMGCIf0wK-lDA?pwd=j3fc"
},
"player": {
"parse": 0,
"url": "https://pan.baidu.com/s/1GE6bGuHNSiMGCIf0wK-lDA?pwd=j3fc",
"valid": true,
"reachable": true,
"status_code": 200,
"final_url": "https://pan.baidu.com/share/init?surl=GE6bGuHNSiMGCIf0wK-lDA&pwd=j3fc",
"reason": null
}
},
{
"spider": "潮流APP",
"file": "潮流APP.txt",
"success": true,
"failed_stage": null,
"error": null,
"traceback": null,
"timings_ms": {
"module_load": 4.845,
"init": 0.002,
"home": 87.567,
"category": 106.755,
"detail": 135.26,
"player": 287.429,
"url_check": 95.256,
"total": 717.6
},
"counts": {
"classes": 10,
"category_videos": 12,
"detail_videos": 1,
"episodes": 2
},
"samples": {
"tid": "10",
"vod_id": "75852",
"flag": "线路二 (点击换线)",
"play_id": "75852@@0@@0"
},
"player": {
"parse": 0,
"url": "http://43.248.96.62:9090/nby/m3u8/getM3u8?name=jx.91by.top&time=1786162614640&url=NBY-c6d046002ed1d767bee10e93ee7f1ff8.m3u8",
"valid": true,
"reachable": true,
"status_code": 200,
"final_url": "http://43.248.96.62:9090/nby/m3u8/getM3u8?name=jx.91by.top&time=1786162614640&url=NBY-c6d046002ed1d767bee10e93ee7f1ff8.m3u8",
"reason": null
}
},
{
"spider": "灯泡影视",
"file": "灯泡影视.txt",
"success": true,
"failed_stage": null,
"error": null,
"traceback": null,
"timings_ms": {
"module_load": 4.518,
"init": 0.001,
"home": 0.001,
"category": 1592.675,
"detail": 1516.267,
"player": 0.005,
"url_check": 550.332,
"total": 3664.408
},
"counts": {
"classes": 4,
"category_videos": 98,
"detail_videos": 1,
"episodes": 2
},
"samples": {
"tid": "",
"vod_id": "7932",
"flag": "百度",
"play_id": "push://https://pan.baidu.com/s/1Lc37qEn__n4rPbFlttjBtg?pwd=a85n"
},
"player": {
"parse": 0,
"url": "https://pan.baidu.com/s/1Lc37qEn__n4rPbFlttjBtg?pwd=a85n",
"valid": true,
"reachable": true,
"status_code": 200,
"final_url": "https://pan.baidu.com/s/1Lc37qEn__n4rPbFlttjBtg?pwd=a85n",
"reason": null
}
},
{
"spider": "热播之家",
"file": "热播之家.txt",
"success": true,
"failed_stage": null,
"error": null,
"traceback": null,
"timings_ms": {
"module_load": 6.779,
"init": 0.001,
"home": 15017.563,
"category": 213.355,
"detail": 244.128,
"player": 239.139,
"url_check": 151.032,
"total": 15872.726
},
"counts": {
"classes": 5,
"category_videos": 12,
"detail_videos": 1,
"episodes": 2
},
"samples": {
"tid": "1",
"vod_id": "3638",
"flag": "UC网盘",
"play_id": "/play/3638-3-1.html"
},
"player": {
"parse": 0,
"url": "https://drive.uc.cn/s/0682ae9691dc4",
"valid": true,
"reachable": true,
"status_code": 200,
"final_url": "https://drive.uc.cn/s/0682ae9691dc4",
"reason": null
}
},
{
"spider": "爱壹帆",
"file": "爱壹帆.txt",
"success": true,
"failed_stage": null,
"error": null,
"traceback": null,
"timings_ms": {
"module_load": 6.789,
"init": 0.001,
"home": 0.001,
"category": 1277.469,
"detail": 1312.92,
"player": 726.999,
"url_check": 180.823,
"total": 3505.896
},
"counts": {
"classes": 4,
"category_videos": 72,
"detail_videos": 1,
"episodes": 2
},
"samples": {
"tid": "1",
"vod_id": "125695",
"flag": "自营1线",
"play_id": "125695-1-1"
},
"player": {
"parse": 0,
"url": "https://y6fb.vhmzy.com/videos/202608/07/6a75c0062f546fadf00e5ac1/a98e8e/index.m3u8",
"valid": true,
"reachable": true,
"status_code": 200,
"final_url": "https://y6fb.vhmzy.com/videos/202608/07/6a75c0062f546fadf00e5ac1/a98e8e/index.m3u8",
"reason": null
}
},
{
"spider": "爱奇艺",
"file": "爱奇艺.txt",
"success": true,
"failed_stage": null,
"error": null,
"traceback": null,
"timings_ms": {
"module_load": 19.121,
"init": 0.03,
"home": 3889.663,
"category": 535.296,
"detail": 100.352,
"player": 0.001,
"url_check": 86.065,
"total": 4631.77
},
"counts": {
"classes": 11,
"category_videos": 60,
"detail_videos": 1,
"episodes": 1
},
"samples": {
"tid": "pcw:1",
"vod_id": "pcw:1$3321467966064200",
"flag": "爱奇艺",
"play_id": "http://www.iqiyi.com/v_whvucs7nz8.html"
},
"player": {
"parse": 1,
"url": "http://www.iqiyi.com/v_whvucs7nz8.html",
"valid": true,
"reachable": true,
"status_code": 200,
"final_url": "https://www.iqiyi.com/v_whvucs7nz8.html",
"reason": null
}
},
{
"spider": "片库",
"file": "片库.txt",
"success": true,
"failed_stage": null,
"error": null,
"traceback": null,
"timings_ms": {
"module_load": 12.297,
"init": 0.178,
"home": 0.003,
"category": 1362.733,
"detail": 0.002,
"player": 0.001,
"url_check": 150.749,
"total": 1526.767
},
"counts": {
"classes": 7,
"category_videos": 20,
"detail_videos": 1,
"episodes": 1
},
"samples": {
"tid": "genre",
"vod_id": "msearch:movie-969681",
"flag": "Test",
"play_id": "Test"
},
"player": {
"parse": 0,
"url": "https://v.qq.com/",
"valid": true,
"reachable": true,
"status_code": 200,
"final_url": "https://v.qq.com/",
"reason": null
}
},
{
"spider": "独播库",
"file": "独播库.txt",
"success": true,
"failed_stage": null,
"error": null,
"traceback": null,
"timings_ms": {
"module_load": 6.966,
"init": 0.001,
"home": 0.001,
"category": 656.688,
"detail": 362.987,
"player": 320.965,
"url_check": 216.611,
"total": 1565.114
},
"counts": {
"classes": 6,
"category_videos": 48,
"detail_videos": 1,
"episodes": 1
},
"samples": {
"tid": "index",
"vod_id": "148695",
"flag": "独播库",
"play_id": "148695-1-1"
},
"player": {
"parse": 0,
"url": "https://vid.dbokutv.com/20260801/ppotb62-S71lT2yliZApDBSvkYzBsrmD3fpCJ4nBsfsRsGlR7XgBNDpRMqjC34jC352DKGvDp0sBcrmD0/chunklist.m3u8",
"valid": true,
"reachable": true,
"status_code": 200,
"final_url": "https://vid.dbokutv.com/20260801/ppotb62-S71lT2yliZApDBSvkYzBsrmD3fpCJ4nBsfsRsGlR7XgBNDpRMqjC34jC352DKGvDp0sBcrmD0/chunklist.m3u8",
"reason": null
}
},
{
"spider": "猫猫4K",
"file": "猫猫4K.txt",
"success": true,
"failed_stage": null,
"error": null,
"traceback": null,
"timings_ms": {
"module_load": 10.545,
"init": 140.3,
"home": 347.246,
"category": 149.258,
"detail": 163.763,
"player": 158.052,
"url_check": 924.191,
"total": 3032.655
},
"counts": {
"classes": 5,
"category_videos": 20,
"detail_videos": 1,
"episodes": 2
},
"samples": {
"tid": "1",
"vod_id": "199540",
"flag": "火猫备用R",
"play_id": "https://svip.ryplay14.com/20260807/17916_88434be1/index.m3u8@@@rym3u8"
},
"player": {
"parse": 0,
"url": "https://svip.ryplay14.com/20260807/17916_88434be1/index.m3u8",
"valid": true,
"reachable": true,
"status_code": 200,
"final_url": "https://svip.ryplay14.com/20260807/17916_88434be1/index.m3u8",
"reason": null
}
},
{
"spider": "王子4K",
"file": "王子4K.txt",
"success": true,
"failed_stage": null,
"error": null,
"traceback": null,
"timings_ms": {
"module_load": 6.894,
"init": 0.002,
"home": 899.295,
"category": 534.817,
"detail": 7603.263,
"player": 0.014,
"url_check": 865.189,
"total": 9910.686
},
"counts": {
"classes": 5,
"category_videos": 30,
"detail_videos": 1,
"episodes": 2
},
"samples": {
"tid": "1",
"vod_id": "415390",
"flag": "RY线路",
"play_id": "RY线路@@direct@@,https://svip.ryplay14.com/20260807/17923_3ab94457/index.m3u8,token+,1,0"
},
"player": {
"parse": 0,
"url": "https://svip.ryplay14.com/20260807/17923_3ab94457/index.m3u8",
"valid": true,
"reachable": true,
"status_code": 200,
"final_url": "https://svip.ryplay14.com/20260807/17923_3ab94457/index.m3u8",
"reason": null
}
},
{
"spider": "玩偶哥哥",
"file": "玩偶哥哥.txt",
"success": true,
"failed_stage": null,
"error": null,
"traceback": null,
"timings_ms": {
"module_load": 14.25,
"init": 0.005,
"home": 0.001,
"category": 595.838,
"detail": 417.017,
"player": 0.008,
"url_check": 1180.815,
"total": 2208.776
},
"counts": {
"classes": 8,
"category_videos": 70,
"detail_videos": 1,
"episodes": 2
},
"samples": {
"tid": "44",
"vod_id": "129651",
"flag": "百度#玩偶哥哥",
"play_id": "https://pan.baidu.com/s/18uSZphPb1edevJCxv5oNJQ?pwd=h8h8"
},
"player": {
"parse": 0,
"url": "https://pan.baidu.com/s/18uSZphPb1edevJCxv5oNJQ?pwd=h8h8",
"valid": true,
"reachable": true,
"status_code": 200,
"final_url": "https://pan.baidu.com/share/init?surl=8uSZphPb1edevJCxv5oNJQ&pwd=h8h8",
"reason": null
}
},
{
"spider": "玩偶聚合",
"file": "玩偶聚合.txt",
"success": true,
"failed_stage": null,
"error": null,
"traceback": null,
"timings_ms": {
"module_load": 84.047,
"init": 0.01,
"home": 4.802,
"category": 1351.959,
"detail": 436.244,
"player": 0.003,
"url_check": 2542.539,
"total": 5555.316
},
"counts": {
"classes": 11,
"category_videos": 72,
"detail_videos": 1,
"episodes": 2
},
"samples": {
"tid": "site_duoduo",
"vod_id": "site:duoduo:/index.php/vod/detail/id/9628.html",
"flag": "百度#多多",
"play_id": "https://pan.baidu.com/s/1C2akm1U8xz_uAX-1pjsCrQ?pwd=9527"
},
"player": {
"parse": 0,
"url": "https://pan.baidu.com/s/1C2akm1U8xz_uAX-1pjsCrQ?pwd=9527",
"valid": true,
"reachable": true,
"status_code": 200,
"final_url": "https://pan.baidu.com/share/init?surl=C2akm1U8xz_uAX-1pjsCrQ&pwd=9527",
"reason": null
}
},
{
"spider": "瓜子",
"file": "瓜子.txt",
"success": true,
"failed_stage": null,
"error": null,
"traceback": null,
"timings_ms": {
"module_load": 90.559,
"init": 0.002,
"home": 0.024,
"category": 804.008,
"detail": 735.484,
"player": 370.65,
"url_check": 641.946,
"total": 2645.84
},
"counts": {
"classes": 5,
"category_videos": 30,
"detail_videos": 1,
"episodes": 1
},
"samples": {
"tid": "1",
"vod_id": "146684",
"flag": "1080",
"play_id": "vod_d_id=146684&vurl_id=4255536&domain_type=8&resolution=1080&type=play"
},
"player": {
"parse": 0,
"url": "https://app.wanglaoshi.xn--fiqs8s/hls/index.m3u8",
"valid": true,
"reachable": true,
"status_code": 200,
"final_url": "https://app.wanglaoshi.xn--fiqs8s/hls/index.m3u8",
"reason": null
}
},
{
"spider": "甜圈漫剧",
"file": "甜圈漫剧.txt",
"success": false,
"failed_stage": "category",
"error": "分类视频列表为空",
"traceback": null,
"timings_ms": {
"module_load": 6.37,
"init": 85.607,
"home": 0.013,
"category": 648.897,
"detail": 0.0,
"player": 0.0,
"url_check": 0.0,
"total": 1058.098
},
"counts": {
"classes": 67,
"category_videos": 0,
"detail_videos": 0,
"episodes": 0
},
"samples": {
"tid": "热剧榜",
"vod_id": null,
"flag": null,
"play_id": null
},
"player": {
"parse": null,
"url": "",
"valid": false,
"reachable": null,
"status_code": null,
"final_url": "",
"reason": null
}
},
{
"spider": "电影人生",
"file": "电影人生.txt",
"success": true,
"failed_stage": null,
"error": null,
"traceback": null,
"timings_ms": {
"module_load": 10.405,
"init": 0.003,
"home": 0.001,
"category": 2451.518,
"detail": 1753.895,
"player": 808.781,
"url_check": 1967.478,
"total": 6992.637
},
"counts": {
"classes": 5,
"category_videos": 24,
"detail_videos": 1,
"episodes": 1
},
"samples": {
"tid": "dianying",
"vod_id": "movie/6a76a824a8cfb656c1d29ba7-4385.html",
"flag": "mtm3u8",
"play_id": "{\"title\":\"第01集\",\"origin\":\"mtm3u8\",\"page\":\"https://dyvip2.cc/movie/6a76a824a8cfb656c1d29ba7/4385.html?origin=mtm3u8&p=0\",\"vodName\":\"破碎的面包第二季\",\"pic\":\"https://dyvip2.cc/img/id/6a76a824a8cfb656c1d29ba7.jpg\"}"
},
"player": {
"parse": 0,
"url": "https://vodcnd16.uvjtih.cn/20260807/M6Q9yRee/index.m3u8",
"valid": true,
"reachable": true,
"status_code": 200,
"final_url": "https://vodcnd16.uvjtih.cn/20260807/M6Q9yRee/index.m3u8",
"reason": null
}
},
{
"spider": "电影天堂",
"file": "电影天堂.txt",
"success": true,
"failed_stage": null,
"error": null,
"traceback": null,
"timings_ms": {
"module_load": 6.393,
"init": 178.6,
"home": 542.521,
"category": 160.056,
"detail": 109.324,
"player": 171.059,
"url_check": 51.747,
"total": 1220.698
},
"counts": {
"classes": 9,
"category_videos": 21,
"detail_videos": 1,
"episodes": 2
},
"samples": {
"tid": "2",
"vod_id": "15783",
"flag": "超级无敌4K",
"play_id": "eyJ2b2RQbGF5RnJvbSI6ICJLc3ZpZGVvIiwgInBsYXlVcmwiOiAiS3N2aWRlby1hZWQ0NjNmYTc2ZmZiODM0ZjFhYTMzODE0ZjIzMGY1MDFmOWVkZTIxMThkZGE3MDQyMjBkMDkyM2ZkM2M2NDcxMmY5NmU0NmM1ZDUxZmQ3YmIyOTJiODZjYzY1ZTllZjZkYWI0NzFlMDQwODBiMzQ0M2MwMDg4ZTIxMDY3ZGQ4MGI3MjY1ZWE0M2M1ZDliZmU5MGRjM2E5MWZmMzc5ZjRmNjNkOGZkYTY0MGVhNGE3Y2NkYWMyMDlkOTlmNjNmMDMyOTM0YmE5M2JiMDE0ZjliNjNiNDhhOWY0MGQyZjg2NzY2YTFkOGM0N2FiMzljYjc2MDBhNDkyMjUxYjNhZDVmZDI4NzMwZDRiZDU4Y2MxOGViZGZhNzY3ZGM5NWEzNzIifQ=="
},
"player": {
"parse": 0,
"url": "https://onvideo-safety.ssscdn.com/ksc2/-awdm22lrEZQ5tcE67T_GCg5KLo5N1F8cTCUwpAPf4FHyTAv8Wi_9C0JTCe-uuvwn5lhJSjglvIRgTSfZaxD2tyE8TrHJMbNa0t9P_7LEKO1Uvr61OyCF34aEv21bUXdOM0bG0IEilvFHVo5_rbLQ1-UYr1Bip_0-F3fMILU2MVAcjfGjUJtUPrR9dewoepi.m3u8?pkey=AAWWKovHBVOIYK3CiyNHoBTAoBOWr4mWmdJp2fxxQjhGx2qFRpRs99DF0F1ym33JwW1vSFyCHY5tGih-msT7K3opuDzUH5ceWdrXcxjnaOWQwV6bOby2FktdmpnhjLZ43rU",
"valid": true,
"reachable": true,
"status_code": 200,
"final_url": "https://onvideo-safety.ssscdn.com/ksc2/-awdm22lrEZQ5tcE67T_GCg5KLo5N1F8cTCUwpAPf4FHyTAv8Wi_9C0JTCe-uuvwn5lhJSjglvIRgTSfZaxD2tyE8TrHJMbNa0t9P_7LEKO1Uvr61OyCF34aEv21bUXdOM0bG0IEilvFHVo5_rbLQ1-UYr1Bip_0-F3fMILU2MVAcjfGjUJtUPrR9dewoepi.m3u8?pkey=AAWWKovHBVOIYK3CiyNHoBTAoBOWr4mWmdJp2fxxQjhGx2qFRpRs99DF0F1ym33JwW1vSFyCHY5tGih-msT7K3opuDzUH5ceWdrXcxjnaOWQwV6bOby2FktdmpnhjLZ43rU",
"reason": null
}
},
{
"spider": "百度短剧",
"file": "百度短剧.txt",
"success": true,
"failed_stage": null,
"error": null,
"traceback": null,
"timings_ms": {
"module_load": 7.624,
"init": 0.001,
"home": 465.941,
"category": 253.931,
"detail": 844.694,
"player": 237.118,
"url_check": 39.9,
"total": 1849.813
},
"counts": {
"classes": 29,
"category_videos": 9,
"detail_videos": 1,
"episodes": 1
},
"samples": {
"tid": "3",
"vod_id": "10284595040762396431",
"flag": "百度短剧[短]",
"play_id": "4723147730512611191|||10284595040762396431"
},
"player": {
"parse": 0,
"url": "http://vd3.bdstatic.com/mda-rgu31fx13xnschwc/1080p/mv_cae264_backtrack_1080p_normal/1753858859061604699/mda-rgu31fx13xnschwc.mp4?v_from_s=haokan-ui-video-hna",
"valid": true,
"reachable": true,
"status_code": 200,
"final_url": "http://vd3.bdstatic.com/mda-rgu31fx13xnschwc/1080p/mv_cae264_backtrack_1080p_normal/1753858859061604699/mda-rgu31fx13xnschwc.mp4?v_from_s=haokan-ui-video-hna",
"reason": null
}
},
{
"spider": "盘Ta",
"file": "盘Ta.txt",
"success": false,
"failed_stage": "unexpected",
"error": "('Connection aborted.', ConnectionResetError(104, 'Connection reset by peer'))",
"traceback": "Traceback (most recent call last):\n File \"/home/harold/workspace/atv-spiders/py/.venv/lib/python3.14/site-packages/urllib3/connectionpool.py\", line 787, in urlopen\n response = self._make_request(\n conn,\n ...<10 lines>...\n **response_kw,\n )\n File \"/home/harold/workspace/atv-spiders/py/.venv/lib/python3.14/site-packages/urllib3/connectionpool.py\", line 488, in _make_request\n raise new_e\n File \"/home/harold/workspace/atv-spiders/py/.venv/lib/python3.14/site-packages/urllib3/connectionpool.py\", line 464, in _make_request\n self._validate_conn(conn)\n ~~~~~~~~~~~~~~~~~~~^^^^^^\n File \"/home/harold/workspace/atv-spiders/py/.venv/lib/python3.14/site-packages/urllib3/connectionpool.py\", line 1093, in _validate_conn\n conn.connect()\n ~~~~~~~~~~~~^^\n File \"/home/harold/workspace/atv-spiders/py/.venv/lib/python3.14/site-packages/urllib3/connection.py\", line 796, in connect\n sock_and_verified = _ssl_wrap_socket_and_match_hostname(\n sock=sock,\n ...<14 lines>...\n assert_fingerprint=self.assert_fingerprint,\n )\nConnectionResetError: [Errno 104] Connection reset by peer\n\nDuring handling of the above exception, another exception occurred:\n\nTraceback (most recent call last):\n File \"/home/harold/workspace/atv-spiders/py/.venv/lib/python3.14/site-packages/requests/adapters.py\", line 645, in send\n resp = conn.urlopen(\n method=request.method,\n ...<9 lines>...\n chunked=chunked,\n )\n File \"/home/harold/workspace/atv-spiders/py/.venv/lib/python3.14/site-packages/urllib3/connectionpool.py\", line 841, in urlopen\n retries = retries.increment(\n method, url, error=new_e, _pool=self, _stacktrace=sys.exc_info()[2]\n )\n File \"/home/harold/workspace/atv-spiders/py/.venv/lib/python3.14/site-packages/urllib3/util/retry.py\", line 490, in increment\n raise reraise(type(error), error, _stacktrace)\n ~~~~~~~^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/home/harold/workspace/atv-spiders/py/.venv/lib/python3.14/site-packages/urllib3/util/util.py\", line 38, in reraise\n raise value.with_traceback(tb)\n File \"/home/harold/workspace/atv-spiders/py/.venv/lib/python3.14/site-packages/urllib3/connectionpool.py\", line 787, in urlopen\n response = self._make_request(\n conn,\n ...<10 lines>...\n **response_kw,\n )\nurllib3.exceptions.ProtocolError: ('Connection aborted.', ConnectionResetError(104, 'Connection reset by peer'))\n\nDuring handling of the above exception, another exception occurred:\n\nTraceback (most recent call last):\n File \"/home/harold/workspace/atv-spiders/py/validate_spiders.py\", line 756, in validate_spider_file\n home_result = _run_timed(result[\"timings_ms\"], \"home\", spider.homeContent, clock, False)\n File \"/home/harold/workspace/atv-spiders/py/validate_spiders.py\", line 318, in _run_timed\n return func(*args, **kwargs)\n File \"/home/harold/workspace/tvbox-resources/py/盘Ta.txt\", line 230, in homeContent\n File \"/home/harold/workspace/tvbox-resources/py/盘Ta.txt\", line 70, in _request_html\n File \"/home/harold/workspace/atv-spiders/py/base/spider.py\", line 145, in fetch\n rsp = requests.get(url, params=params, cookies=cookies, headers=headers, timeout=timeout, verify=verify,\n stream=stream, allow_redirects=allow_redirects)\nrequests.exceptions.ConnectionError: ('Connection aborted.', ConnectionResetError(104, 'Connection reset by peer'))\n",
"timings_ms": {
"module_load": 6.204,
"init": 0.002,
"home": 3733.928,
"category": 0.0,
"detail": 0.0,
"player": 0.0,
"url_check": 0.0,
"total": 3743.281
},
"counts": {
"classes": 0,
"category_videos": 0,
"detail_videos": 0,
"episodes": 0
},
"samples": {
"tid": null,
"vod_id": null,
"flag": null,
"play_id": null
},
"player": {
"parse": null,
"url": "",
"valid": false,
"reachable": null,
"status_code": null,
"final_url": "",
"reason": null
}
},
{
"spider": "盘聚",
"file": "盘聚.txt",
"success": true,
"failed_stage": null,
"error": null,
"traceback": null,
"timings_ms": {
"module_load": 5.956,
"init": 0.001,
"home": 0.001,
"category": 267.989,
"detail": 231.911,
"player": 287.903,
"url_check": 1655.022,
"total": 2449.837
},
"counts": {
"classes": 4,
"category_videos": 20,
"detail_videos": 1,
"episodes": 2
},
"samples": {
"tid": "/",
"vod_id": "135386",
"flag": "百度1",
"play_id": "push://https://www.seedhub.cc/link_start/?redirect_to=pan_id_738247&movie_title=【寒战1994】【4K 1080P】【中字】流媒体正式版 今天"
},
"player": {
"parse": 0,
"url": "https://pan.baidu.com/s/1H19VWwii51b2s0KWJiadFg?pwd=mezd",
"valid": true,
"reachable": true,
"status_code": 200,
"final_url": "https://pan.baidu.com/share/init?surl=H19VWwii51b2s0KWJiadFg&pwd=mezd",
"reason": null
}
},
{
"spider": "盘链",
"file": "盘链.txt",
"success": true,
"failed_stage": null,
"error": null,
"traceback": null,
"timings_ms": {
"module_load": 8.244,
"init": 0.109,
"home": 0.001,
"category": 1523.316,
"detail": 649.543,
"player": 2030.259,
"url_check": 432.07,
"total": 4644.839
},
"counts": {
"classes": 5,
"category_videos": 30,
"detail_videos": 1,
"episodes": 2
},
"samples": {
"tid": "0",
"vod_id": "-72526",
"flag": "百度",
"play_id": "push://https://www.xn--vzy265d.cc/api/go.php?t=Q6dQ0ZHo_jqH6cf25UUVepjgcq5ci2M2OyLvYEk7cppd6L-MCcOuR7AhW44D-KN96veD8t4-DFu46UOixJ8DcCXuokamubEto7urRGNaJs69qfP7gI-t_OMjLai1uwgu4VI38vRB-m_EijWD5A_0xVEfWYjfwLj-8CS4s-PWdCHVqAg3-xaxh1Z5vM75emdkhfr2EdtLLANQYt_JHyhhvQgUw9TGKvqeYdVVeyd0Pi8"
},
"player": {
"parse": 0,
"url": "https://pan.baidu.com/wap/init?surl=pZ3mLd2eeEdoYBBYWs04Dg&pwd=fqbk",
"valid": true,
"reachable": true,
"status_code": 200,
"final_url": "https://pan.baidu.com/wap/init?surl=pZ3mLd2eeEdoYBBYWs04Dg&pwd=fqbk",
"reason": null
}
},
{
"spider": "短剧优选",
"file": "短剧优选.txt",
"success": true,
"failed_stage": null,
"error": null,
"traceback": null,
"timings_ms": {
"module_load": 31.149,
"init": 467.145,
"home": 425.146,
"category": 346.843,
"detail": 325.564,
"player": 0.003,
"url_check": 158.01,
"total": 1755.035
},
"counts": {
"classes": 16,
"category_videos": 20,
"detail_videos": 1,
"episodes": 2
},
"samples": {
"tid": "免费",
"vod_id": "免费@https://20.90kan.cc/?id=69927",
"flag": "夸克",
"play_id": "https://pan.quark.cn/s/cc018fd065f6"
},
"player": {
"parse": 0,
"url": "https://pan.quark.cn/s/cc018fd065f6",
"valid": true,
"reachable": true,
"status_code": 200,
"final_url": "https://pan.quark.cn/s/cc018fd065f6",
"reason": null
}
},
{
"spider": "短剧网",
"file": "短剧网.txt",
"success": true,
"failed_stage": null,
"error": null,
"traceback": null,
"timings_ms": {
"module_load": 6.548,
"init": 0.0,
"home": 0.0,
"category": 366.945,
"detail": 348.583,
"player": 0.008,
"url_check": 3708.627,
"total": 4431.302
},
"counts": {
"classes": 2,
"category_videos": 20,
"detail_videos": 1,
"episodes": 2
},
"samples": {
"tid": "1",
"vod_id": "https://sm3.cc/?id=69828",
"flag": "百度",
"play_id": "https://pan.baidu.com/s/1qItJ0SbSNyLTGZe_X8bVgQ?pwd=6666"
},
"player": {
"parse": 0,
"url": "https://pan.baidu.com/s/1qItJ0SbSNyLTGZe_X8bVgQ?pwd=6666",
"valid": true,
"reachable": true,
"status_code": 200,
"final_url": "https://pan.baidu.com/share/init?surl=qItJ0SbSNyLTGZe_X8bVgQ&pwd=6666",
"reason": null
}
},
{
"spider": "磁力熊",
"file": "磁力熊.txt",
"success": true,
"failed_stage": null,
"error": null,
"traceback": null,
"timings_ms": {
"module_load": 12.496,
"init": 0.002,
"home": 0.007,
"category": 693.927,
"detail": 579.036,
"player": 0.003,
"url_check": 0.074,
"total": 21972.187
},
"counts": {
"classes": 24,
"category_videos": 16,
"detail_videos": 1,
"episodes": 1
},
"samples": {
"tid": "tv",
"vod_id": "/drama/4732.html",
"flag": "磁力·1080P",
"play_id": "magnet:?xt=urn:btih:E6B65B578FDC90233E88C54D1E9886092C764757"
},
"player": {
"parse": 0,
"url": "magnet:?xt=urn:btih:E6B65B578FDC90233E88C54D1E9886092C764757",
"valid": true,
"reachable": null,
"status_code": null,
"final_url": "magnet:?xt=urn:btih:E6B65B578FDC90233E88C54D1E9886092C764757",
"reason": "非 HTTP 地址,按协议格式通过"
}
},
{
"spider": "糯米",
"file": "糯米.txt",
"success": false,
"failed_stage": "category",
"error": "分类视频列表为空",
"traceback": null,
"timings_ms": {
"module_load": 6.418,
"init": 0.001,
"home": 206.808,
"category": 199.806,
"detail": 0.0,
"player": 0.0,
"url_check": 0.0,
"total": 672.749
},
"counts": {
"classes": 5,
"category_videos": 0,
"detail_videos": 0,
"episodes": 0
},
"samples": {
"tid": "juji",
"vod_id": null,
"flag": null,
"play_id": null
},
"player": {
"parse": null,
"url": "",
"valid": false,
"reachable": null,
"status_code": null,
"final_url": "",
"reason": null
}
},
{
"spider": "网易云音乐",
"file": "网易云音乐.txt",
"success": false,
"failed_stage": "player",
"error": "playerContent 未返回播放地址",
"traceback": null,
"timings_ms": {
"module_load": 4.841,
"init": 0.0,
"home": 385.307,
"category": 444.514,
"detail": 0.006,
"player": 525.957,
"url_check": 0.0,
"total": 2276.807
},
"counts": {
"classes": 63,
"category_videos": 100,
"detail_videos": 1,
"episodes": 1
},
"samples": {
"tid": "/discover/toplist?id=3779629",
"vod_id": "3404238777@周旋@王以太👉MP3",
"flag": "网易云音乐",
"play_id": "3404238777"
},
"player": {
"parse": 0,
"url": "",
"valid": false,
"reachable": null,
"status_code": null,
"final_url": "",
"reason": null
}
},
{
"spider": "耐视点播",
"file": "耐视点播.txt",
"success": false,
"failed_stage": "category",
"error": "分类视频列表为空",
"traceback": null,
"timings_ms": {
"module_load": 4.844,
"init": 0.001,
"home": 0.001,
"category": 1449.675,
"detail": 0.0,
"player": 0.0,
"url_check": 0.0,
"total": 3268.641
},
"counts": {
"classes": 6,
"category_videos": 0,
"detail_videos": 0,
"episodes": 0
},
"samples": {
"tid": "2",
"vod_id": null,
"flag": null,
"play_id": null
},
"player": {
"parse": null,
"url": "",
"valid": false,
"reachable": null,
"status_code": null,
"final_url": "",
"reason": null
}
},
{
"spider": "腾讯视频",
"file": "腾讯视频.txt",
"success": true,
"failed_stage": null,
"error": null,
"traceback": null,
"timings_ms": {
"module_load": 6.132,
"init": 0.001,
"home": 130.373,
"category": 305.749,
"detail": 889.417,
"player": 0.003,
"url_check": 257.413,
"total": 1589.914
},
"counts": {
"classes": 7,
"category_videos": 12,
"detail_videos": 1,
"episodes": 1
},
"samples": {
"tid": "choice",
"vod_id": "choice$mzc00200y5rv6us",
"flag": "腾讯视频",
"play_id": "https://v.qq.com/x/cover/mzc00200y5rv6us/n41020xj34a.html"
},
"player": {
"parse": 1,
"url": "https://v.qq.com/x/cover/mzc00200y5rv6us/n41020xj34a.html",
"valid": true,
"reachable": true,
"status_code": 200,
"final_url": "https://v.qq.com/x/cover/mzc00200y5rv6us/n41020xj34a.html",
"reason": null
}
},
{
"spider": "至臻",
"file": "至臻.txt",
"success": true,
"failed_stage": null,
"error": null,
"traceback": null,
"timings_ms": {
"module_load": 9.141,
"init": 0.006,
"home": 0.001,
"category": 2170.533,
"detail": 1125.068,
"player": 0.003,
"url_check": 2140.827,
"total": 5446.286
},
"counts": {
"classes": 7,
"category_videos": 72,
"detail_videos": 1,
"episodes": 2
},
"samples": {
"tid": "26",
"vod_id": "15840",
"flag": "百度#至臻",
"play_id": "https://pan.baidu.com/s/1mWbZeJh7TMbeICubnQyadQ?pwd=2bi5"
},
"player": {
"parse": 0,
"url": "https://pan.baidu.com/s/1mWbZeJh7TMbeICubnQyadQ?pwd=2bi5",
"valid": true,
"reachable": true,
"status_code": 200,
"final_url": "https://pan.baidu.com/share/init?surl=mWbZeJh7TMbeICubnQyadQ&pwd=2bi5",
"reason": null
}
},
{
"spider": "苹果",
"file": "苹果.txt",
"success": true,
"failed_stage": null,
"error": null,
"traceback": null,
"timings_ms": {
"module_load": 5.153,
"init": 196.475,
"home": 337.517,
"category": 170.249,
"detail": 114.654,
"player": 171.336,
"url_check": 49.25,
"total": 1045.489
},
"counts": {
"classes": 9,
"category_videos": 21,
"detail_videos": 1,
"episodes": 2
},
"samples": {
"tid": "2",
"vod_id": "15783",
"flag": "超级无敌4K",
"play_id": "eyJ2b2RQbGF5RnJvbSI6ICJLc3ZpZGVvIiwgInBsYXlVcmwiOiAiS3N2aWRlby1hZWQ0NjNmYTc2ZmZiODM0ZjFhYTMzODE0ZjIzMGY1MDFmOWVkZTIxMThkZGE3MDQyMjBkMDkyM2ZkM2M2NDcxMmY5NmU0NmM1ZDUxZmQ3YmIyOTJiODZjYzY1ZTllZjZkYWI0NzFlMDQwODBiMzQ0M2MwMDg4ZTIxMDY3ZGQ4MGI3MjY1ZWE0M2M1ZDliZmU5MGRjM2E5MWZmMzc5ZjRmNjNkOGZkYTY0MGVhNGE3Y2NkYWMyMDlkOTlmNjNmMDMyOTM0YmE5M2JiMDE0ZjliNjNiNDhhOWY0MGQyZjg2NzY2YTFkOGM0N2FiMzljYjc2MDBhNDkyMjUxYjNhZDVmZDI4NzMwZDRiZDU4Y2MxOGViZGZhNzY3ZGM5NWEzNzIifQ=="
},
"player": {
"parse": 0,
"url": "https://onvideo-safety.ssscdn.com/ksc2/-awdm22lrEZQ5tcE67T_GCg5KLo5N1F8cTCUwpAPf4FHyTAv8Wi_9C0JTCe-uuvwn5lhJSjglvIRgTSfZaxD2tyE8TrHJMbNa0t9P_7LEKO1Uvr61OyCF34aEv21bUXdOM0bG0IEilvFHVo5_rbLQ1-UYr1Bip_0-F3fMILU2MVAcjfGjUJtUPrR9dewoepi.m3u8?pkey=AAWWKovHBVOIYK3CiyNHoBTAoBOWr4mWmdJp2fxxQjhGx2qFRpRs99DF0F1ym33JwW1vSFyCHY5tGih-msT7K3opuDzUH5ceWdrXcxjnaOWQwV6bOby2FktdmpnhjLZ43rU",
"valid": true,
"reachable": true,
"status_code": 200,
"final_url": "https://onvideo-safety.ssscdn.com/ksc2/-awdm22lrEZQ5tcE67T_GCg5KLo5N1F8cTCUwpAPf4FHyTAv8Wi_9C0JTCe-uuvwn5lhJSjglvIRgTSfZaxD2tyE8TrHJMbNa0t9P_7LEKO1Uvr61OyCF34aEv21bUXdOM0bG0IEilvFHVo5_rbLQ1-UYr1Bip_0-F3fMILU2MVAcjfGjUJtUPrR9dewoepi.m3u8?pkey=AAWWKovHBVOIYK3CiyNHoBTAoBOWr4mWmdJp2fxxQjhGx2qFRpRs99DF0F1ym33JwW1vSFyCHY5tGih-msT7K3opuDzUH5ceWdrXcxjnaOWQwV6bOby2FktdmpnhjLZ43rU",
"reason": null
}
},
{
"spider": "茶杯狐",
"file": "茶杯狐.txt",
"success": false,
"failed_stage": "home",
"error": "分类列表为空",
"traceback": null,
"timings_ms": {
"module_load": 5.983,
"init": 0.0,
"home": 569.713,
"category": 0.0,
"detail": 0.0,
"player": 0.0,
"url_check": 0.0,
"total": 576.378
},
"counts": {
"classes": 0,
"category_videos": 0,
"detail_videos": 0,
"episodes": 0
},
"samples": {
"tid": null,
"vod_id": null,
"flag": null,
"play_id": null
},
"player": {
"parse": null,
"url": "",
"valid": false,
"reachable": null,
"status_code": null,
"final_url": "",
"reason": null
}
},
{
"spider": "薯条",
"file": "薯条.txt",
"success": false,
"failed_stage": "unexpected",
"error": "Invalid URL '/api/v3/drama/getCategory?orderBy=type_id': No scheme supplied. Perhaps you meant https:///api/v3/drama/getCategory?orderBy=type_id?",
"traceback": "Traceback (most recent call last):\n File \"/home/harold/workspace/atv-spiders/py/validate_spiders.py\", line 756, in validate_spider_file\n home_result = _run_timed(result[\"timings_ms\"], \"home\", spider.homeContent, clock, False)\n File \"/home/harold/workspace/atv-spiders/py/validate_spiders.py\", line 318, in _run_timed\n return func(*args, **kwargs)\n File \"/home/harold/workspace/tvbox-resources/py/薯条.txt\", line 277, in homeContent\n File \"/home/harold/workspace/tvbox-resources/py/薯条.txt\", line 249, in _get_json\n File \"/home/harold/workspace/atv-spiders/py/.venv/lib/python3.14/site-packages/requests/api.py\", line 73, in get\n return request(\"get\", url, params=params, **kwargs)\nrequests.exceptions.MissingSchema: Invalid URL '/api/v3/drama/getCategory?orderBy=type_id': No scheme supplied. Perhaps you meant https:///api/v3/drama/getCategory?orderBy=type_id?\n",
"timings_ms": {
"module_load": 7.82,
"init": 15017.97,
"home": 0.34,
"category": 0.0,
"detail": 0.0,
"player": 0.0,
"url_check": 0.0,
"total": 15026.858
},
"counts": {
"classes": 0,
"category_videos": 0,
"detail_videos": 0,
"episodes": 0
},
"samples": {
"tid": null,
"vod_id": null,
"flag": null,
"play_id": null
},
"player": {
"parse": null,
"url": "",
"valid": false,
"reachable": null,
"status_code": null,
"final_url": "",
"reason": null
}
},
{
"spider": "虎斑",
"file": "虎斑.txt",
"success": false,
"failed_stage": "category",
"error": "HTTPConnectionPool(host='103.217.192.130', port=16969): Max retries exceeded with url: /index.php/vod/show/id/2/page/1.html (Caused by ConnectTimeoutError(<HTTPConnection(host='103.217.192.130', port=16969) at 0x77d60473dd00>, 'Connection to 103.217.192.130 timed out. (connect timeout=10)'))",
"traceback": null,
"timings_ms": {
"module_load": 10.006,
"init": 0.005,
"home": 0.001,
"category": 10011.038,
"detail": 0.0,
"player": 0.0,
"url_check": 0.0,
"total": 20031.571
},
"counts": {
"classes": 7,
"category_videos": 0,
"detail_videos": 0,
"episodes": 0
},
"samples": {
"tid": "2",
"vod_id": null,
"flag": null,
"play_id": null
},
"player": {
"parse": null,
"url": "",
"valid": false,
"reachable": null,
"status_code": null,
"final_url": "",
"reason": null
}
},
{
"spider": "蜗牛",
"file": "蜗牛.txt",
"success": false,
"failed_stage": "detail",
"error": "详情缺少播放源或播放列表",
"traceback": null,
"timings_ms": {
"module_load": 6.965,
"init": 306.131,
"home": 0.004,
"category": 293.523,
"detail": 316.159,
"player": 0.0,
"url_check": 0.0,
"total": 1658.082
},
"counts": {
"classes": 4,
"category_videos": 36,
"detail_videos": 1,
"episodes": 0
},
"samples": {
"tid": "2",
"vod_id": "34989",
"flag": null,
"play_id": null
},
"player": {
"parse": null,
"url": "",
"valid": false,
"reachable": null,
"status_code": null,
"final_url": "",
"reason": null
}
},
{
"spider": "蜡笔",
"file": "蜡笔.txt",
"success": true,
"failed_stage": null,
"error": null,
"traceback": null,
"timings_ms": {
"module_load": 9.885,
"init": 0.005,
"home": 0.001,
"category": 2109.19,
"detail": 653.922,
"player": 0.006,
"url_check": 956.02,
"total": 3729.808
},
"counts": {
"classes": 7,
"category_videos": 72,
"detail_videos": 1,
"episodes": 2
},
"samples": {
"tid": "29",
"vod_id": "10585",
"flag": "百度#蜡笔",
"play_id": "https://pan.baidu.com/s/1FQuKNxcryYV_-a_VY43GPw?pwd=gbpz"
},
"player": {
"parse": 0,
"url": "https://pan.baidu.com/s/1FQuKNxcryYV_-a_VY43GPw?pwd=gbpz",
"valid": true,
"reachable": true,
"status_code": 200,
"final_url": "https://pan.baidu.com/share/init?surl=FQuKNxcryYV_-a_VY43GPw&pwd=gbpz",
"reason": null
}
},
{
"spider": "蜻蜓FM",
"file": "蜻蜓FM.txt",
"success": true,
"failed_stage": null,
"error": null,
"traceback": null,
"timings_ms": {
"module_load": 3.936,
"init": 0.002,
"home": 492.238,
"category": 533.263,
"detail": 0.01,
"player": 0.003,
"url_check": 335.949,
"total": 1365.991
},
"counts": {
"classes": 44,
"category_videos": 12,
"detail_videos": 1,
"episodes": 1
},
"samples": {
"tid": "217",
"vod_id": "1259@@广东珠江经济电台@@https://pic.qtfm.cn/2015/0209/20150209212831195.jpg@@正在直播: 小说连播",
"flag": "蜻蜓FM",
"play_id": "1259"
},
"player": {
"parse": 0,
"url": "http://lhttp.qtfm.cn/live/1259/64k.mp3",
"valid": true,
"reachable": true,
"status_code": 200,
"final_url": "http://lhttp.qtfm.cn/live/1259/64k.mp3",
"reason": null
}
},
{
"spider": "袋鼠影视",
"file": "袋鼠影视.txt",
"success": true,
"failed_stage": null,
"error": null,
"traceback": null,
"timings_ms": {
"module_load": 6.298,
"init": 0.001,
"home": 0.001,
"category": 1506.019,
"detail": 402.603,
"player": 388.307,
"url_check": 1183.129,
"total": 3487.226
},
"counts": {
"classes": 4,
"category_videos": 36,
"detail_videos": 1,
"episodes": 2
},
"samples": {
"tid": "1",
"vod_id": "216945",
"flag": "蓝光专线4",
"play_id": "play/216945-0-0"
},
"player": {
"parse": 0,
"url": "https://vip.dytt-kan.com/20250615/741_2e65f2f2/index.m3u8",
"valid": true,
"reachable": true,
"status_code": 200,
"final_url": "https://vip.dytt-kan.com/20250615/741_2e65f2f2/index.m3u8",
"reason": null
}
},
{
"spider": "观影",
"file": "观影.txt",
"success": false,
"failed_stage": "category",
"error": "分类视频列表为空",
"traceback": null,
"timings_ms": {
"module_load": 10.068,
"init": 0.435,
"home": 0.001,
"category": 0.005,
"detail": 0.0,
"player": 0.0,
"url_check": 0.0,
"total": 11.466
},
"counts": {
"classes": 6,
"category_videos": 0,
"detail_videos": 0,
"episodes": 0
},
"samples": {
"tid": "tv",
"vod_id": null,
"flag": null,
"play_id": null
},
"player": {
"parse": null,
"url": "",
"valid": false,
"reachable": null,
"status_code": null,
"final_url": "",
"reason": null
}
},
{
"spider": "视界",
"file": "视界.txt",
"success": false,
"failed_stage": "unexpected",
"error": "HTTPSConnectionPool(host='cms140.yhg.one', port=443): Read timed out. (read timeout=10)",
"traceback": "Traceback (most recent call last):\n File \"/home/harold/workspace/atv-spiders/py/.venv/lib/python3.14/site-packages/urllib3/connectionpool.py\", line 464, in _make_request\n self._validate_conn(conn)\n ~~~~~~~~~~~~~~~~~~~^^^^^^\n File \"/home/harold/workspace/atv-spiders/py/.venv/lib/python3.14/site-packages/urllib3/connectionpool.py\", line 1093, in _validate_conn\n conn.connect()\n ~~~~~~~~~~~~^^\n File \"/home/harold/workspace/atv-spiders/py/.venv/lib/python3.14/site-packages/urllib3/connection.py\", line 796, in connect\n sock_and_verified = _ssl_wrap_socket_and_match_hostname(\n sock=sock,\n ...<14 lines>...\n assert_fingerprint=self.assert_fingerprint,\n )\n File \"/home/harold/workspace/atv-spiders/py/.venv/lib/python3.14/site-packages/urllib3/connection.py\", line 975, in _ssl_wrap_socket_and_match_hostname\n ssl_sock = ssl_wrap_socket(\n sock=sock,\n ...<8 lines>...\n tls_in_tls=tls_in_tls,\n )\n File \"/home/harold/workspace/atv-spiders/py/.venv/lib/python3.14/site-packages/urllib3/util/ssl_.py\", line 483, in ssl_wrap_socket\n ssl_sock = _ssl_wrap_socket_impl(sock, context, tls_in_tls, server_hostname)\nTimeoutError: _ssl.c:1063: The handshake operation timed out\n\nThe above exception was the direct cause of the following exception:\n\nTraceback (most recent call last):\n File \"/home/harold/workspace/atv-spiders/py/.venv/lib/python3.14/site-packages/requests/adapters.py\", line 645, in send\n resp = conn.urlopen(\n method=request.method,\n ...<9 lines>...\n chunked=chunked,\n )\n File \"/home/harold/workspace/atv-spiders/py/.venv/lib/python3.14/site-packages/urllib3/connectionpool.py\", line 841, in urlopen\n retries = retries.increment(\n method, url, error=new_e, _pool=self, _stacktrace=sys.exc_info()[2]\n )\n File \"/home/harold/workspace/atv-spiders/py/.venv/lib/python3.14/site-packages/urllib3/util/retry.py\", line 490, in increment\n raise reraise(type(error), error, _stacktrace)\n ~~~~~~~^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/home/harold/workspace/atv-spiders/py/.venv/lib/python3.14/site-packages/urllib3/util/util.py\", line 39, in reraise\n raise value\n File \"/home/harold/workspace/atv-spiders/py/.venv/lib/python3.14/site-packages/urllib3/connectionpool.py\", line 787, in urlopen\n response = self._make_request(\n conn,\n ...<10 lines>...\n **response_kw,\n )\nurllib3.exceptions.ReadTimeoutError: HTTPSConnectionPool(host='cms140.yhg.one', port=443): Read timed out. (read timeout=10)\n\nDuring handling of the above exception, another exception occurred:\n\nTraceback (most recent call last):\n File \"/home/harold/workspace/atv-spiders/py/validate_spiders.py\", line 756, in validate_spider_file\n home_result = _run_timed(result[\"timings_ms\"], \"home\", spider.homeContent, clock, False)\n File \"/home/harold/workspace/atv-spiders/py/validate_spiders.py\", line 318, in _run_timed\n return func(*args, **kwargs)\n File \"/home/harold/workspace/tvbox-resources/py/视界.txt\", line 72, in homeContent\n File \"/home/harold/workspace/tvbox-resources/py/视界.txt\", line 400, in _ensure_init_payload\n File \"/home/harold/workspace/tvbox-resources/py/视界.txt\", line 199, in _post_api\nrequests.exceptions.ReadTimeout: HTTPSConnectionPool(host='cms140.yhg.one', port=443): Read timed out. (read timeout=10)\n",
"timings_ms": {
"module_load": 7.674,
"init": 0.001,
"home": 10010.06,
"category": 0.0,
"detail": 0.0,
"player": 0.0,
"url_check": 0.0,
"total": 10020.673
},
"counts": {
"classes": 0,
"category_videos": 0,
"detail_videos": 0,
"episodes": 0
},
"samples": {
"tid": null,
"vod_id": null,
"flag": null,
"play_id": null
},
"player": {
"parse": null,
"url": "",
"valid": false,
"reachable": null,
"status_code": null,
"final_url": "",
"reason": null
}
},
{
"spider": "资源聚合",
"file": "资源聚合.txt",
"success": true,
"failed_stage": null,
"error": null,
"traceback": null,
"timings_ms": {
"module_load": 11.21,
"init": 0.026,
"home": 299.602,
"category": 702.185,
"detail": 307.387,
"player": 0.002,
"url_check": 1878.241,
"total": 3199.212
},
"counts": {
"classes": 4,
"category_videos": 20,
"detail_videos": 1,
"episodes": 1
},
"samples": {
"tid": "1",
"vod_id": "cms:feifan:98946",
"flag": "非凡资源",
"play_id": "https://super.ffzy-online6.com/20260807/38311_c5f5688a/index.m3u8"
},
"player": {
"parse": 0,
"url": "https://super.ffzy-online6.com/20260807/38311_c5f5688a/index.m3u8",
"valid": true,
"reachable": true,
"status_code": 200,
"final_url": "https://super.ffzy-online6.com/20260807/38311_c5f5688a/index.m3u8",
"reason": null
}
},
{
"spider": "路漫漫",
"file": "路漫漫.txt",
"success": false,
"failed_stage": "category",
"error": "分类视频列表为空",
"traceback": null,
"timings_ms": {
"module_load": 7.553,
"init": 0.001,
"home": 0.0,
"category": 293.281,
"detail": 0.0,
"player": 0.0,
"url_check": 0.0,
"total": 594.438
},
"counts": {
"classes": 6,
"category_videos": 0,
"detail_videos": 0,
"episodes": 0
},
"samples": {
"tid": "7",
"vod_id": null,
"flag": null,
"play_id": null
},
"player": {
"parse": null,
"url": "",
"valid": false,
"reachable": null,
"status_code": null,
"final_url": "",
"reason": null
}
},
{
"spider": "路飞影视",
"file": "路飞影视.txt",
"success": true,
"failed_stage": null,
"error": null,
"traceback": null,
"timings_ms": {
"module_load": 7.345,
"init": 0.001,
"home": 0.001,
"category": 287.199,
"detail": 624.327,
"player": 1425.859,
"url_check": 858.964,
"total": 3204.776
},
"counts": {
"classes": 7,
"category_videos": 16,
"detail_videos": 1,
"episodes": 2
},
"samples": {
"tid": "movie",
"vod_id": "39037476",
"flag": "【无广②】",
"play_id": "39037476-1-1"
},
"player": {
"parse": 0,
"url": "https://player.yzzyvip-35.com/20260807/12972_c1f22f4c/index.m3u8",
"valid": true,
"reachable": true,
"status_code": 200,
"final_url": "https://player.yzzyvip-35.com/20260807/12972_c1f22f4c/index.m3u8",
"reason": null
}
},
{
"spider": "酷我听书",
"file": "酷我听书.txt",
"success": true,
"failed_stage": null,
"error": null,
"traceback": null,
"timings_ms": {
"module_load": 6.106,
"init": 0.001,
"home": 371.034,
"category": 97.485,
"detail": 3625.486,
"player": 146.34,
"url_check": 28.659,
"total": 4278.037
},
"counts": {
"classes": 4,
"category_videos": 21,
"detail_videos": 1,
"episodes": 1
},
"samples": {
"tid": "2",
"vod_id": "13492273",
"flag": "酷我听书",
"play_id": "free|94448942"
},
"player": {
"parse": 0,
"url": "http://car-lv.kuwo.cn/c0e9a6acad037bdf9af75b30c4a54e67/6a76adc2/resource/30106/trackmedia/long/M500002ZiI9a1sctnS.mp3?bitrate$128&format$mp3&source$kwplayerhd_ar_4.3.0.8_tianbao_T1A_qirui.apk&type$convert_url_with_sign&user$&loginUid$",
"valid": true,
"reachable": true,
"status_code": 200,
"final_url": "http://car-lv.kuwo.cn/c0e9a6acad037bdf9af75b30c4a54e67/6a76adc2/resource/30106/trackmedia/long/M500002ZiI9a1sctnS.mp3?bitrate$128&format$mp3&source$kwplayerhd_ar_4.3.0.8_tianbao_T1A_qirui.apk&type$convert_url_with_sign&user$&loginUid$",
"reason": null
}
},
{
"spider": "酷狗音乐",
"file": "酷狗音乐.txt",
"success": true,
"failed_stage": null,
"error": null,
"traceback": null,
"timings_ms": {
"module_load": 9.611,
"init": 424.246,
"home": 253.194,
"category": 230.25,
"detail": 298.97,
"player": 277.609,
"url_check": 57.707,
"total": 1552.733
},
"counts": {
"classes": 12,
"category_videos": 15,
"detail_videos": 1,
"episodes": 1
},
"samples": {
"tid": "recommend",
"vod_id": "779348613",
"flag": "酷狗音乐",
"play_id": "779348613"
},
"player": {
"parse": 0,
"url": "http://fsdg360.hw.kugou.com/202608081217/3e30e5cec2766f63f0a897a7774b1eb0/v3/463e226b5bf6df0064b35487e98c39e5/yp/p_0_960131/ap1013_us0_mic85f71c379c462618de1399950957c33_pi6101_mx779348613_qu128_s3996474110.mp3?ft=car_203559_10049&fts=b05bb02d44717442054bac7624ed9a29&ext=.mp3",
"valid": true,
"reachable": true,
"status_code": 200,
"final_url": "http://fsdg360.hw.kugou.com/202608081217/3e30e5cec2766f63f0a897a7774b1eb0/v3/463e226b5bf6df0064b35487e98c39e5/yp/p_0_960131/ap1013_us0_mic85f71c379c462618de1399950957c33_pi6101_mx779348613_qu128_s3996474110.mp3?ft=car_203559_10049&fts=b05bb02d44717442054bac7624ed9a29&ext=.mp3",
"reason": null
}
},
{
"spider": "金牌",
"file": "金牌.txt",
"success": true,
"failed_stage": null,
"error": null,
"traceback": null,
"timings_ms": {
"module_load": 4.138,
"init": 0.001,
"home": 584.403,
"category": 534.777,
"detail": 314.69,
"player": 1242.131,
"url_check": 307.771,
"total": 2988.749
},
"counts": {
"classes": 5,
"category_videos": 30,
"detail_videos": 1,
"episodes": 1
},
"samples": {
"tid": "1",
"vod_id": "145512",
"flag": "金牌线路",
"play_id": "145512@1298790"
},
"player": {
"parse": 0,
"url": "https://ppvod011.blbtgg.com/splitOut/20260705/1342569/V20260705110331438911342569/index.m3u8?auth_key=1786162625-efcf58729acd474481770c0a5e7eb903-0-1d4183a81c983c7d1a5feb0d082d74cd",
"valid": true,
"reachable": true,
"status_code": 200,
"final_url": "https://ppvod011.blbtgg.com/splitOut/20260705/1342569/V20260705110331438911342569/index.m3u8?auth_key=1786162625-efcf58729acd474481770c0a5e7eb903-0-1d4183a81c983c7d1a5feb0d082d74cd",
"reason": null
}
},
{
"spider": "长泽",
"file": "长泽.txt",
"success": true,
"failed_stage": null,
"error": null,
"traceback": null,
"timings_ms": {
"module_load": 6.363,
"init": 0.011,
"home": 153.73,
"category": 109.178,
"detail": 89.902,
"player": 0.092,
"url_check": 1838.644,
"total": 2198.926
},
"counts": {
"classes": 18,
"category_videos": 21,
"detail_videos": 1,
"episodes": 2
},
"samples": {
"tid": "20",
"vod_id": "93281",
"flag": "FF有广",
"play_id": "app88:WyJodHRwczovL3ZpcC5mZnp5LXBsYXlzLmNvbS8yMDI2MDgwNi81NjcyNl80YjVkM2EyOC9pbmRleC5tM3U4IiwiZmZtM3U4Iiwi55y855y4IiwiMSJd"
},
"player": {
"parse": 0,
"url": "https://vip.ffzy-plays.com/20260806/56726_4b5d3a28/index.m3u8",
"valid": true,
"reachable": true,
"status_code": 200,
"final_url": "https://vip.ffzy-plays.com/20260806/56726_4b5d3a28/index.m3u8",
"reason": null
}
},
{
"spider": "闪电",
"file": "闪电.txt",
"success": true,
"failed_stage": null,
"error": null,
"traceback": null,
"timings_ms": {
"module_load": 9.791,
"init": 0.005,
"home": 0.001,
"category": 898.078,
"detail": 3738.821,
"player": 0.009,
"url_check": 146.623,
"total": 4794.279
},
"counts": {
"classes": 5,
"category_videos": 72,
"detail_videos": 1,
"episodes": 1
},
"samples": {
"tid": "1",
"vod_id": "186133",
"flag": "夸克#闪电",
"play_id": "https://pan.quark.cn/s/0e802ce6be5a"
},
"player": {
"parse": 0,
"url": "https://pan.quark.cn/s/0e802ce6be5a",
"valid": true,
"reachable": true,
"status_code": 200,
"final_url": "https://pan.quark.cn/s/0e802ce6be5a",
"reason": null
}
},
{
"spider": "雷鲸",
"file": "雷鲸.txt",
"success": true,
"failed_stage": null,
"error": null,
"traceback": null,
"timings_ms": {
"module_load": 8.071,
"init": 0.006,
"home": 0.008,
"category": 1547.288,
"detail": 749.402,
"player": 0.005,
"url_check": 205.528,
"total": 2511.153
},
"counts": {
"classes": 7,
"category_videos": 30,
"detail_videos": 1,
"episodes": 1
},
"samples": {
"tid": "42204681950354",
"vod_id": "66466",
"flag": "迅雷",
"play_id": "https://pan.xunlei.com/s/VOxGjKrL2zREw7pkB8aXhCvqA1"
},
"player": {
"parse": 0,
"url": "https://pan.xunlei.com/s/VOxGjKrL2zREw7pkB8aXhCvqA1",
"valid": true,
"reachable": true,
"status_code": 200,
"final_url": "https://pan.xunlei.com/s/VOxGjKrL2zREw7pkB8aXhCvqA1",
"reason": null
}
},
{
"spider": "韩圈",
"file": "韩圈.txt",
"success": true,
"failed_stage": null,
"error": null,
"traceback": null,
"timings_ms": {
"module_load": 5.673,
"init": 0.002,
"home": 1236.384,
"category": 1125.663,
"detail": 4173.295,
"player": 779.17,
"url_check": 205.376,
"total": 7526.083
},
"counts": {
"classes": 18,
"category_videos": 24,
"detail_videos": 1,
"episodes": 2
},
"samples": {
"tid": "1",
"vod_id": "RWA1fjPgWNm7zDXWIV56",
"flag": "蓝光HDR",
"play_id": "RWA1fjPgWNm7zDXWIV56|||6ELTVL1fVx13oPB0teZtP|||sc_TnymrI9lPH6g6Ba2RnXE|||11"
},
"player": {
"parse": 0,
"url": "http://piccc.cdn.51touxiang.com/m3u8/2ePd4TGLqoackYBGnFxo66tx694g29pLJY5pkDQc.m3u8?pid=%2BibJyq87ptZYRmRqhIP%2FvdPpS8IkFbC44G%2FR8jMO89c%3D&utk=u_bYstpjDewEfNg7Qfvwx1&uk=f0vRs0mWZ8Q4NeOaqnzptBzBCFA8hAHZaPEf9u6Y3cw%3D&spl=213&t=1786162631&sign=2b5856cf5649a31197b8a16b9dfc1295&ip=222.210.194.251",
"valid": true,
"reachable": true,
"status_code": 200,
"final_url": "http://piccc.cdn.51touxiang.com/m3u8/2ePd4TGLqoackYBGnFxo66tx694g29pLJY5pkDQc.m3u8?pid=%2BibJyq87ptZYRmRqhIP%2FvdPpS8IkFbC44G%2FR8jMO89c%3D&utk=u_bYstpjDewEfNg7Qfvwx1&uk=f0vRs0mWZ8Q4NeOaqnzptBzBCFA8hAHZaPEf9u6Y3cw%3D&spl=213&t=1786162631&sign=2b5856cf5649a31197b8a16b9dfc1295&ip=222.210.194.251",
"reason": null
}
},
{
"spider": "韩小圈",
"file": "韩小圈.txt",
"success": true,
"failed_stage": null,
"error": null,
"traceback": null,
"timings_ms": {
"module_load": 4.75,
"init": 0.001,
"home": 0.0,
"category": 325.925,
"detail": 598.97,
"player": 0.004,
"url_check": 2000.309,
"total": 2931.589
},
"counts": {
"classes": 5,
"category_videos": 20,
"detail_videos": 1,
"episodes": 1
},
"samples": {
"tid": "0",
"vod_id": "98458",
"flag": "默认线路",
"play_id": "https://vvip.high26-playback.com/20260711/24705_7ffc2fa4/index.m3u8"
},
"player": {
"parse": 0,
"url": "https://vvip.high26-playback.com/20260711/24705_7ffc2fa4/index.m3u8",
"valid": true,
"reachable": true,
"status_code": 200,
"final_url": "https://vvip.high26-playback.com/20260711/24705_7ffc2fa4/index.m3u8",
"reason": null
}
},
{
"spider": "飞卢听书",
"file": "飞卢听书.txt",
"success": true,
"failed_stage": null,
"error": null,
"traceback": null,
"timings_ms": {
"module_load": 3.792,
"init": 0.001,
"home": 0.0,
"category": 299.796,
"detail": 351.793,
"player": 0.003,
"url_check": 80.953,
"total": 736.806
},
"counts": {
"classes": 12,
"category_videos": 30,
"detail_videos": 1,
"episodes": 1
},
"samples": {
"tid": "1",
"vod_id": "765",
"flag": "飞卢听书",
"play_id": "http://tss.faloo.com/ListenNode/0/765/1.mp3"
},
"player": {
"parse": 0,
"url": "http://tss.faloo.com/ListenNode/0/765/1.mp3",
"valid": true,
"reachable": true,
"status_code": 200,
"final_url": "http://tss.faloo.com/ListenNode/0/765/1.mp3",
"reason": null
}
},
{
"spider": "飞快TV",
"file": "飞快TV.txt",
"success": true,
"failed_stage": null,
"error": null,
"traceback": null,
"timings_ms": {
"module_load": 6.958,
"init": 0.001,
"home": 0.001,
"category": 1190.03,
"detail": 929.134,
"player": 946.489,
"url_check": 741.38,
"total": 3815.168
},
"counts": {
"classes": 4,
"category_videos": 40,
"detail_videos": 1,
"episodes": 2
},
"samples": {
"tid": "1",
"vod_id": "252301",
"flag": "茅台资源1",
"play_id": "/vodplay/252301-7-1.html"
},
"player": {
"parse": 0,
"url": "https://vodcnd16.uvjtih.cn/20260807/UroFjqro/index.m3u8",
"valid": true,
"reachable": true,
"status_code": 200,
"final_url": "https://vodcnd16.uvjtih.cn/20260807/UroFjqro/index.m3u8",
"reason": null
}
},
{
"spider": "魔方APP",
"file": "魔方APP.txt",
"success": false,
"failed_stage": "home",
"error": "分类列表为空",
"traceback": null,
"timings_ms": {
"module_load": 5.708,
"init": 0.001,
"home": 583.214,
"category": 0.0,
"detail": 0.0,
"player": 0.0,
"url_check": 0.0,
"total": 589.154
},
"counts": {
"classes": 0,
"category_videos": 0,
"detail_videos": 0,
"episodes": 0
},
"samples": {
"tid": null,
"vod_id": null,
"flag": null,
"play_id": null
},
"player": {
"parse": null,
"url": "",
"valid": false,
"reachable": null,
"status_code": null,
"final_url": "",
"reason": null
}
},
{
"spider": "麦田影院",
"file": "麦田影院.txt",
"success": true,
"failed_stage": null,
"error": null,
"traceback": null,
"timings_ms": {
"module_load": 5.6,
"init": 0.002,
"home": 0.001,
"category": 211.476,
"detail": 166.654,
"player": 0.017,
"url_check": 551.338,
"total": 936.661
},
"counts": {
"classes": 6,
"category_videos": 20,
"detail_videos": 1,
"episodes": 2
},
"samples": {
"tid": "1",
"vod_id": "171427",
"flag": "LZ源",
"play_id": "eyJ1cmwiOiJodHRwczovL3YubHpjZG4yNy5jb20vMjAyNTA3MzEvNjc5XzUwYTJiMDQ3L2luZGV4Lm0zdTgiLCJwYXJzZV9hcGkiOiJodHRwczovL2RlbC5tdDMyMC5jb20vbHpmZi5waHA_dXJsPSIsImhlYWRlcnMiOnt9LCJ1c2VyX2FnZW50IjoiIn0="
},
"player": {
"parse": 0,
"url": "https://v.lzcdn27.com/20250731/679_50a2b047/index.m3u8",
"valid": true,
"reachable": true,
"status_code": 200,
"final_url": "https://v.lzcdn27.com/20250731/679_50a2b047/index.m3u8",
"reason": null
}
},
{
"spider": "黑猫APP",
"file": "黑猫APP.txt",
"success": false,
"failed_stage": "home",
"error": "分类列表为空",
"traceback": null,
"timings_ms": {
"module_load": 9.882,
"init": 0.001,
"home": 618.741,
"category": 0.0,
"detail": 0.0,
"player": 0.0,
"url_check": 0.0,
"total": 628.813
},
"counts": {
"classes": 0,
"category_videos": 0,
"detail_videos": 0,
"episodes": 0
},
"samples": {
"tid": null,
"vod_id": null,
"flag": null,
"play_id": null
},
"player": {
"parse": null,
"url": "",
"valid": false,
"reachable": null,
"status_code": null,
"final_url": "",
"reason": null
}
}
]
}