Files
tvboxzt/spider_validation.json
2026-08-09 21:34:47 +08:00

4898 lines
150 KiB
JSON

{
"generated_at": "2026-08-09T21:33:50+08:00",
"max_workers": 16,
"total_duration_ms": 55470.726,
"summary": {
"total": 125,
"success": 92,
"failed": 33,
"success_rate": 0.736,
"stage_failures": {
"module_load": 0,
"init": 0,
"home": 6,
"category": 17,
"detail": 1,
"player": 1,
"url_check": 3,
"unexpected": 5
}
},
"results": [
{
"spider": "123社区",
"file": "123社区.txt",
"success": false,
"failed_stage": "category",
"error": "分类视频缺少 vod_id",
"traceback": null,
"timings_ms": {
"module_load": 206.018,
"init": 1060.201,
"home": 0.001,
"category": 504.227,
"detail": 0.0,
"player": 0.0,
"url_check": 0.0,
"total": 2267.68
},
"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": 207.088,
"init": 0.048,
"home": 0.016,
"category": 1573.142,
"detail": 804.566,
"player": 0.437,
"url_check": 669.356,
"total": 3255.268
},
"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": 211.665,
"init": 0.001,
"home": 0.011,
"category": 797.259,
"detail": 522.91,
"player": 720.527,
"url_check": 134.937,
"total": 2444.791
},
"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=60cc4b10004d6a0e2bb1141a863f2f8f&buy_key=FM&token=2185&timestamp=1786282411&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=60cc4b10004d6a0e2bb1141a863f2f8f&buy_key=FM&token=2185&timestamp=1786282411&duration=216",
"reason": null
}
},
{
"spider": "4KVM",
"file": "4KVM.txt",
"success": true,
"failed_stage": null,
"error": null,
"traceback": null,
"timings_ms": {
"module_load": 224.162,
"init": 0.001,
"home": 486.955,
"category": 0.025,
"detail": 411.579,
"player": 821.492,
"url_check": 492.303,
"total": 2479.545
},
"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/53d36822c9289932579f58abd899332a.m3u8",
"valid": true,
"reachable": true,
"status_code": 200,
"final_url": "https://oss.douyinbit.com/m3u8/53d36822c9289932579f58abd899332a.m3u8",
"reason": null
}
},
{
"spider": "4K指南",
"file": "4K指南.txt",
"success": true,
"failed_stage": null,
"error": null,
"traceback": null,
"timings_ms": {
"module_load": 232.223,
"init": 0.004,
"home": 0.003,
"category": 1240.35,
"detail": 791.492,
"player": 0.005,
"url_check": 140.144,
"total": 2442.437
},
"counts": {
"classes": 5,
"category_videos": 50,
"detail_videos": 1,
"episodes": 1
},
"samples": {
"tid": "zuixin",
"vod_id": "20645",
"flag": "夸克网盘",
"play_id": "push://https://pan.quark.cn/s/093f3f1c4583"
},
"player": {
"parse": 0,
"url": "https://pan.quark.cn/s/093f3f1c4583",
"valid": true,
"reachable": true,
"status_code": 200,
"final_url": "https://pan.quark.cn/s/093f3f1c4583",
"reason": null
}
},
{
"spider": "55短剧",
"file": "55短剧.txt",
"success": true,
"failed_stage": null,
"error": null,
"traceback": null,
"timings_ms": {
"module_load": 207.637,
"init": 0.003,
"home": 0.006,
"category": 1006.273,
"detail": 522.589,
"player": 508.06,
"url_check": 812.733,
"total": 3118.593
},
"counts": {
"classes": 1,
"category_videos": 24,
"detail_videos": 1,
"episodes": 1
},
"samples": {
"tid": "1",
"vod_id": "28806",
"flag": "55短剧",
"play_id": "28806~1~1"
},
"player": {
"parse": 0,
"url": "https://tyyszywvod2.com/videos/202606/29/6a413e3cdf0906c5d56b8eee/82b132/index.m3u8",
"valid": true,
"reachable": true,
"status_code": 200,
"final_url": "https://tyyszywvod2.com/videos/202606/29/6a413e3cdf0906c5d56b8eee/82b132/index.m3u8",
"reason": null
}
},
{
"spider": "6V磁力",
"file": "6V磁力.txt",
"success": true,
"failed_stage": null,
"error": null,
"traceback": null,
"timings_ms": {
"module_load": 209.033,
"init": 0.008,
"home": 0.004,
"category": 861.172,
"detail": 843.446,
"player": 0.003,
"url_check": 0.074,
"total": 1973.401
},
"counts": {
"classes": 12,
"category_videos": 18,
"detail_videos": 1,
"episodes": 2
},
"samples": {
"tid": "dianshiju/guoju",
"vod_id": "/dianshiju/guoju/29322.html",
"flag": "01-04.2160p.HD国语中字无水印.mkv",
"play_id": "magnet:?xt=urn:btih:e26a6ddb703074ed75c8e596170326f1f71812cd&dn=%E4%BA%BA%E9%B1%BC01-04.2160p"
},
"player": {
"parse": 0,
"url": "magnet:?xt=urn:btih:e26a6ddb703074ed75c8e596170326f1f71812cd&dn=%E4%BA%BA%E9%B1%BC01-04.2160p",
"valid": true,
"reachable": null,
"status_code": null,
"final_url": "magnet:?xt=urn:btih:e26a6ddb703074ed75c8e596170326f1f71812cd&dn=%E4%BA%BA%E9%B1%BC01-04.2160p",
"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 222, in homeContent\n File \"/home/harold/workspace/tvbox-resources/py/AAZ音乐.txt\", line 59, 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": 227.844,
"init": 0.001,
"home": 614.484,
"category": 0.0,
"detail": 0.0,
"player": 0.0,
"url_check": 0.0,
"total": 884.136
},
"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": false,
"failed_stage": "category",
"error": "分类视频列表为空",
"traceback": null,
"timings_ms": {
"module_load": 200.87,
"init": 0.001,
"home": 0.001,
"category": 799.526,
"detail": 0.0,
"player": 0.0,
"url_check": 0.0,
"total": 1737.087
},
"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": "BT影视",
"file": "BT影视.txt",
"success": true,
"failed_stage": null,
"error": null,
"traceback": null,
"timings_ms": {
"module_load": 211.608,
"init": 0.055,
"home": 0.002,
"category": 318.527,
"detail": 382.911,
"player": 325.481,
"url_check": 0.058,
"total": 1291.419
},
"counts": {
"classes": 2,
"category_videos": 32,
"detail_videos": 1,
"episodes": 2
},
"samples": {
"tid": "movies",
"vod_id": "47560920",
"flag": "挽救计划[HDR+杜比视界双版本][国英多音轨+特效中文字幕].2026.USA.BluRay.REMUX.UHD.DoVi.HDR10.2160p.Atmos.TrueHD7.1-DreamHD 76.46GB.torr",
"play_id": "849072356"
},
"player": {
"parse": 0,
"url": "magnet:?xt=urn:btih:f76b3669391ea53df7bc8d659e85b66e0a30a5d0",
"valid": true,
"reachable": null,
"status_code": null,
"final_url": "magnet:?xt=urn:btih:f76b3669391ea53df7bc8d659e85b66e0a30a5d0",
"reason": "非 HTTP 地址,按协议格式通过"
}
},
{
"spider": "PPnix",
"file": "PPnix.txt",
"success": true,
"failed_stage": null,
"error": null,
"traceback": null,
"timings_ms": {
"module_load": 200.945,
"init": 0.001,
"home": 0.001,
"category": 651.57,
"detail": 660.584,
"player": 0.01,
"url_check": 291.494,
"total": 1808.568
},
"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": 223.036,
"init": 0.001,
"home": 0.002,
"category": 593.892,
"detail": 342.408,
"player": 0.005,
"url_check": 148.123,
"total": 1348.06
},
"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": 259.028,
"init": 0.013,
"home": 0.003,
"category": 678.59,
"detail": 762.724,
"player": 305.822,
"url_check": 87.983,
"total": 2099.025
},
"counts": {
"classes": 6,
"category_videos": 30,
"detail_videos": 1,
"episodes": 1
},
"samples": {
"tid": "playlist",
"vod_id": "playlist:8527333713",
"flag": "QQ音乐",
"play_id": "qqmusic:0039MnYb0qxYhV:97773|晴天 - 周杰伦"
},
"player": {
"parse": 0,
"url": "https://isure.stream.qqmusic.qq.com/F000003Qui1q2u1Zho.flac?guid=4935aa25201e9386e0b52a8994bb56c5&vkey=E1DD1DF2CFE34493F825C12B5317201A5E18B1A85DC4952893EEBAE3F0DF0AA4B09F06277FF5EE0B090A3493B1D58F9E72595995C97FB6E1__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=4935aa25201e9386e0b52a8994bb56c5&vkey=E1DD1DF2CFE34493F825C12B5317201A5E18B1A85DC4952893EEBAE3F0DF0AA4B09F06277FF5EE0B090A3493B1D58F9E72595995C97FB6E1__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": 199.035,
"init": 0.003,
"home": 0.054,
"category": 906.117,
"detail": 2329.401,
"player": 0.006,
"url_check": 985.857,
"total": 4421.899
},
"counts": {
"classes": 29,
"category_videos": 19,
"detail_videos": 1,
"episodes": 2
},
"samples": {
"tid": "cat_recommend",
"vod_id": "yt:playlist:PLvOO0btloRntAi-VnV06M1Bu0X1xljUUP",
"flag": "YouTube",
"play_id": "yt:entry:PLvOO0btloRntAi-VnV06M1Bu0X1xljUUP:5dTOPen28ts"
},
"player": {
"parse": 0,
"url": "https://www.youtube.com/watch?v=5dTOPen28ts&list=PLvOO0btloRntAi-VnV06M1Bu0X1xljUUP",
"valid": true,
"reachable": true,
"status_code": 200,
"final_url": "https://www.youtube.com/watch?v=5dTOPen28ts&list=PLvOO0btloRntAi-VnV06M1Bu0X1xljUUP",
"reason": null
}
},
{
"spider": "libvio",
"file": "libvio.txt",
"success": true,
"failed_stage": null,
"error": null,
"traceback": null,
"timings_ms": {
"module_load": 210.1,
"init": 0.002,
"home": 0.002,
"category": 265.964,
"detail": 290.563,
"player": 0.005,
"url_check": 151.478,
"total": 967.924
},
"counts": {
"classes": 6,
"category_videos": 48,
"detail_videos": 1,
"episodes": 2
},
"samples": {
"tid": "index",
"vod_id": "714893554",
"flag": "夸克",
"play_id": "https://pan.quark.cn/s/c82ec2943a8a"
},
"player": {
"parse": 0,
"url": "https://pan.quark.cn/s/c82ec2943a8a",
"valid": true,
"reachable": true,
"status_code": 200,
"final_url": "https://pan.quark.cn/s/c82ec2943a8a",
"reason": null
}
},
{
"spider": "mifun",
"file": "mifun.txt",
"success": true,
"failed_stage": null,
"error": null,
"traceback": null,
"timings_ms": {
"module_load": 198.629,
"init": 0.005,
"home": 1621.519,
"category": 1176.163,
"detail": 1136.334,
"player": 1020.118,
"url_check": 99.563,
"total": 5313.615
},
"counts": {
"classes": 5,
"category_videos": 30,
"detail_videos": 1,
"episodes": 2
},
"samples": {
"tid": "1",
"vod_id": "19801",
"flag": "快看云",
"play_id": "快看云@@direct@@ba11073ae57ba0eede130eeda148f635,v0ddadg10001d958iuvog65nmqq9aim0,token+,1,1"
},
"player": {
"parse": 0,
"url": "https://lf3-imcloud-file-sign.bytetos.com/tos-cn-v-5f73e7/o4SKaUsm1Emttlg3iAJiMVSiESBVttDV9Qf6Xr?x-expires=1786483109&x-signature=IEMEuzWdQB8XZSxAkzMfr9D9Dcc%3D",
"valid": true,
"reachable": true,
"status_code": 200,
"final_url": "https://lf3-imcloud-file-sign.bytetos.com/tos-cn-v-5f73e7/o4SKaUsm1Emttlg3iAJiMVSiESBVttDV9Qf6Xr?x-expires=1786483109&x-signature=IEMEuzWdQB8XZSxAkzMfr9D9Dcc%3D",
"reason": null
}
},
{
"spider": "youknow",
"file": "youknow.txt",
"success": true,
"failed_stage": null,
"error": null,
"traceback": null,
"timings_ms": {
"module_load": 5.16,
"init": 0.0,
"home": 0.0,
"category": 1950.523,
"detail": 1523.017,
"player": 1058.345,
"url_check": 724.848,
"total": 5263.117
},
"counts": {
"classes": 7,
"category_videos": 230,
"detail_videos": 1,
"episodes": 1
},
"samples": {
"tid": "index",
"vod_id": "205324",
"flag": "YouKnowTV",
"play_id": "eyJ2b2RfaWQiOiIyMDUzMjQiLCJlcGlzb2RlX2luZGV4IjoxLCJ0aXRsZSI6IuesrDAx6ZuGIiwiY2FuZGlkYXRlcyI6W3sic291cmNlIjoi57q_6LevMSIsInNvdXJjZV9pZCI6IjEiLCJlcGlzb2RlX3VybCI6Imh0dHBzOi8vd3d3LnlvdWtub3cudHYvcC8yMDUzMjQtMS0xLyJ9LHsic291cmNlIjoi57q_6LevMyIsInNvdXJjZV9pZCI6IjEiLCJlcGlzb2RlX3VybCI6Imh0dHBzOi8vd3d3LnlvdWtub3cudHYvcC8yMDUzMjQtMS0xLyJ9LHsic291cmNlIjoi57q_6LevOSIsInNvdXJjZV9pZCI6IjIiLCJlcGlzb2RlX3VybCI6Imh0dHBzOi8vd3d3LnlvdWtub3cudHYvcC8yMDUzMjQtMi0xLyJ9LHsic291cmNlIjoi57q_6LevMTAiLCJzb3VyY2VfaWQiOiIyIiwiZXBpc29kZV91cmwiOiJodHRwczovL3d3dy55b3Vrbm93LnR2L3AvMjA1MzI0LTItMS8ifV19"
},
"player": {
"parse": 0,
"url": "https://vip.dytt-tvs.com/20260705/26882_268babce/index.m3u8",
"valid": true,
"reachable": true,
"status_code": 200,
"final_url": "https://cnvod.jimxtc.com/20260705/26882_268babce/index.m3u8",
"reason": null
}
},
{
"spider": "七味",
"file": "七味.txt",
"success": true,
"failed_stage": null,
"error": null,
"traceback": null,
"timings_ms": {
"module_load": 11.358,
"init": 0.008,
"home": 0.001,
"category": 920.478,
"detail": 808.474,
"player": 0.005,
"url_check": 0.068,
"total": 1741.198
},
"counts": {
"classes": 5,
"category_videos": 42,
"detail_videos": 1,
"episodes": 2
},
"samples": {
"tid": "1",
"vod_id": "512102",
"flag": "磁力1",
"play_id": "magnet:?xt=urn:btih:0f8156bcbcfd2328f3cbd90048c021d368f256dd&dn=The Swedish Theory Of Love (2015) [NORDIC] [720p] [WEBRip] [YTS.GG - YTS.BZ]"
},
"player": {
"parse": 0,
"url": "magnet:?xt=urn:btih:0f8156bcbcfd2328f3cbd90048c021d368f256dd&dn=The Swedish Theory Of Love (2015) [NORDIC] [720p] [WEBRip] [YTS.GG - YTS.BZ]",
"valid": true,
"reachable": null,
"status_code": null,
"final_url": "magnet:?xt=urn:btih:0f8156bcbcfd2328f3cbd90048c021d368f256dd&dn=The Swedish Theory Of Love (2015) [NORDIC] [720p] [WEBRip] [YTS.GG - YTS.BZ]",
"reason": "非 HTTP 地址,按协议格式通过"
}
},
{
"spider": "不太灵",
"file": "不太灵.txt",
"success": true,
"failed_stage": null,
"error": null,
"traceback": null,
"timings_ms": {
"module_load": 4.774,
"init": 0.001,
"home": 461.113,
"category": 484.743,
"detail": 488.81,
"player": 0.009,
"url_check": 155.227,
"total": 1595.514
},
"counts": {
"classes": 5,
"category_videos": 25,
"detail_videos": 1,
"episodes": 2
},
"samples": {
"tid": "1",
"vod_id": "37356466",
"flag": "夸克",
"play_id": "https://pan.quark.cn/s/48802685fcb5"
},
"player": {
"parse": 0,
"url": "https://pan.quark.cn/s/48802685fcb5",
"valid": true,
"reachable": true,
"status_code": 200,
"final_url": "https://pan.quark.cn/s/48802685fcb5",
"reason": null
}
},
{
"spider": "世纪音乐",
"file": "世纪音乐.txt",
"success": false,
"failed_stage": "category",
"error": "分类视频列表为空",
"traceback": null,
"timings_ms": {
"module_load": 4.269,
"init": 0.001,
"home": 446.755,
"category": 98.422,
"detail": 0.0,
"player": 0.0,
"url_check": 0.0,
"total": 654.096
},
"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": 11.81,
"init": 0.002,
"home": 0.001,
"category": 523.753,
"detail": 466.414,
"player": 829.437,
"url_check": 579.911,
"total": 2411.859
},
"counts": {
"classes": 14,
"category_videos": 24,
"detail_videos": 1,
"episodes": 1
},
"samples": {
"tid": "zgjun",
"vod_id": "ch4g0im1f",
"flag": "两个BT",
"play_id": "eyJwaWQiOiIvcGxheS9jaDRnMGltMWYiLCJzaWQiOiJjaDRnMGltMWYiLCJuYW1lIjoiMSJ9"
},
"player": {
"parse": 0,
"url": "https://zijieapi.douyinbyte.com/m3u8/dcc1087bf5a3898a01483985b55deb30.m3u8",
"valid": true,
"reachable": true,
"status_code": 200,
"final_url": "https://zijieapi.douyinbyte.com/m3u8/dcc1087bf5a3898a01483985b55deb30.m3u8",
"reason": null
}
},
{
"spider": "乌云影视",
"file": "乌云影视.txt",
"success": true,
"failed_stage": null,
"error": null,
"traceback": null,
"timings_ms": {
"module_load": 7.741,
"init": 0.001,
"home": 341.547,
"category": 391.63,
"detail": 994.905,
"player": 0.023,
"url_check": 3625.573,
"total": 5362.492
},
"counts": {
"classes": 7,
"category_videos": 24,
"detail_videos": 1,
"episodes": 1
},
"samples": {
"tid": "movie",
"vod_id": "15573",
"flag": "乌云影视",
"play_id": "eyJtZWRpYUlkIjogIjE1NTczIiwgInNlYXNvbk5vIjogMSwgImVwTm8iOiAxLCAidmlkZW9JZCI6IDE2OTU3LCAicGxheVVybCI6ICJodHRwczovL3dvb3l1bi50di9nZW5fb3ZlcnNlYXMvaHR0cHM6Ly9jMS5kZGJiZmZjZG4uY29tL3ZpZGVvL09NR3dvYWluaWRhbmJ1aGVzaGl5aS9IROS4reWtly9pbmRleC5tM3U4IiwgIm5hbWUiOiAi56ysMembhiBIROS4reWtlyJ9"
},
"player": {
"parse": 0,
"url": "https://wooyun.tv/gen_overseas/https://c1.ddbbffcdn.com/video/OMGwoainidanbuheshiyi/HD中字/index.m3u8",
"valid": true,
"reachable": true,
"status_code": 200,
"final_url": "https://vod-cdn.wooyun.tv/v2/hls_fresh/2607291/c4d1c2b3cd3749bfbdb19181055f08c2fe1ca799.m3u8",
"reason": null
}
},
{
"spider": "乐兔",
"file": "乐兔.txt",
"success": false,
"failed_stage": "category",
"error": "分类视频列表为空",
"traceback": null,
"timings_ms": {
"module_load": 4.276,
"init": 0.0,
"home": 0.0,
"category": 538.876,
"detail": 0.0,
"player": 0.0,
"url_check": 0.0,
"total": 1468.756
},
"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": 7.021,
"init": 0.004,
"home": 0.001,
"category": 1601.695,
"detail": 927.474,
"player": 0.005,
"url_check": 1063.503,
"total": 3600.615
},
"counts": {
"classes": 4,
"category_videos": 72,
"detail_videos": 1,
"episodes": 2
},
"samples": {
"tid": "1",
"vod_id": "12989",
"flag": "百度#二小",
"play_id": "https://pan.baidu.com/s/1rB-S7bfS-3M02szTvrEP2g?pwd=e33c"
},
"player": {
"parse": 0,
"url": "https://pan.baidu.com/s/1rB-S7bfS-3M02szTvrEP2g?pwd=e33c",
"valid": true,
"reachable": true,
"status_code": 200,
"final_url": "https://pan.baidu.com/share/init?surl=rB-S7bfS-3M02szTvrEP2g&pwd=e33c",
"reason": null
}
},
{
"spider": "云朵",
"file": "云朵.txt",
"success": true,
"failed_stage": null,
"error": null,
"traceback": null,
"timings_ms": {
"module_load": 4.928,
"init": 0.001,
"home": 1520.654,
"category": 0.028,
"detail": 813.554,
"player": 1399.143,
"url_check": 1160.396,
"total": 7218.309
},
"counts": {
"classes": 4,
"category_videos": 20,
"detail_videos": 1,
"episodes": 2
},
"samples": {
"tid": "2",
"vod_id": "70907",
"flag": "youku",
"play_id": "https://v.youku.com/v_show/id_XNjU0MjIxOTc4NA==.html"
},
"player": {
"parse": 0,
"url": "https://cibn-edge-5g.1ljx.com/cloud/flv/8235a7a12906cd26111689db441ab732/7a0f15b07945867b35e1707c598f03b7/6a7881b110ed8.m3u8?auth_key=1786282417.0692-1-595583371.info-internet-2-llq-c73a7ffb523b4cee7802ca7515ce5761",
"valid": true,
"reachable": true,
"status_code": 200,
"final_url": "https://valipl.cp31.ott.cibntv.net/6975CA985D131716B6B8A204E/03000700006A761ACF42AD5FD7282EE67F6B3D-0CC4-429E-B928-9014CBC94934-16-5024677072.m3u8?ccode=03020102&duration=2579&expire=18000&psid=4e3a93bef1a9b241f1351505188b30f741346&ups_client_netip=ded2c2fb&ups_ts=1786282418&ups_userid=&utid=%40lirose_tv&vid=XNjU0MjIxOTc4NA%3D%3D&vkey=B6c242cc4d4a49769a3d8d2c5a8ff1978&s=dafb6cc804ca4fedb40b&eo=1&t=d2bdf06869c8d0f&cug=1&fms=5c19cc206646e83f&tr=2579&le=a6e562c6696a06205b036dad3f0df5a5&ckt=2&m_onoff=0&rid=20000000A456BD0B817D065D9BBD0EA73B3E2B8E02000000&type=mp4hd2v3&bc=2&dre=u37&si=718&dst=1&sm=1&operate_type=1&hotvt=1&@lirose_tv",
"reason": null
}
},
{
"spider": "人人电影",
"file": "人人电影.txt",
"success": true,
"failed_stage": null,
"error": null,
"traceback": null,
"timings_ms": {
"module_load": 4.429,
"init": 0.001,
"home": 0.0,
"category": 576.215,
"detail": 527.789,
"player": 0.011,
"url_check": 1095.325,
"total": 2204.267
},
"counts": {
"classes": 4,
"category_videos": 10,
"detail_videos": 1,
"episodes": 2
},
"samples": {
"tid": "movie/list_2",
"vod_id": "/movie/2026/0809/60763.html",
"flag": "baidu",
"play_id": "https://pan.baidu.com/s/14S9mb5L8NZ9HXZczuR6Bog?pwd=1i3j"
},
"player": {
"parse": 0,
"url": "https://pan.baidu.com/s/14S9mb5L8NZ9HXZczuR6Bog?pwd=1i3j",
"valid": true,
"reachable": true,
"status_code": 200,
"final_url": "https://pan.baidu.com/share/init?surl=4S9mb5L8NZ9HXZczuR6Bog&pwd=1i3j",
"reason": null
}
},
{
"spider": "人人视频",
"file": "人人视频.txt",
"success": true,
"failed_stage": null,
"error": null,
"traceback": null,
"timings_ms": {
"module_load": 18.102,
"init": 0.001,
"home": 532.352,
"category": 460.698,
"detail": 287.128,
"player": 1319.186,
"url_check": 776.182,
"total": 3394.429
},
"counts": {
"classes": 4,
"category_videos": 30,
"detail_videos": 1,
"episodes": 1
},
"samples": {
"tid": "TV",
"vod_id": "58141",
"flag": "人人专线",
"play_id": "58141@391222"
},
"player": {
"parse": 0,
"url": "https://qn-302-m-play.bwcgee.cn/d0a0de22923a71f180234531958c0402/5bcd7912e2b14d8b9207a27eec7d9699-c8db222eda73eda2ca3406b019ef5e9f-ld.mp4?sign=b8315893780036cec4425f1c68bcc4fb&t=6a78b9ed&clientType=web_pc&clientVersion=1.0.0&parseUsage=PLAY&uid=0&rk=dd05971f567f4f50aba60515bfb01641&hevc=false&seasonId=58141",
"valid": true,
"reachable": true,
"status_code": 200,
"final_url": "https://qn-302-m-play-bwcgee-cn-idvpftl.oubauneereid.com/qn-302-m-play.bwcgee.cn/d0a0de22923a71f180234531958c0402/5bcd7912e2b14d8b9207a27eec7d9699-c8db222eda73eda2ca3406b019ef5e9f-ld.mp4?sign=b8315893780036cec4425f1c68bcc4fb&t=6a78b9ed&clientType=web_pc&clientVersion=1.0.0&parseUsage=PLAY&uid=0&rk=dd05971f567f4f50aba60515bfb01641&hevc=false&seasonId=58141",
"reason": null
}
},
{
"spider": "优酷",
"file": "优酷.txt",
"success": true,
"failed_stage": null,
"error": null,
"traceback": null,
"timings_ms": {
"module_load": 13.453,
"init": 0.001,
"home": 0.001,
"category": 288.404,
"detail": 582.94,
"player": 0.003,
"url_check": 232.018,
"total": 1117.264
},
"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": 5.243,
"init": 0.001,
"home": 0.001,
"category": 1135.44,
"detail": 1549.3,
"player": 0.01,
"url_check": 576.325,
"total": 3266.799
},
"counts": {
"classes": 4,
"category_videos": 24,
"detail_videos": 1,
"episodes": 2
},
"samples": {
"tid": "series",
"vod_id": "movie/ru-yue-er-zhi",
"flag": "播放源 1 (1080P)",
"play_id": "https://v.lzcdn27.com/20260724/13923_4e4f2f0d/index.m3u8"
},
"player": {
"parse": 0,
"url": "https://v.lzcdn27.com/20260724/13923_4e4f2f0d/index.m3u8",
"valid": true,
"reachable": true,
"status_code": 200,
"final_url": "https://v.lzcdn27.com/20260724/13923_4e4f2f0d/index.m3u8",
"reason": null
}
},
{
"spider": "修罗",
"file": "修罗.txt",
"success": true,
"failed_stage": null,
"error": null,
"traceback": null,
"timings_ms": {
"module_load": 7.878,
"init": 0.001,
"home": 0.001,
"category": 1155.995,
"detail": 317.875,
"player": 1627.829,
"url_check": 608.523,
"total": 3719.031
},
"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/CE6F1C934FC7736E19C0CB8BC4325DE9011BCE340893598D2A63E4A399E36FF0",
"valid": true,
"reachable": true,
"status_code": 200,
"final_url": "https://lf26-imcloud-file-sign.bytetos.com/tos-cn-o-0000c2428/oEqdhGgbfCIJfoDcADxqPECq9EACFXAV2vAAV7?x-expires=1786284762&x-signature=V3v576xLXgkO81IZBsUReUVJkZw%3D",
"reason": null
}
},
{
"spider": "免费短剧",
"file": "免费短剧.txt",
"success": true,
"failed_stage": null,
"error": null,
"traceback": null,
"timings_ms": {
"module_load": 4.278,
"init": 0.009,
"home": 0.0,
"category": 390.734,
"detail": 310.919,
"player": 0.002,
"url_check": 4984.71,
"total": 5691.417
},
"counts": {
"classes": 4,
"category_videos": 20,
"detail_videos": 1,
"episodes": 2
},
"samples": {
"tid": "2",
"vod_id": "70264",
"flag": "百度",
"play_id": "https://pan.baidu.com/s/1H3y5G4D6kBx8XyiiX9TKGw?pwd=6666"
},
"player": {
"parse": 0,
"url": "https://pan.baidu.com/s/1H3y5G4D6kBx8XyiiX9TKGw?pwd=6666",
"valid": true,
"reachable": true,
"status_code": 200,
"final_url": "https://pan.baidu.com/share/init?surl=H3y5G4D6kBx8XyiiX9TKGw&pwd=6666",
"reason": null
}
},
{
"spider": "农民",
"file": "农民.txt",
"success": false,
"failed_stage": "category",
"error": "分类视频列表为空",
"traceback": null,
"timings_ms": {
"module_load": 7.835,
"init": 0.0,
"home": 320.26,
"category": 253.473,
"detail": 0.0,
"player": 0.0,
"url_check": 0.0,
"total": 857.831
},
"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": 4.428,
"init": 0.001,
"home": 0.001,
"category": 446.438,
"detail": 0.0,
"player": 0.0,
"url_check": 0.0,
"total": 1007.281
},
"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": 8.879,
"init": 0.001,
"home": 0.001,
"category": 729.568,
"detail": 0.0,
"player": 0.0,
"url_check": 0.0,
"total": 1511.124
},
"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": 5.193,
"init": 1146.439,
"home": 0.09,
"category": 119.033,
"detail": 1107.469,
"player": 1729.741,
"url_check": 167.576,
"total": 4276.199
},
"counts": {
"classes": 5,
"category_videos": 21,
"detail_videos": 1,
"episodes": 2
},
"samples": {
"tid": "2",
"vod_id": "195060",
"flag": "蓝光B线-在线看",
"play_id": "BBA@FYNB-35386463666164393565326333353735851c53128feb5cb8a2e8f02433947c23d757b913da8bf9c76beead9eeecbdfa52c20c8ae90c0cd8f7c41568d7016e8445d2619eb9e8d9239cde1e1a8c5d521f91c478d8eaef0f724cee23ec93f60b9b26bc277afadbdc8bf4395c693d8e8f7adad062948b970b69a24090be59753c2cb3698c7eb47c02566400ec8e7af12bfbd20b79ce390224394a23cb431e56851e9ab6ab883588b90402d6c84821c0530fdbd7e1d8508117f63a11adb4817036c50ed854b1b3e23977225f642130c61a70b"
},
"player": {
"parse": 0,
"url": "https://socwxsns.video.qq.com/251/20302/stodownload?encfilekey=nLWUlAoVvywBJMyouanD7icEwfxNrdl6tkmaxGCGpB14ARy7fia4hHnFOmbDvIbSUYyibAibabTmqlwMwSxFkFFluA&token=cztXnd9GyrGVnlE7iaru1F4iaZobicdFnzfEa2vQeLbgrbthdjoNbOZ9Tia8Uh91sSic4496p9eBuS9Q4mbnbocwlB6NkjljrSVwribib5PibV5ibfLEqrIuHSr7X8mSavs7vCReBIX1x1MVH0oibGeuofuib0NFUP3oHw6o2Q3G8wk0hz91m31YIJFS5w3COicV7eYMXMK2aryDCKlbdELWuicGWG5ibITgJDUCr6kBhLV14gU2o8AU0&hy=SH&idx=1&m=&scene=2&uzid=7a21a&basedata=CAMSA3hWMCIJCgcKA3hWMBAAQjBIfWUWD8gCo6_zzT7URXMcF0-GxU-GwI3_wj27J9LTLjttBhxhkv2mbEL26MxiquxIueLh0wY&sign=VFHt1uMgXdkjwpeliUbSjiADdcbjc7Du5vKVD-k7nbHq521TqLN1BYFCaCTVaMxQJfn6HYauer8qr4mqgGXEJg&filename=BBA.mp4",
"valid": true,
"reachable": true,
"status_code": 200,
"final_url": "https://socwxsns.video.qq.com/251/20302/stodownload?encfilekey=nLWUlAoVvywBJMyouanD7icEwfxNrdl6tkmaxGCGpB14ARy7fia4hHnFOmbDvIbSUYyibAibabTmqlwMwSxFkFFluA&token=cztXnd9GyrGVnlE7iaru1F4iaZobicdFnzfEa2vQeLbgrbthdjoNbOZ9Tia8Uh91sSic4496p9eBuS9Q4mbnbocwlB6NkjljrSVwribib5PibV5ibfLEqrIuHSr7X8mSavs7vCReBIX1x1MVH0oibGeuofuib0NFUP3oHw6o2Q3G8wk0hz91m31YIJFS5w3COicV7eYMXMK2aryDCKlbdELWuicGWG5ibITgJDUCr6kBhLV14gU2o8AU0&hy=SH&idx=1&m=&scene=2&uzid=7a21a&basedata=CAMSA3hWMCIJCgcKA3hWMBAAQjBIfWUWD8gCo6_zzT7URXMcF0-GxU-GwI3_wj27J9LTLjttBhxhkv2mbEL26MxiquxIueLh0wY&sign=VFHt1uMgXdkjwpeliUbSjiADdcbjc7Du5vKVD-k7nbHq521TqLN1BYFCaCTVaMxQJfn6HYauer8qr4mqgGXEJg&filename=BBA.mp4",
"reason": null
}
},
{
"spider": "剧迷",
"file": "剧迷.txt",
"success": true,
"failed_stage": null,
"error": null,
"traceback": null,
"timings_ms": {
"module_load": 6.039,
"init": 0.001,
"home": 0.001,
"category": 320.166,
"detail": 273.254,
"player": 535.877,
"url_check": 1234.192,
"total": 2370.192
},
"counts": {
"classes": 6,
"category_videos": 54,
"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": 6.291,
"init": 0.001,
"home": 0.001,
"category": 1153.516,
"detail": 603.981,
"player": 409.703,
"url_check": 421.74,
"total": 2596.236
},
"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=1786282415-0-0-3bdab067576b95bf0f0768a2e64ec028",
"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=1786282415-0-0-3bdab067576b95bf0f0768a2e64ec028",
"reason": null
}
},
{
"spider": "博看听书",
"file": "博看听书.txt",
"success": true,
"failed_stage": null,
"error": null,
"traceback": null,
"timings_ms": {
"module_load": 4.318,
"init": 0.001,
"home": 4219.848,
"category": 248.031,
"detail": 717.385,
"player": 0.002,
"url_check": 356.385,
"total": 5546.518
},
"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": 5.005,
"init": 0.005,
"home": 441.525,
"category": 91.79,
"detail": 79.551,
"player": 0.003,
"url_check": 276.231,
"total": 894.553
},
"counts": {
"classes": 6,
"category_videos": 21,
"detail_videos": 1,
"episodes": 2
},
"samples": {
"tid": "1",
"vod_id": "10482",
"flag": "线路D",
"play_id": "http://103.97.176.23/m3u8/dmg/1786357225.m3u8"
},
"player": {
"parse": 0,
"url": "http://103.97.176.23/m3u8/dmg/1786357225.m3u8",
"valid": true,
"reachable": true,
"status_code": 200,
"final_url": "http://103.97.176.23/m3u8/dmg/1786357225.m3u8",
"reason": null
}
},
{
"spider": "双星",
"file": "双星.txt",
"success": true,
"failed_stage": null,
"error": null,
"traceback": null,
"timings_ms": {
"module_load": 3.423,
"init": 712.355,
"home": 0.008,
"category": 221.54,
"detail": 248.337,
"player": 0.003,
"url_check": 154.025,
"total": 1340.487
},
"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": 3.839,
"init": 78.834,
"home": 0.001,
"category": 128.009,
"detail": 1366.488,
"player": 468.739,
"url_check": 54.678,
"total": 2101.282
},
"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=e51b630b9a2e1657afd2b0f40d66ea2d&buy_key=FM&token=4298&timestamp=1786282416&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=e51b630b9a2e1657afd2b0f40d66ea2d&buy_key=FM&token=4298&timestamp=1786282416&duration=453",
"reason": null
}
},
{
"spider": "听友FM",
"file": "听友FM.txt",
"success": true,
"failed_stage": null,
"error": null,
"traceback": null,
"timings_ms": {
"module_load": 20.172,
"init": 0.001,
"home": 526.087,
"category": 447.976,
"detail": 784.815,
"player": 322.883,
"url_check": 493.314,
"total": 2596.738
},
"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=1786282416&sign=258808e0dfe8a39ef584d0612e1a457f",
"valid": true,
"reachable": true,
"status_code": 200,
"final_url": "https://file.hgeuz.cn/stream/eJwANwDI_wJVZgVKIIrU0ECux-GJ1PSt38ahythCqsH-r9TAQ4rj5F94rOjbQKjk063xyIX2z3hfeGcIHF4BAAD__5DtISY.?ts=1786282416&sign=258808e0dfe8a39ef584d0612e1a457f",
"reason": null
}
},
{
"spider": "咕咕动漫",
"file": "咕咕动漫.txt",
"success": false,
"failed_stage": "url_check",
"error": "不支持的地址协议: empty",
"traceback": null,
"timings_ms": {
"module_load": 18.256,
"init": 0.005,
"home": 585.054,
"category": 518.6,
"detail": 524.449,
"player": 1999.903,
"url_check": 0.073,
"total": 5973.058
},
"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": 4.251,
"init": 0.001,
"home": 0.001,
"category": 698.662,
"detail": 0.0,
"player": 0.0,
"url_check": 0.0,
"total": 1994.509
},
"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": 7.027,
"init": 0.001,
"home": 0.001,
"category": 783.038,
"detail": 1428.888,
"player": 1142.809,
"url_check": 325.293,
"total": 7527.965
},
"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": 10.17,
"init": 0.005,
"home": 0.001,
"category": 1348.064,
"detail": 445.328,
"player": 0.004,
"url_check": 987.872,
"total": 2792.189
},
"counts": {
"classes": 6,
"category_videos": 72,
"detail_videos": 1,
"episodes": 2
},
"samples": {
"tid": "1",
"vod_id": "9740",
"flag": "百度#多多",
"play_id": "https://pan.baidu.com/s/1g76PXHMlVwuSMGTaDiNI-w?pwd=9527"
},
"player": {
"parse": 0,
"url": "https://pan.baidu.com/s/1g76PXHMlVwuSMGTaDiNI-w?pwd=9527",
"valid": true,
"reachable": true,
"status_code": 200,
"final_url": "https://pan.baidu.com/share/init?surl=g76PXHMlVwuSMGTaDiNI-w&pwd=9527",
"reason": null
}
},
{
"spider": "多瑙影视",
"file": "多瑙影视.txt",
"success": true,
"failed_stage": null,
"error": null,
"traceback": null,
"timings_ms": {
"module_load": 5.754,
"init": 0.001,
"home": 0.001,
"category": 1569.098,
"detail": 1151.627,
"player": 1198.173,
"url_check": 1140.471,
"total": 5065.792
},
"counts": {
"classes": 5,
"category_videos": 36,
"detail_videos": 1,
"episodes": 2
},
"samples": {
"tid": "1",
"vod_id": "388309",
"flag": "蓝光",
"play_id": "388309-3-1"
},
"player": {
"parse": 0,
"url": "https://vip.dytt-network.com/20260806/37305_55af80a1/index.m3u8",
"valid": true,
"reachable": true,
"status_code": 200,
"final_url": "https://vip.dytt-network.com/20260806/37305_55af80a1/index.m3u8",
"reason": null
}
},
{
"spider": "如意资源",
"file": "如意资源.txt",
"success": true,
"failed_stage": null,
"error": null,
"traceback": null,
"timings_ms": {
"module_load": 7.176,
"init": 0.001,
"home": 0.007,
"category": 900.829,
"detail": 1317.137,
"player": 0.005,
"url_check": 962.866,
"total": 4055.177
},
"counts": {
"classes": 6,
"category_videos": 20,
"detail_videos": 1,
"episodes": 2
},
"samples": {
"tid": "1",
"vod_id": "83657",
"flag": "ruyi",
"play_id": "https://svip.ryplay14.com/share/e25f50c93d321b7fdff05757de426238"
},
"player": {
"parse": 1,
"url": "https://svip.ryplay14.com/share/e25f50c93d321b7fdff05757de426238",
"valid": true,
"reachable": true,
"status_code": 200,
"final_url": "https://svip.ryplay14.com/share/e25f50c93d321b7fdff05757de426238",
"reason": null
}
},
{
"spider": "寻川4K",
"file": "寻川4K.txt",
"success": false,
"failed_stage": "home",
"error": "分类列表为空",
"traceback": null,
"timings_ms": {
"module_load": 10.257,
"init": 471.307,
"home": 514.925,
"category": 0.0,
"detail": 0.0,
"player": 0.0,
"url_check": 0.0,
"total": 996.682
},
"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.391,
"init": 0.001,
"home": 0.001,
"category": 266.128,
"detail": 264.877,
"player": 312.944,
"url_check": 1043.904,
"total": 4161.4
},
"counts": {
"classes": 6,
"category_videos": 48,
"detail_videos": 1,
"episodes": 2
},
"samples": {
"tid": "7",
"vod_id": "254849",
"flag": "小宝影院1",
"play_id": "254849/1/1"
},
"player": {
"parse": 0,
"url": "https://vip.dytt-network.com/20260808/37351_912527e6/index.m3u8",
"valid": true,
"reachable": true,
"status_code": 200,
"final_url": "https://vip.dytt-network.com/20260808/37351_912527e6/index.m3u8",
"reason": null
}
},
{
"spider": "山楂影视",
"file": "山楂影视.txt",
"success": true,
"failed_stage": null,
"error": null,
"traceback": null,
"timings_ms": {
"module_load": 7.386,
"init": 416.327,
"home": 437.041,
"category": 413.632,
"detail": 1521.789,
"player": 621.524,
"url_check": 979.004,
"total": 4398.498
},
"counts": {
"classes": 8,
"category_videos": 40,
"detail_videos": 1,
"episodes": 2
},
"samples": {
"tid": "M16",
"vod_id": "1319206",
"flag": "YK",
"play_id": "1319206@85@24811961@episode"
},
"player": {
"parse": "0",
"url": "https://v.youku.com/v_show/id_XNjU0NDA1ODA2NA==.html",
"valid": true,
"reachable": true,
"status_code": 200,
"final_url": "https://m.youku.com/video/id_XNjU0NDA1ODA2NA==",
"reason": null
}
},
{
"spider": "布布影视",
"file": "布布影视.txt",
"success": false,
"failed_stage": "url_check",
"error": "不支持的地址协议: empty",
"traceback": null,
"timings_ms": {
"module_load": 7.714,
"init": 0.001,
"home": 0.001,
"category": 782.177,
"detail": 864.249,
"player": 1018.452,
"url_check": 0.064,
"total": 6925.046
},
"counts": {
"classes": 4,
"category_videos": 24,
"detail_videos": 1,
"episodes": 2
},
"samples": {
"tid": "2",
"vod_id": "88894",
"flag": "3Q蓝光(40)",
"play_id": "JD2K@2@JD-2a060e228882d8d60021040fc98613b70"
},
"player": {
"parse": 0,
"url": "JD-2a060e228882d8d60021040fc98613b70",
"valid": false,
"reachable": false,
"status_code": null,
"final_url": "JD-2a060e228882d8d60021040fc98613b70",
"reason": "不支持的地址协议: empty"
}
},
{
"spider": "微观短剧",
"file": "微观短剧.txt",
"success": true,
"failed_stage": null,
"error": null,
"traceback": null,
"timings_ms": {
"module_load": 4.585,
"init": 0.024,
"home": 219.178,
"category": 229.917,
"detail": 289.395,
"player": 378.195,
"url_check": 216.868,
"total": 1339.18
},
"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=1786282417&sign=0fe4d759cf3883f2ab86c333724b9f39",
"valid": true,
"reachable": true,
"status_code": 200,
"final_url": "https://tv-video.cdn.drama.9ddm.com/C1/F6/C1F63C79CBF09E493F99B1E0824CEAB2.mp4?timestamp=1786282417&sign=0fe4d759cf3883f2ab86c333724b9f39",
"reason": null
}
},
{
"spider": "怀桑",
"file": "怀桑.txt",
"success": true,
"failed_stage": null,
"error": null,
"traceback": null,
"timings_ms": {
"module_load": 7.946,
"init": 0.007,
"home": 453.77,
"category": 207.506,
"detail": 177.38,
"player": 144.43,
"url_check": 4526.943,
"total": 5518.752
},
"counts": {
"classes": 8,
"category_videos": 30,
"detail_videos": 1,
"episodes": 2
},
"samples": {
"tid": "1",
"vod_id": "69916",
"flag": "线·伍",
"play_id": "parse_api=4a720977ebfe3f13296b548e51cc3355&url=E7NiCgMR55OKUqYDkfrHN56pG6CFjAeFWi2oF1gp/d0=&token=|不能错过的只有你2|1"
},
"player": {
"parse": 0,
"url": "http://110.42.49.74:2222/jp/api.php?token=ZY-c1a9q%2FFQEcgmDQtzSx%2FN1QixJ1t7L%2BnEEi%2FBXlf0GOmQ3Q&url=JP-146163-1307634&zy.m3u8",
"valid": true,
"reachable": true,
"status_code": 200,
"final_url": "https://ppvod011.blbtgg.com/splitOut/20260804/1365680/V20260804015132790561365680/index.m3u8?auth_key=1786282420-1e234ef42466479198900ddb94e2032f-0-62209c144b61127bdadf238ce6e69156",
"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 0x7dab18fd4d10>, '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 0x7dab18fd4d10>, '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 0x7dab18fd4d10>, '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 147, in homeContent\n File \"/home/harold/workspace/tvbox-resources/py/悯善.txt\", line 265, in _ensure_system_init\n File \"/home/harold/workspace/tvbox-resources/py/悯善.txt\", line 294, 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 0x7dab18fd4d10>, 'Connection to 113.31.180.218 timed out. (connect timeout=10)'))\n",
"timings_ms": {
"module_load": 7.198,
"init": 0.016,
"home": 10009.94,
"category": 0.0,
"detail": 0.0,
"player": 0.0,
"url_check": 0.0,
"total": 10020.294
},
"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.537,
"init": 0.001,
"home": 336.881,
"category": 329.337,
"detail": 359.822,
"player": 635.037,
"url_check": 123.098,
"total": 1790.354
},
"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.959,
"init": 0.001,
"home": 0.001,
"category": 880.214,
"detail": 696.324,
"player": 632.013,
"url_check": 5984.533,
"total": 8200.703
},
"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": 5.871,
"init": 0.001,
"home": 0.001,
"category": 473.114,
"detail": 542.614,
"player": 0.002,
"url_check": 572.141,
"total": 1594.534
},
"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.631,
"init": 0.006,
"home": 0.001,
"category": 1668.216,
"detail": 394.582,
"player": 0.009,
"url_check": 578.11,
"total": 2652.365
},
"counts": {
"classes": 7,
"category_videos": 72,
"detail_videos": 1,
"episodes": 1
},
"samples": {
"tid": "25",
"vod_id": "8427",
"flag": "115#木偶",
"play_id": "https://115cdn.com/s/sws4d6936dh?password=p903"
},
"player": {
"parse": 0,
"url": "https://115cdn.com/s/sws4d6936dh?password=p903",
"valid": true,
"reachable": true,
"status_code": 200,
"final_url": "https://115cdn.com/s/sws4d6936dh?password=p903",
"reason": null
}
},
{
"spider": "樱花动漫",
"file": "樱花动漫.txt",
"success": true,
"failed_stage": null,
"error": null,
"traceback": null,
"timings_ms": {
"module_load": 10.381,
"init": 0.001,
"home": 0.001,
"category": 1220.331,
"detail": 830.87,
"player": 745.538,
"url_check": 1869.421,
"total": 4677.181
},
"counts": {
"classes": 4,
"category_videos": 36,
"detail_videos": 1,
"episodes": 2
},
"samples": {
"tid": "guoman",
"vod_id": "890",
"flag": "高清",
"play_id": "/play/890-1-1/"
},
"player": {
"parse": 0,
"url": "https://cdn1.yzzyhd-play.com/20230925/702_a76644e3/index.m3u8",
"valid": true,
"reachable": true,
"status_code": 200,
"final_url": "https://cdn1.yzzyhd-play.com/20230925/702_a76644e3/index.m3u8",
"reason": null
}
},
{
"spider": "橘子TV",
"file": "橘子TV.txt",
"success": true,
"failed_stage": null,
"error": null,
"traceback": null,
"timings_ms": {
"module_load": 4.047,
"init": 546.673,
"home": 432.88,
"category": 450.886,
"detail": 464.419,
"player": 1350.965,
"url_check": 404.086,
"total": 3655.132
},
"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://tt0923.abc7722.com/m3u87/share/8623435/8818929/20260804/102945/1080/index.m3u8?sign=60ca5bd2946dfa503adcfccfe19f863c&t=1786282421",
"valid": true,
"reachable": true,
"status_code": 200,
"final_url": "https://tt0923.abc7722.com/m3u87/share/8623435/8818929/20260804/102945/1080/index.m3u8?sign=60ca5bd2946dfa503adcfccfe19f863c&t=1786282421",
"reason": null
}
},
{
"spider": "橘汁",
"file": "橘汁.txt",
"success": true,
"failed_stage": null,
"error": null,
"traceback": null,
"timings_ms": {
"module_load": 5.89,
"init": 569.218,
"home": 1595.07,
"category": 837.768,
"detail": 409.837,
"player": 393.713,
"url_check": 977.603,
"total": 5770.653
},
"counts": {
"classes": 7,
"category_videos": 21,
"detail_videos": 1,
"episodes": 2
},
"samples": {
"tid": "20",
"vod_id": "669622",
"flag": "S蓝光2K",
"play_id": "eyJ2b2RQbGF5RnJvbSI6ICJTSE5CIiwgInBsYXlVcmwiOiAiU0hOQi0xY2RkNjQzZjBmYzA0YTE0Y2U3ZTFiNzRkZGU0OGUzYSJ9"
},
"player": {
"parse": 0,
"url": "https://mt.wki8.com/shnb/f44d2803ae4e76223441c169ffdc0500.m3u8?token=4decd25d8ea1907abe9406c148255417&time=1786282422&SHNB.m3u8",
"valid": true,
"reachable": true,
"status_code": 200,
"final_url": "https://mt.wki8.com/shnb/f44d2803ae4e76223441c169ffdc0500.m3u8?token=4decd25d8ea1907abe9406c148255417&time=1786282422&SHNB.m3u8",
"reason": null
}
},
{
"spider": "次元城",
"file": "次元城.txt",
"success": false,
"failed_stage": "category",
"error": "分类视频列表为空",
"traceback": null,
"timings_ms": {
"module_load": 11.145,
"init": 0.001,
"home": 291.9,
"category": 312.027,
"detail": 0.0,
"player": 0.0,
"url_check": 0.0,
"total": 893.586
},
"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": 14.593,
"init": 0.006,
"home": 0.001,
"category": 658.435,
"detail": 270.514,
"player": 0.011,
"url_check": 990.524,
"total": 1934.807
},
"counts": {
"classes": 6,
"category_videos": 72,
"detail_videos": 1,
"episodes": 2
},
"samples": {
"tid": "1",
"vod_id": "32433",
"flag": "百度",
"play_id": "https://pan.baidu.com/s/1YHOHXzuuiNbSD9fKIAZCvA?pwd=8888"
},
"player": {
"parse": 0,
"url": "https://pan.baidu.com/s/1YHOHXzuuiNbSD9fKIAZCvA?pwd=8888",
"valid": true,
"reachable": true,
"status_code": 200,
"final_url": "https://pan.baidu.com/share/init?surl=YHOHXzuuiNbSD9fKIAZCvA&pwd=8888",
"reason": null
}
},
{
"spider": "毒蛇",
"file": "毒蛇.txt",
"success": true,
"failed_stage": null,
"error": null,
"traceback": null,
"timings_ms": {
"module_load": 5.826,
"init": 0.002,
"home": 0.001,
"category": 814.183,
"detail": 277.798,
"player": 295.541,
"url_check": 1513.33,
"total": 2907.741
},
"counts": {
"classes": 5,
"category_videos": 18,
"detail_videos": 1,
"episodes": 2
},
"samples": {
"tid": "1",
"vod_id": "366329",
"flag": "超清2",
"play_id": "366329-41-4841768"
},
"player": {
"parse": 0,
"url": "https://64.112.77.136:21302/data8/jvods/hls/dhz/151/150102/26080816/1_366329_4843437/1920/index.m3u8?appId=ds91&sign=9aa4bd4905aac21f658b73e4fd20e9e5&timestamp=1786280950&ref=0",
"valid": true,
"reachable": true,
"status_code": 200,
"final_url": "https://64.112.77.136:11302/data8/jvods/hls/dhz/151/150102/26080816/1_366329_4843437/1920/index.m3u8?appId=ds91&sign=9aa4bd4905aac21f658b73e4fd20e9e5&timestamp=1786280950&ref=0",
"reason": null
}
},
{
"spider": "沐辞4K",
"file": "沐辞4K.txt",
"success": false,
"failed_stage": "home",
"error": "分类列表为空",
"traceback": null,
"timings_ms": {
"module_load": 9.245,
"init": 130.182,
"home": 108.813,
"category": 0.0,
"detail": 0.0,
"player": 0.0,
"url_check": 0.0,
"total": 263.768
},
"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": 8.251,
"init": 0.001,
"home": 686.809,
"category": 501.149,
"detail": 414.346,
"player": 188.775,
"url_check": 394.999,
"total": 2195.328
},
"counts": {
"classes": 8,
"category_videos": 18,
"detail_videos": 1,
"episodes": 1
},
"samples": {
"tid": "65",
"vod_id": "41000273869",
"flag": "河马剧场",
"play_id": "41000273869@615168033"
},
"player": {
"parse": 0,
"url": "https://mfvideo.cbread.cn/1ab3e8f218d814b52f556e3aa137f8bf/6a79cb50/33/9x6/96x8/968x3/96837200014/615168033_1/615168033.720p.wzh26506V2.mp4",
"valid": true,
"reachable": true,
"status_code": 200,
"final_url": "https://mfvideo.cbread.cn/1ab3e8f218d814b52f556e3aa137f8bf/6a79cb50/33/9x6/96x8/968x3/96837200014/615168033_1/615168033.720p.wzh26506V2.mp4",
"reason": null
}
},
{
"spider": "泥视频",
"file": "泥视频.txt",
"success": true,
"failed_stage": null,
"error": null,
"traceback": null,
"timings_ms": {
"module_load": 5.586,
"init": 0.001,
"home": 0.001,
"category": 507.551,
"detail": 775.295,
"player": 729.636,
"url_check": 5329.132,
"total": 7347.842
},
"counts": {
"classes": 6,
"category_videos": 72,
"detail_videos": 1,
"episodes": 2
},
"samples": {
"tid": "1",
"vod_id": "125713",
"flag": "自营1线",
"play_id": "125713-1-1"
},
"player": {
"parse": 0,
"url": "https://y6fb.vhmzy.com/videos/202608/08/6a770542a1ac7ead0d13b277/a0887c/index.m3u8",
"valid": true,
"reachable": true,
"status_code": 200,
"final_url": "https://y6fb.vhmzy.com/videos/202608/08/6a770542a1ac7ead0d13b277/a0887c/index.m3u8",
"reason": null
}
},
{
"spider": "海纳TV",
"file": "海纳TV.txt",
"success": false,
"failed_stage": "category",
"error": "分类视频列表为空",
"traceback": null,
"timings_ms": {
"module_load": 5.839,
"init": 0.001,
"home": 10017.727,
"category": 10016.86,
"detail": 0.0,
"player": 0.0,
"url_check": 0.0,
"total": 30058.782
},
"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.134,
"init": 238.163,
"home": 304.117,
"category": 0.0,
"detail": 0.0,
"player": 0.0,
"url_check": 0.0,
"total": 551.712
},
"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.34,
"init": 0.001,
"home": 0.001,
"category": 636.853,
"detail": 595.886,
"player": 0.004,
"url_check": 970.749,
"total": 2209.402
},
"counts": {
"classes": 5,
"category_videos": 48,
"detail_videos": 1,
"episodes": 2
},
"samples": {
"tid": "1",
"vod_id": "3644",
"flag": "百度",
"play_id": "https://pan.baidu.com/s/1W001SuoN53eVKUlyCSmzRg?pwd=44xp"
},
"player": {
"parse": 0,
"url": "https://pan.baidu.com/s/1W001SuoN53eVKUlyCSmzRg?pwd=44xp",
"valid": true,
"reachable": true,
"status_code": 200,
"final_url": "https://pan.baidu.com/share/init?surl=W001SuoN53eVKUlyCSmzRg&pwd=44xp",
"reason": null
}
},
{
"spider": "潮流APP",
"file": "潮流APP.txt",
"success": true,
"failed_stage": null,
"error": null,
"traceback": null,
"timings_ms": {
"module_load": 5.368,
"init": 0.003,
"home": 466.574,
"category": 478.523,
"detail": 470.32,
"player": 293.809,
"url_check": 95.477,
"total": 1810.899
},
"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=1786282422103&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=1786282422103&url=NBY-c6d046002ed1d767bee10e93ee7f1ff8.m3u8",
"reason": null
}
},
{
"spider": "灯泡影视",
"file": "灯泡影视.txt",
"success": true,
"failed_stage": null,
"error": null,
"traceback": null,
"timings_ms": {
"module_load": 5.785,
"init": 0.001,
"home": 0.001,
"category": 1666.708,
"detail": 1443.326,
"player": 0.005,
"url_check": 615.543,
"total": 3732.037
},
"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": 5.745,
"init": 0.001,
"home": 341.893,
"category": 267.484,
"detail": 315.636,
"player": 272.824,
"url_check": 246.428,
"total": 1452.022
},
"counts": {
"classes": 5,
"category_videos": 12,
"detail_videos": 1,
"episodes": 2
},
"samples": {
"tid": "1",
"vod_id": "3644",
"flag": "夸克网盘",
"play_id": "/play/3644-1-1.html"
},
"player": {
"parse": 0,
"url": "https://pan.quark.cn/s/eab9fb89f7ad",
"valid": true,
"reachable": true,
"status_code": 200,
"final_url": "https://pan.quark.cn/s/eab9fb89f7ad",
"reason": null
}
},
{
"spider": "爱壹帆",
"file": "爱壹帆.txt",
"success": false,
"failed_stage": "category",
"error": "分类视频列表为空",
"traceback": null,
"timings_ms": {
"module_load": 5.525,
"init": 0.001,
"home": 0.001,
"category": 10003.905,
"detail": 10012.122,
"player": 0.0,
"url_check": 0.0,
"total": 21395.445
},
"counts": {
"classes": 4,
"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": 13.902,
"init": 0.021,
"home": 3780.337,
"category": 452.154,
"detail": 190.463,
"player": 0.002,
"url_check": 142.946,
"total": 4580.917
},
"counts": {
"classes": 11,
"category_videos": 60,
"detail_videos": 1,
"episodes": 1
},
"samples": {
"tid": "pcw:1",
"vod_id": "pcw:1$8294094056251500",
"flag": "爱奇艺",
"play_id": "http://www.iqiyi.com/v_28eaeg97d34.html"
},
"player": {
"parse": 1,
"url": "http://www.iqiyi.com/v_28eaeg97d34.html",
"valid": true,
"reachable": true,
"status_code": 200,
"final_url": "https://www.iqiyi.com/v_28eaeg97d34.html",
"reason": null
}
},
{
"spider": "片库",
"file": "片库.txt",
"success": true,
"failed_stage": null,
"error": null,
"traceback": null,
"timings_ms": {
"module_load": 10.629,
"init": 0.13,
"home": 0.001,
"category": 1459.127,
"detail": 0.002,
"player": 0.001,
"url_check": 113.696,
"total": 1584.818
},
"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": 12.219,
"init": 0.002,
"home": 0.004,
"category": 405.769,
"detail": 2249.89,
"player": 1773.248,
"url_check": 299.896,
"total": 4742.887
},
"counts": {
"classes": 6,
"category_videos": 48,
"detail_videos": 1,
"episodes": 1
},
"samples": {
"tid": "index",
"vod_id": "148428",
"flag": "独播库",
"play_id": "148428-1-1"
},
"player": {
"parse": 0,
"url": "https://vid.dbokutv.com/20260728/ppotb62-S71lT2yliZApDBSvkYzBsrmD3fpCJ4nBsHcTcyo5xOy6ejUNHvBJ0nBJ0pDqGrC38mHYvjS34/chunklist.m3u8",
"valid": true,
"reachable": true,
"status_code": 200,
"final_url": "https://vid.dbokutv.com/20260728/ppotb62-S71lT2yliZApDBSvkYzBsrmD3fpCJ4nBsHcTcyo5xOy6ejUNHvBJ0nBJ0pDqGrC38mHYvjS34/chunklist.m3u8",
"reason": null
}
},
{
"spider": "猫猫4K",
"file": "猫猫4K.txt",
"success": true,
"failed_stage": null,
"error": null,
"traceback": null,
"timings_ms": {
"module_load": 18.727,
"init": 150.07,
"home": 356.48,
"category": 244.616,
"detail": 153.525,
"player": 151.058,
"url_check": 906.036,
"total": 5878.747
},
"counts": {
"classes": 5,
"category_videos": 20,
"detail_videos": 1,
"episodes": 2
},
"samples": {
"tid": "2",
"vod_id": "199709",
"flag": "火猫备用R",
"play_id": "https://svip.ryplay14.com/20260808/17990_c5b7018f/index.m3u8@@@rym3u8"
},
"player": {
"parse": 0,
"url": "https://svip.ryplay14.com/20260808/17990_c5b7018f/index.m3u8",
"valid": true,
"reachable": true,
"status_code": 200,
"final_url": "https://svip.ryplay14.com/20260808/17990_c5b7018f/index.m3u8",
"reason": null
}
},
{
"spider": "王子4K",
"file": "王子4K.txt",
"success": true,
"failed_stage": null,
"error": null,
"traceback": null,
"timings_ms": {
"module_load": 5.121,
"init": 0.002,
"home": 545.871,
"category": 431.042,
"detail": 815.504,
"player": 0.008,
"url_check": 519.654,
"total": 2318.234
},
"counts": {
"classes": 5,
"category_videos": 30,
"detail_videos": 1,
"episodes": 2
},
"samples": {
"tid": "1",
"vod_id": "416762",
"flag": "HN线路",
"play_id": "HN线路@@direct@@,https://hn.bfvvs.com/play/aADMJ6ze/index.m3u8,token+,1,0"
},
"player": {
"parse": 0,
"url": "https://hn.bfvvs.com/play/aADMJ6ze/index.m3u8",
"valid": true,
"reachable": true,
"status_code": 200,
"final_url": "https://hn.bfvvs.com/play/aADMJ6ze/index.m3u8",
"reason": null
}
},
{
"spider": "玩偶哥哥",
"file": "玩偶哥哥.txt",
"success": false,
"failed_stage": "category",
"error": "分类视频列表为空",
"traceback": null,
"timings_ms": {
"module_load": 9.627,
"init": 0.004,
"home": 0.001,
"category": 1344.101,
"detail": 0.0,
"player": 0.0,
"url_check": 0.0,
"total": 2704.412
},
"counts": {
"classes": 8,
"category_videos": 0,
"detail_videos": 0,
"episodes": 0
},
"samples": {
"tid": "1",
"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": 43.22,
"init": 0.006,
"home": 4.012,
"category": 1393.743,
"detail": 500.975,
"player": 0.002,
"url_check": 1102.263,
"total": 4487.856
},
"counts": {
"classes": 11,
"category_videos": 72,
"detail_videos": 1,
"episodes": 2
},
"samples": {
"tid": "site_duoduo",
"vod_id": "site:duoduo:/index.php/vod/detail/id/9740.html",
"flag": "百度#多多",
"play_id": "https://pan.baidu.com/s/1g76PXHMlVwuSMGTaDiNI-w?pwd=9527"
},
"player": {
"parse": 0,
"url": "https://pan.baidu.com/s/1g76PXHMlVwuSMGTaDiNI-w?pwd=9527",
"valid": true,
"reachable": true,
"status_code": 200,
"final_url": "https://pan.baidu.com/share/init?surl=g76PXHMlVwuSMGTaDiNI-w&pwd=9527",
"reason": null
}
},
{
"spider": "瓜子",
"file": "瓜子.txt",
"success": true,
"failed_stage": null,
"error": null,
"traceback": null,
"timings_ms": {
"module_load": 9.166,
"init": 0.001,
"home": 0.017,
"category": 1421.633,
"detail": 1568.36,
"player": 531.985,
"url_check": 924.379,
"total": 4456.767
},
"counts": {
"classes": 5,
"category_videos": 30,
"detail_videos": 1,
"episodes": 1
},
"samples": {
"tid": "1",
"vod_id": "146711",
"flag": "1080",
"play_id": "vod_d_id=146711&vurl_id=4256492&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": 5.738,
"init": 88.578,
"home": 0.009,
"category": 758.796,
"detail": 0.0,
"player": 0.0,
"url_check": 0.0,
"total": 3687.2
},
"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": 8.245,
"init": 0.005,
"home": 0.001,
"category": 2801.257,
"detail": 2812.149,
"player": 926.375,
"url_check": 879.723,
"total": 7428.321
},
"counts": {
"classes": 5,
"category_videos": 24,
"detail_videos": 1,
"episodes": 1
},
"samples": {
"tid": "dianying",
"vod_id": "movie/6a786a158ee245ef81657246-40547.html",
"flag": "modum3u8",
"play_id": "{\"title\":\"第01集\",\"origin\":\"modum3u8\",\"page\":\"https://dyvip1.cc/movie/6a786a158ee245ef81657246/40547.html?origin=modum3u8&p=0\",\"vodName\":\"神兽猎局\",\"pic\":\"https://dyvip1.cc/img/id/6a786a158ee245ef81657246.jpg\"}"
},
"player": {
"parse": 0,
"url": "https://play.modujx17.com/20260809/A1vwvDG5/index.m3u8",
"valid": true,
"reachable": true,
"status_code": 200,
"final_url": "https://play.modujx17.com/20260809/A1vwvDG5/index.m3u8",
"reason": null
}
},
{
"spider": "电影天堂",
"file": "电影天堂.txt",
"success": true,
"failed_stage": null,
"error": null,
"traceback": null,
"timings_ms": {
"module_load": 6.991,
"init": 173.228,
"home": 347.865,
"category": 126.568,
"detail": 149.169,
"player": 157.187,
"url_check": 611.412,
"total": 1573.253
},
"counts": {
"classes": 9,
"category_videos": 21,
"detail_videos": 1,
"episodes": 2
},
"samples": {
"tid": "2",
"vod_id": "94932",
"flag": "超级无敌4K",
"play_id": "eyJ2b2RQbGF5RnJvbSI6ICJLc3ZpZGVvIiwgInBsYXlVcmwiOiAiS3N2aWRlby1hZWQ0NjNmYTc2ZmZiODM0ZjFhYTMzODE0ZjIzMGY1MDFmOWVkZTIxMThkZGE3MDQyMjBkMDkyM2ZkM2M2NDcxMTA5M2VkYzhkYzVmM2FkNjIzOTlhZjFiYjZlYjk4NTQyMjI4ZmY0NjRmZWNmOTEyZjE0OWQ2YWNlODBjZWMwOWI5YjlmZDI2NzgxMDQ1NmZjYjQ0ZDc0NmI0OGZjZmQ4MjQ5YmQyYzIxYTYxMDIwNGRmMzM0MzhhYTlhYzhlMWEzZmQ4ZmJiZjQ5YzFhOGMxZmEyMDZkNTFjNWIwMjI2MDM4ZmEyYWNmMzcwZGY5ZmNkOTVjMmNmMTgwOTY4YTUxIn0="
},
"player": {
"parse": 0,
"url": "https://onvideo-safety.ssrcdn.com/ksc2/HWM2lT_Ry3cD0fXJzW_EE3JkLxVk66-xfbYyXCarKwUsIhUU5PEnzpGIGcjVmAbil8E4IOLhF7MMYq661vSHbjuHgtehcMWwLeD5pJS8OmFSY6X55s5uN4e6HxElLqQMeXvyrF-IE7Lyef8xYPZfH1ctbKQ2JoVRqAAn9K1IvQzWtCfuB9xbnkxE9tEVj2BN.m3u8?pkey=AAWwfrtxU8Sqh0O6OIBb8Mh9GuuvGV_mQUrisZ2fk_fkgQ0fc3p8YyOaKlapUZvfH0nRE2X6GxycseASE9PM0Ch-gRq2tHEL9rhnN2sXpCMu1p2bp6Zwb8O01qLkqcuBHgs",
"valid": true,
"reachable": true,
"status_code": 200,
"final_url": "https://onvideo-safety.ssrcdn.com/ksc2/HWM2lT_Ry3cD0fXJzW_EE3JkLxVk66-xfbYyXCarKwUsIhUU5PEnzpGIGcjVmAbil8E4IOLhF7MMYq661vSHbjuHgtehcMWwLeD5pJS8OmFSY6X55s5uN4e6HxElLqQMeXvyrF-IE7Lyef8xYPZfH1ctbKQ2JoVRqAAn9K1IvQzWtCfuB9xbnkxE9tEVj2BN.m3u8?pkey=AAWwfrtxU8Sqh0O6OIBb8Mh9GuuvGV_mQUrisZ2fk_fkgQ0fc3p8YyOaKlapUZvfH0nRE2X6GxycseASE9PM0Ch-gRq2tHEL9rhnN2sXpCMu1p2bp6Zwb8O01qLkqcuBHgs",
"reason": null
}
},
{
"spider": "百度短剧",
"file": "百度短剧.txt",
"success": true,
"failed_stage": null,
"error": null,
"traceback": null,
"timings_ms": {
"module_load": 7.645,
"init": 0.001,
"home": 422.827,
"category": 229.967,
"detail": 544.724,
"player": 302.882,
"url_check": 68.311,
"total": 1577.578
},
"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-hnb",
"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-hnb",
"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 232, in homeContent\n File \"/home/harold/workspace/tvbox-resources/py/盘Ta.txt\", line 72, 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": 5.333,
"init": 0.001,
"home": 3551.103,
"category": 0.0,
"detail": 0.0,
"player": 0.0,
"url_check": 0.0,
"total": 3559.076
},
"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": 8.394,
"init": 0.001,
"home": 0.001,
"category": 278.497,
"detail": 252.247,
"player": 265.563,
"url_check": 1016.519,
"total": 1821.838
},
"counts": {
"classes": 4,
"category_videos": 20,
"detail_videos": 1,
"episodes": 2
},
"samples": {
"tid": "/",
"vod_id": "132062",
"flag": "百度1",
"play_id": "push://https://www.seedhub.cc/link_start/?redirect_to=pan_id_731550&movie_title=❤️❤️❤️【这一秒过火】【1080P/超清】【中字】流媒体正式版 更新于 2天前"
},
"player": {
"parse": 0,
"url": "https://pan.baidu.com/s/167GK58tosIlsTBmUg68CNA?pwd=tb9x",
"valid": true,
"reachable": true,
"status_code": 200,
"final_url": "https://pan.baidu.com/share/init?surl=67GK58tosIlsTBmUg68CNA&pwd=tb9x",
"reason": null
}
},
{
"spider": "盘链",
"file": "盘链.txt",
"success": true,
"failed_stage": null,
"error": null,
"traceback": null,
"timings_ms": {
"module_load": 8.923,
"init": 0.094,
"home": 0.001,
"category": 1916.801,
"detail": 399.789,
"player": 1322.606,
"url_check": 448.991,
"total": 4097.915
},
"counts": {
"classes": 5,
"category_videos": 30,
"detail_videos": 1,
"episodes": 2
},
"samples": {
"tid": "0",
"vod_id": "67447",
"flag": "百度",
"play_id": "push://https://www.xn--vzy265d.cc/api/go.php?t=DC0TuXkUvtdARJC-bnINd9z0nOM94TpeX67Dv9RgqrjhRHg_6fAczGmgoKzbZntmrulS--0RvusphqBjdNNwIEFieJFIpstoLNde1tEse9In4memjwDbhbZNM92Vd3gJjRb1bSwZSysV2lxrFN_ebRXJQJdGyifyaLCEKPGdh6za42uaWECmWhipaLQc4crEO5MMKF2pLiJgER05S8olqGfFMOTO8GhfZcSGMglKZHI"
},
"player": {
"parse": 0,
"url": "https://pan.baidu.com/wap/init?surl=2mZpJGwUu6B-4VkaQiRc_g&pwd=yq6w",
"valid": true,
"reachable": true,
"status_code": 200,
"final_url": "https://pan.baidu.com/wap/init?surl=2mZpJGwUu6B-4VkaQiRc_g&pwd=yq6w",
"reason": null
}
},
{
"spider": "短剧优选",
"file": "短剧优选.txt",
"success": true,
"failed_stage": null,
"error": null,
"traceback": null,
"timings_ms": {
"module_load": 27.893,
"init": 2092.499,
"home": 375.292,
"category": 574.949,
"detail": 276.559,
"player": 0.003,
"url_check": 121.373,
"total": 3469.424
},
"counts": {
"classes": 13,
"category_videos": 24,
"detail_videos": 1,
"episodes": 1
},
"samples": {
"tid": "星芽",
"vod_id": "星芽@51",
"flag": "星芽短剧",
"play_id": "http://qcapp.xingya.com.cn/wz_mp41208jinshen1.mp4?sign=fd2484f694d03e3a90e90f799ad1e644&t=6a7b24bd"
},
"player": {
"parse": 0,
"url": "http://qcapp.xingya.com.cn/wz_mp41208jinshen1.mp4?sign=fd2484f694d03e3a90e90f799ad1e644&t=6a7b24bd",
"valid": true,
"reachable": true,
"status_code": 200,
"final_url": "http://ctyunhljdcdn.qnqcdn.net/qcapp.xingya.com.cn/wz_mp41208jinshen1.mp4?sign=fd2484f694d03e3a90e90f799ad1e644&t=6a7b24bd&nb57c47eq8=offline",
"reason": null
}
},
{
"spider": "短剧网",
"file": "短剧网.txt",
"success": true,
"failed_stage": null,
"error": null,
"traceback": null,
"timings_ms": {
"module_load": 9.322,
"init": 0.001,
"home": 0.001,
"category": 285.2,
"detail": 316.822,
"player": 0.006,
"url_check": 1087.639,
"total": 1699.646
},
"counts": {
"classes": 4,
"category_videos": 20,
"detail_videos": 1,
"episodes": 2
},
"samples": {
"tid": "2",
"vod_id": "70264",
"flag": "百度",
"play_id": "https://pan.baidu.com/s/1H3y5G4D6kBx8XyiiX9TKGw?pwd=6666"
},
"player": {
"parse": 0,
"url": "https://pan.baidu.com/s/1H3y5G4D6kBx8XyiiX9TKGw?pwd=6666",
"valid": true,
"reachable": true,
"status_code": 200,
"final_url": "https://pan.baidu.com/share/init?surl=H3y5G4D6kBx8XyiiX9TKGw&pwd=6666",
"reason": null
}
},
{
"spider": "磁力熊",
"file": "磁力熊.txt",
"success": true,
"failed_stage": null,
"error": null,
"traceback": null,
"timings_ms": {
"module_load": 5.784,
"init": 0.003,
"home": 0.005,
"category": 751.578,
"detail": 766.688,
"player": 0.003,
"url_check": 0.061,
"total": 1524.498
},
"counts": {
"classes": 24,
"category_videos": 16,
"detail_videos": 1,
"episodes": 1
},
"samples": {
"tid": "movie",
"vod_id": "movie/4739",
"flag": "磁力·1080P",
"play_id": "magnet:?xt=urn:btih:9FFFD9442806CFC8EBC3783E0A95DA425D7552B8"
},
"player": {
"parse": 0,
"url": "magnet:?xt=urn:btih:9FFFD9442806CFC8EBC3783E0A95DA425D7552B8",
"valid": true,
"reachable": null,
"status_code": null,
"final_url": "magnet:?xt=urn:btih:9FFFD9442806CFC8EBC3783E0A95DA425D7552B8",
"reason": "非 HTTP 地址,按协议格式通过"
}
},
{
"spider": "移动4K",
"file": "移动4K.txt",
"success": true,
"failed_stage": null,
"error": null,
"traceback": null,
"timings_ms": {
"module_load": 3.357,
"init": 0.013,
"home": 0.001,
"category": 484.859,
"detail": 598.627,
"player": 0.002,
"url_check": 141.215,
"total": 1228.944
},
"counts": {
"classes": 3,
"category_videos": 9,
"detail_videos": 1,
"episodes": 1
},
"samples": {
"tid": "1",
"vod_id": "562",
"flag": "移动云盘",
"play_id": "https://yun.139.com/shareweb/%23/w/i/2wFGtFpN8a064"
},
"player": {
"parse": 0,
"url": "https://yun.139.com/shareweb/#/w/i/2wFGtFpN8a064",
"valid": true,
"reachable": true,
"status_code": 200,
"final_url": "https://yun.139.com/shareweb/#/w/i/2wFGtFpN8a064",
"reason": null
}
},
{
"spider": "糯米",
"file": "糯米.txt",
"success": false,
"failed_stage": "category",
"error": "分类视频列表为空",
"traceback": null,
"timings_ms": {
"module_load": 6.478,
"init": 0.001,
"home": 250.555,
"category": 1236.553,
"detail": 0.0,
"player": 0.0,
"url_check": 0.0,
"total": 1723.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": false,
"failed_stage": "player",
"error": "playerContent 未返回播放地址",
"traceback": null,
"timings_ms": {
"module_load": 3.014,
"init": 0.0,
"home": 367.238,
"category": 610.207,
"detail": 0.01,
"player": 664.968,
"url_check": 0.0,
"total": 2711.015
},
"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": 7.134,
"init": 0.001,
"home": 0.001,
"category": 1737.073,
"detail": 0.0,
"player": 0.0,
"url_check": 0.0,
"total": 3464.749
},
"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": 8.455,
"init": 0.001,
"home": 71.032,
"category": 296.052,
"detail": 720.739,
"player": 0.003,
"url_check": 164.554,
"total": 1261.66
},
"counts": {
"classes": 7,
"category_videos": 12,
"detail_videos": 1,
"episodes": 1
},
"samples": {
"tid": "choice",
"vod_id": "choice$mzc00200seo6p1w",
"flag": "腾讯视频",
"play_id": "https://v.qq.com/x/cover/mzc00200seo6p1w/c4102rnuw55.html"
},
"player": {
"parse": 1,
"url": "https://v.qq.com/x/cover/mzc00200seo6p1w/c4102rnuw55.html",
"valid": true,
"reachable": true,
"status_code": 200,
"final_url": "https://v.qq.com/x/cover/mzc00200seo6p1w/c4102rnuw55.html",
"reason": null
}
},
{
"spider": "至臻",
"file": "至臻.txt",
"success": true,
"failed_stage": null,
"error": null,
"traceback": null,
"timings_ms": {
"module_load": 8.65,
"init": 0.004,
"home": 0.0,
"category": 1671.435,
"detail": 1113.088,
"player": 0.003,
"url_check": 1642.837,
"total": 4438.218
},
"counts": {
"classes": 7,
"category_videos": 72,
"detail_videos": 1,
"episodes": 2
},
"samples": {
"tid": "26",
"vod_id": "15857",
"flag": "百度#至臻",
"play_id": "https://pan.baidu.com/s/1K6Oj81F8ORorY6TVNs76pw?pwd=t22p"
},
"player": {
"parse": 0,
"url": "https://pan.baidu.com/s/1K6Oj81F8ORorY6TVNs76pw?pwd=t22p",
"valid": true,
"reachable": true,
"status_code": 200,
"final_url": "https://pan.baidu.com/share/init?surl=K6Oj81F8ORorY6TVNs76pw&pwd=t22p",
"reason": null
}
},
{
"spider": "苹果",
"file": "苹果.txt",
"success": true,
"failed_stage": null,
"error": null,
"traceback": null,
"timings_ms": {
"module_load": 5.231,
"init": 228.512,
"home": 356.342,
"category": 125.886,
"detail": 156.081,
"player": 153.947,
"url_check": 45.071,
"total": 1071.732
},
"counts": {
"classes": 9,
"category_videos": 21,
"detail_videos": 1,
"episodes": 2
},
"samples": {
"tid": "2",
"vod_id": "94932",
"flag": "超级无敌4K",
"play_id": "eyJ2b2RQbGF5RnJvbSI6ICJLc3ZpZGVvIiwgInBsYXlVcmwiOiAiS3N2aWRlby1hZWQ0NjNmYTc2ZmZiODM0ZjFhYTMzODE0ZjIzMGY1MDFmOWVkZTIxMThkZGE3MDQyMjBkMDkyM2ZkM2M2NDcxMTA5M2VkYzhkYzVmM2FkNjIzOTlhZjFiYjZlYjk4NTQyMjI4ZmY0NjRmZWNmOTEyZjE0OWQ2YWNlODBjZWMwOWI5YjlmZDI2NzgxMDQ1NmZjYjQ0ZDc0NmI0OGZjZmQ4MjQ5YmQyYzIxYTYxMDIwNGRmMzM0MzhhYTlhYzhlMWEzZmQ4ZmJiZjQ5YzFhOGMxZmEyMDZkNTFjNWIwMjI2MDM4ZmEyYWNmMzcwZGY5ZmNkOTVjMmNmMTgwOTY4YTUxIn0="
},
"player": {
"parse": 0,
"url": "https://onvideo-safety.ssrcdn.com/ksc2/HWM2lT_Ry3cD0fXJzW_EE3JkLxVk66-xfbYyXCarKwUsIhUU5PEnzpGIGcjVmAbil8E4IOLhF7MMYq661vSHbjuHgtehcMWwLeD5pJS8OmFSY6X55s5uN4e6HxElLqQMeXvyrF-IE7Lyef8xYPZfH1ctbKQ2JoVRqAAn9K1IvQzWtCfuB9xbnkxE9tEVj2BN.m3u8?pkey=AAWwfrtxU8Sqh0O6OIBb8Mh9GuuvGV_mQUrisZ2fk_fkgQ0fc3p8YyOaKlapUZvfH0nRE2X6GxycseASE9PM0Ch-gRq2tHEL9rhnN2sXpCMu1p2bp6Zwb8O01qLkqcuBHgs",
"valid": true,
"reachable": true,
"status_code": 200,
"final_url": "https://onvideo-safety.ssrcdn.com/ksc2/HWM2lT_Ry3cD0fXJzW_EE3JkLxVk66-xfbYyXCarKwUsIhUU5PEnzpGIGcjVmAbil8E4IOLhF7MMYq661vSHbjuHgtehcMWwLeD5pJS8OmFSY6X55s5uN4e6HxElLqQMeXvyrF-IE7Lyef8xYPZfH1ctbKQ2JoVRqAAn9K1IvQzWtCfuB9xbnkxE9tEVj2BN.m3u8?pkey=AAWwfrtxU8Sqh0O6OIBb8Mh9GuuvGV_mQUrisZ2fk_fkgQ0fc3p8YyOaKlapUZvfH0nRE2X6GxycseASE9PM0Ch-gRq2tHEL9rhnN2sXpCMu1p2bp6Zwb8O01qLkqcuBHgs",
"reason": null
}
},
{
"spider": "茶杯狐",
"file": "茶杯狐.txt",
"success": false,
"failed_stage": "home",
"error": "分类列表为空",
"traceback": null,
"timings_ms": {
"module_load": 8.452,
"init": 0.0,
"home": 256.63,
"category": 0.0,
"detail": 0.0,
"player": 0.0,
"url_check": 0.0,
"total": 265.418
},
"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 279, in homeContent\n File \"/home/harold/workspace/tvbox-resources/py/薯条.txt\", line 251, 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": 5.527,
"init": 15018.046,
"home": 0.276,
"category": 0.0,
"detail": 0.0,
"player": 0.0,
"url_check": 0.0,
"total": 15024.455
},
"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": 9.802,
"init": 0.007,
"home": 0.001,
"category": 734.021,
"detail": 3125.857,
"player": 0.09,
"url_check": 209.196,
"total": 4080.009
},
"counts": {
"classes": 7,
"category_videos": 72,
"detail_videos": 1,
"episodes": 2
},
"samples": {
"tid": "1",
"vod_id": "460792",
"flag": "夸克#虎斑",
"play_id": "https://pan.quark.cn/s/b33b387a6ace"
},
"player": {
"parse": 0,
"url": "https://pan.quark.cn/s/b33b387a6ace",
"valid": true,
"reachable": true,
"status_code": 200,
"final_url": "https://pan.quark.cn/s/b33b387a6ace",
"reason": null
}
},
{
"spider": "蜗牛",
"file": "蜗牛.txt",
"success": false,
"failed_stage": "detail",
"error": "详情缺少播放源或播放列表",
"traceback": null,
"timings_ms": {
"module_load": 6.451,
"init": 602.083,
"home": 0.004,
"category": 444.202,
"detail": 371.744,
"player": 0.0,
"url_check": 0.0,
"total": 2238.961
},
"counts": {
"classes": 4,
"category_videos": 36,
"detail_videos": 1,
"episodes": 0
},
"samples": {
"tid": "2",
"vod_id": "34991",
"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.01,
"init": 0.005,
"home": 0.001,
"category": 2127.979,
"detail": 5362.626,
"player": 0.003,
"url_check": 1091.668,
"total": 8591.904
},
"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.408,
"init": 0.001,
"home": 1036.638,
"category": 510.758,
"detail": 0.008,
"player": 0.004,
"url_check": 298.286,
"total": 1849.452
},
"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": 5.637,
"init": 0.001,
"home": 0.001,
"category": 1564.065,
"detail": 603.895,
"player": 16660.523,
"url_check": 1093.653,
"total": 19928.941
},
"counts": {
"classes": 4,
"category_videos": 36,
"detail_videos": 1,
"episodes": 2
},
"samples": {
"tid": "1",
"vod_id": "423362",
"flag": "蓝光专线4",
"play_id": "play/423362-0-0"
},
"player": {
"parse": 0,
"url": "https://play.phimgood.com/20260807/29835_dfa4c5b2/index.m3u8",
"valid": true,
"reachable": true,
"status_code": 200,
"final_url": "https://play.phimgood.com/20260807/29835_dfa4c5b2/index.m3u8",
"reason": null
}
},
{
"spider": "观影",
"file": "观影.txt",
"success": false,
"failed_stage": "category",
"error": "分类视频列表为空",
"traceback": null,
"timings_ms": {
"module_load": 12.038,
"init": 0.345,
"home": 0.001,
"category": 0.005,
"detail": 0.0,
"player": 0.0,
"url_check": 0.0,
"total": 13.346
},
"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 74, in homeContent\n File \"/home/harold/workspace/tvbox-resources/py/视界.txt\", line 402, in _ensure_init_payload\n File \"/home/harold/workspace/tvbox-resources/py/视界.txt\", line 201, in _post_api\nrequests.exceptions.ReadTimeout: HTTPSConnectionPool(host='cms140.yhg.one', port=443): Read timed out. (read timeout=10)\n",
"timings_ms": {
"module_load": 6.491,
"init": 0.001,
"home": 10012.805,
"category": 0.0,
"detail": 0.0,
"player": 0.0,
"url_check": 0.0,
"total": 10020.776
},
"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": 10.249,
"init": 0.028,
"home": 884.86,
"category": 869.885,
"detail": 3110.221,
"player": 0.002,
"url_check": 870.424,
"total": 5746.239
},
"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": 5.627,
"init": 0.001,
"home": 0.001,
"category": 24901.45,
"detail": 0.0,
"player": 0.0,
"url_check": 0.0,
"total": 27171.448
},
"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": 6.548,
"init": 0.001,
"home": 0.001,
"category": 254.978,
"detail": 655.526,
"player": 7108.878,
"url_check": 938.565,
"total": 32655.001
},
"counts": {
"classes": 7,
"category_videos": 16,
"detail_videos": 1,
"episodes": 2
},
"samples": {
"tid": "tv",
"vod_id": "39031147",
"flag": "【无广①】",
"play_id": "39031147-1-1"
},
"player": {
"parse": 0,
"url": "https://cdn.yzzyvip-29.com/20260704/25457_2ff71cb9/index.m3u8",
"valid": true,
"reachable": true,
"status_code": 200,
"final_url": "https://cdn.yzzyvip-29.com/20260704/25457_2ff71cb9/index.m3u8",
"reason": null
}
},
{
"spider": "酷我听书",
"file": "酷我听书.txt",
"success": true,
"failed_stage": null,
"error": null,
"traceback": null,
"timings_ms": {
"module_load": 5.252,
"init": 0.0,
"home": 376.82,
"category": 114.099,
"detail": 3554.597,
"player": 148.078,
"url_check": 33.932,
"total": 4233.708
},
"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/15413d4f535a52f8fbf51e65e4fd1bc5/6a7881c1/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/15413d4f535a52f8fbf51e65e4fd1bc5/6a7881c1/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": 8.191,
"init": 414.201,
"home": 257.008,
"category": 219.411,
"detail": 253.139,
"player": 383.354,
"url_check": 76.822,
"total": 1613.624
},
"counts": {
"classes": 12,
"category_videos": 15,
"detail_videos": 1,
"episodes": 1
},
"samples": {
"tid": "recommend",
"vod_id": "636437735",
"flag": "酷狗音乐",
"play_id": "636437735"
},
"player": {
"parse": 0,
"url": "http://fsdg360.tx.kugou.com/202608092133/2f60cd6cd52862bd4a13805f9ec664f7/v3/8bf9a3090f9d745eebd7fb62831c2011/yp/p_0_960121/ap1013_us0_mic85f71c379c462618de1399950957c33_pi6101_mx636437735_qu128_s833624334.mp3?ft=car_203559_10049&fts=b05bb02d44717442054bac7624ed9a29&ext=.mp3",
"valid": true,
"reachable": true,
"status_code": 200,
"final_url": "http://fsdg360.tx.kugou.com/202608092133/2f60cd6cd52862bd4a13805f9ec664f7/v3/8bf9a3090f9d745eebd7fb62831c2011/yp/p_0_960121/ap1013_us0_mic85f71c379c462618de1399950957c33_pi6101_mx636437735_qu128_s833624334.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.772,
"init": 0.001,
"home": 3099.71,
"category": 3361.097,
"detail": 273.324,
"player": 269.052,
"url_check": 1192.394,
"total": 8201.454
},
"counts": {
"classes": 5,
"category_videos": 30,
"detail_videos": 1,
"episodes": 1
},
"samples": {
"tid": "1",
"vod_id": "146173",
"flag": "金牌线路",
"play_id": "146173@1307714"
},
"player": {
"parse": 0,
"url": "https://ppvod011.blbtgg.com/splitOut/20260804/1365903/V20260804160339799121365903/index.m3u8?auth_key=1786282437-a4a28a4c7d764eca94c0ddd494e179af-0-e1811f6e5dfb8bee2e41c4d32ff61059",
"valid": true,
"reachable": true,
"status_code": 200,
"final_url": "https://ppvod011.blbtgg.com/splitOut/20260804/1365903/V20260804160339799121365903/index.m3u8?auth_key=1786282437-a4a28a4c7d764eca94c0ddd494e179af-0-e1811f6e5dfb8bee2e41c4d32ff61059",
"reason": null
}
},
{
"spider": "长泽",
"file": "长泽.txt",
"success": true,
"failed_stage": null,
"error": null,
"traceback": null,
"timings_ms": {
"module_load": 10.143,
"init": 0.012,
"home": 154.643,
"category": 132.637,
"detail": 135.911,
"player": 0.025,
"url_check": 1940.646,
"total": 2374.641
},
"counts": {
"classes": 18,
"category_videos": 21,
"detail_videos": 1,
"episodes": 2
},
"samples": {
"tid": "20",
"vod_id": "93289",
"flag": "FF有广",
"play_id": "app88:WyJodHRwczovL3N1cGVyLmZmenktb25saW5lNi5jb20vMjAyNjA4MDcvMzgzMTFfYzVmNTY4OGEvaW5kZXgubTN1OCIsImZmbTN1OCIsIuacgOWQjuWtpOWxiyIsIjEiXQ"
},
"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": true,
"failed_stage": null,
"error": null,
"traceback": null,
"timings_ms": {
"module_load": 9.515,
"init": 0.008,
"home": 0.001,
"category": 21286.975,
"detail": 234.06,
"player": 0.007,
"url_check": 148.5,
"total": 21679.514
},
"counts": {
"classes": 5,
"category_videos": 72,
"detail_videos": 1,
"episodes": 1
},
"samples": {
"tid": "1",
"vod_id": "186145",
"flag": "夸克#闪电",
"play_id": "https://pan.quark.cn/s/4f43369270db"
},
"player": {
"parse": 0,
"url": "https://pan.quark.cn/s/4f43369270db",
"valid": true,
"reachable": true,
"status_code": 200,
"final_url": "https://pan.quark.cn/s/4f43369270db",
"reason": null
}
},
{
"spider": "雷鲸",
"file": "雷鲸.txt",
"success": true,
"failed_stage": null,
"error": null,
"traceback": null,
"timings_ms": {
"module_load": 5.668,
"init": 0.003,
"home": 0.004,
"category": 7533.18,
"detail": 7936.721,
"player": 0.004,
"url_check": 199.002,
"total": 15675.196
},
"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": 13.188,
"init": 0.007,
"home": 3813.775,
"category": 1753.442,
"detail": 8331.409,
"player": 1255.98,
"url_check": 543.268,
"total": 32852.725
},
"counts": {
"classes": 18,
"category_videos": 9,
"detail_videos": 1,
"episodes": 2
},
"samples": {
"tid": "1_5",
"vod_id": "D_15jH_IJQ15hxTz3cSL2",
"flag": "蓝光HDR",
"play_id": "D_15jH_IJQ15hxTz3cSL2|||jeD5NuA4OIFGmctSl9Tk|||sc_zpbeXXmDfbj_nSy5LcJX|||11"
},
"player": {
"parse": 0,
"url": "http://piccc.cdn.51touxiang.com/m3u8/dUcMOZjEyGfv4VE32Ps5Sgk6a4DWKg45uJslfOHG.m3u8?pid=muwkhYOp3qINkGvMALkIuwF1PRGLSohuJriecdU3W8c%3D&utk=u_bYstpjDewEfNg7Qfvwx1&uk=f0vRs0mWZ8Q4NeOaqnzptBzBCFA8hAHZaPEf9u6Y3cw%3D&spl=213&t=1786282463&sign=a233181eff51b6c74d075319fb38dfe8&ip=222.210.194.251",
"valid": true,
"reachable": true,
"status_code": 200,
"final_url": "http://piccc.cdn.51touxiang.com/m3u8/dUcMOZjEyGfv4VE32Ps5Sgk6a4DWKg45uJslfOHG.m3u8?pid=muwkhYOp3qINkGvMALkIuwF1PRGLSohuJriecdU3W8c%3D&utk=u_bYstpjDewEfNg7Qfvwx1&uk=f0vRs0mWZ8Q4NeOaqnzptBzBCFA8hAHZaPEf9u6Y3cw%3D&spl=213&t=1786282463&sign=a233181eff51b6c74d075319fb38dfe8&ip=222.210.194.251",
"reason": null
}
},
{
"spider": "韩小圈",
"file": "韩小圈.txt",
"success": true,
"failed_stage": null,
"error": null,
"traceback": null,
"timings_ms": {
"module_load": 5.049,
"init": 0.002,
"home": 0.002,
"category": 10228.035,
"detail": 779.958,
"player": 0.003,
"url_check": 1902.361,
"total": 12916.086
},
"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.665,
"init": 0.0,
"home": 0.001,
"category": 609.85,
"detail": 334.287,
"player": 0.003,
"url_check": 65.654,
"total": 1013.838
},
"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": 4.032,
"init": 0.001,
"home": 0.001,
"category": 1028.488,
"detail": 1119.368,
"player": 9333.715,
"url_check": 4268.44,
"total": 15754.578
},
"counts": {
"classes": 4,
"category_videos": 40,
"detail_videos": 1,
"episodes": 2
},
"samples": {
"tid": "1",
"vod_id": "88997",
"flag": "茅台资源1",
"play_id": "/vodplay/88997-4-1.html"
},
"player": {
"parse": 0,
"url": "https://vodcnd17.uvjtih.cn/20260807/cHvmM0DA/index.m3u8",
"valid": true,
"reachable": true,
"status_code": 200,
"final_url": "https://vodcnd17.uvjtih.cn/20260807/cHvmM0DA/index.m3u8",
"reason": null
}
},
{
"spider": "魔方APP",
"file": "魔方APP.txt",
"success": false,
"failed_stage": "home",
"error": "分类列表为空",
"traceback": null,
"timings_ms": {
"module_load": 4.697,
"init": 0.001,
"home": 10009.082,
"category": 0.0,
"detail": 0.0,
"player": 0.0,
"url_check": 0.0,
"total": 10014.013
},
"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": 3.577,
"init": 0.001,
"home": 0.0,
"category": 5625.45,
"detail": 255.568,
"player": 0.025,
"url_check": 414.369,
"total": 6299.841
},
"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": 4.734,
"init": 0.002,
"home": 2964.122,
"category": 0.0,
"detail": 0.0,
"player": 0.0,
"url_check": 0.0,
"total": 2969.088
},
"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
}
}
]
}