等待生成画像
80 人读取主页作品,判断内容是否符合当前品类。
生成内容画像、筛选数据表现,并将达人自动分流到待选库或精选库。
按三个阶段从左到右处理:生成内容画像 → 筛选数据表现 → 查看本轮入库结果。
数据门槛结果会写回当前品类任务;作品画像仍由该品类的 AI 模板负责。
系统会自动保留处理中间状态;业务只需依次完成前两步。
读取主页作品,判断内容是否符合当前品类。
需先完成画像,当前没有可筛选达人。
画像通过进入待选库,数据达标进入精选库。
抖音达人必须同时满足:平均点赞、爆款作品、至少 10 条主页样本、近 1 个月有更新;未全部通过的一律留在待选库。
等待生成画像 80 人 · 等待数据筛选 0 人 · 本次可处理 0 人
霏霏 主页采集失败:2026-09-17 16:14:55 MediaCrawler INFO (core.py:77) - [DouYinCrawler] 使用CDP模式启动浏览器 2026-09-17 16:14:55 MediaCrawler INFO (cdp_browser.py:152) - [CDPBrowserManager] Connecting to existing browser on port 9222... 2026-09-17 16:14:55 MediaCrawler INFO (cdp_browser.py:155) - [CDPBrowserManager] Make sure remote debugging is enabled in your browser: chrome://inspect/#remote-debugging 2026-09-17 16:14:55 MediaCrawler INFO (cdp_browser.py:163) - [CDPBrowserManager] Waiting up to 60s for browser CDP connection... 2026-09-17 16:14:55 MediaCrawler INFO (cdp_browser.py:237) - [CDPBrowserManager] CDP port 9222 is accessible 2026-09-17 16:14:55 MediaCrawler INFO (cdp_browser.py:301) - [CDPBrowserManager] Got browser WebSocket URL: ws://localhost:9222/devtools/browser/de0c60f3-2b1a-4fcc-adf5-d6c8e827445b 2026-09-17 16:14:55 MediaCrawler INFO (cdp_browser.py:329) - [CDPBrowserManager] Connecting to existing browser via discovered CDP (attempt 1/3): ws://localhost:9222/devtools/browser/de0c60f3-2b1a-4fcc-adf5-d6c8e827445b 2026-09-17 16:14:55 MediaCrawler INFO (cdp_browser.py:333) - [CDPBrowserManager] If Chrome asks whether to allow remote debugging, accept it in the already logged-in browser window 2026-09-17 16:14:56 MediaCrawler INFO (cdp_browser.py:364) - [CDPBrowserManager] Successfully connected to browser 2026-09-17 16:14:56 MediaCrawler INFO (cdp_browser.py:365) - [CDPBrowserManager] Browser contexts count: 1 2026-09-17 16:14:56 MediaCrawler INFO (cdp_browser.py:390) - [CDPBrowserManager] Using existing browser context 2026-09-17 16:14:56 MediaCrawler INFO (cdp_browser.py:194) - [CDPBrowserManager] Successfully connected to existing browser 2026-09-17 16:14:56 MediaCrawler INFO (cdp_browser.py:422) - [CDPBrowserManager] Added anti-detection script: libs/stealth.min.js 2026-09-17 16:14:56 MediaCrawler INFO (core.py:450) - [DouYinCrawler] CDP浏览器信息: {'version': '152.0.7977.83', 'contexts_count': 1, 'debug_port': 9222, 'is_connected': True} 2026-09-17 16:14:57 MediaCrawler INFO (core.py:293) - [DouYinCrawler.get_creators_and_videos] Begin get douyin creators 2026-09-17 16:14:57 MediaCrawler INFO (core.py:294) - [DouYinCrawler.get_creators_and_videos] Parsing creator URLs... 2026-09-17 16:14:57 MediaCrawler INFO (core.py:339) - [DouYinCrawler.get_creators_and_videos] Creator concurrency: 2 2026-09-17 16:14:57 MediaCrawler INFO (core.py:301) - [DouYinCrawler.get_creators_and_videos] Parsed sec_user_id: MS4wLjABAAAAjJrhhQDmjID51Von5NeD7ql7X-OqqY24yIgiNo1yO4_N7I6GrLR3camYax0mBhCl from MS4wLjABAAAAjJrhhQDmjID51Von5NeD7ql7X-OqqY24yIgiNo1yO4_N7I6GrLR3camYax0mBhCl 2026-09-17 16:14:57 MediaCrawler INFO (core.py:301) - [DouYinCrawler.get_creators_and_videos] Parsed sec_user_id: MS4wLjABAAAAoIynL8rpEuRGXnbaCOQKYjfuBf4enwQtHEjLqjTkw4k from MS4wLjABAAAAoIynL8rpEuRGXnbaCOQKYjfuBf4enwQtHEjLqjTkw4k 2026-09-17 16:14:57 MediaCrawler INFO (core.py:301) - [DouYinCrawler.get_creators_and_videos] Parsed sec_user_id: MS4wLjABAAAAxZwVBBZgOqL4o-D0Q4U-l4bxIu4lEt9AFMIahnmP3gjFQcuyZaFfzm6h9OR_v5Pg from MS4wLjABAAAAxZwVBBZgOqL4o-D0Q4U-l4bxIu4lEt9AFMIahnmP3gjFQcuyZaFfzm6h9OR_v5Pg 2026-09-17 16:14:57 MediaCrawler INFO (cdp_browser.py:490) - [CDPBrowserManager] Browser connection disconnected 2026-09-17 16:14:57 MediaCrawler INFO (cdp_browser.py:507) - [CDPBrowserManager] Connected to existing browser, skipping process cleanup 2026-09-17 16:14:57 MediaCrawler INFO (core.py:301) - [DouYinCrawler.get_creators_and_videos] Parsed sec_user_id: MS4wLjABAAAAyCgoDQuBXz4kL2CbiiUd2wdlLgt6i7TcCVdWQ85Tip0 from MS4wLjABAAAAyCgoDQuBXz4kL2CbiiUd2wdlLgt6i7TcCVdWQ85Tip0 2026-09-17 16:14:57 MediaCrawler INFO (core.py:301) - [DouYinCrawler.get_creators_and_videos] Parsed sec_user_id: MS4wLjABAAAAyMDHJlJKcd8EBU3oUB672_5Q5led88zBZRiVtAKApD4hEh3JNvVNMv0UJ4q-tg5o from MS4wLjABAAAAyMDHJlJKcd8EBU3oUB672_5Q5led88zBZRiVtAKApD4hEh3JNvVNMv0UJ4q-tg5o Traceback (most recent call last): File "C:\Users\EDY\Desktop\达人采集助手-portable-v2\app\scripts\run-mediacrawler.py", line 21, in <module> runpy.run_path(os.path.join(crawler_root, "main.py"), run_name="__main__") File "<frozen runpy>", line 291, in run_path File "<frozen runpy>", line 98, in _run_module_code File "<frozen runpy>", line 88, in _run_code File "C:\Users\EDY\Desktop\达人采集助手-portable-v2\app\MediaCrawler-main\main.py", line 174, in <module> run(main, async_cleanup, cleanup_timeout_seconds=15.0, on_first_interrupt=_force_stop) File "C:\Users\EDY\Desktop\达人采集助手-portable-v2\app\MediaCrawler-main\tools\app_runner.py", line 109, in run asyncio.run(_runner()) File "C:\Users\EDY\Desktop\达人采集助手-portable-v2\app\runtime\python\Lib\asyncio\runners.py", line 190, in run return runner.run(main) ^^^^^^^^^^^^^^^^ File "C:\Users\EDY\Desktop\达人采集助手-portable-v2\app\runtime\python\Lib\asyncio\runners.py", line 118, in run return self._loop.run_until_complete(task) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "C:\Users\EDY\Desktop\达人采集助手-portable-v2\app\runtime\python\Lib\asyncio\base_events.py", line 654, in run_until_complete return future.result() ^^^^^^^^^^^^^^^ File "C:\Users\EDY\Desktop\达人采集助手-portable-v2\app\MediaCrawler-main\tools\app_runner.py", line 96, in _runner await app_main() File "C:\Users\EDY\Desktop\达人采集助手-portable-v2\app\MediaCrawler-main\main.py", line 114, in main await crawler.start() File "C:\Users\EDY\Desktop\达人采集助手-portable-v2\app\MediaCrawler-main\media_platform\douyin\core.py", line 141, in start await self.get_creators_and_videos() File "C:\Users\EDY\Desktop\达人采集助手-portable-v2\app\MediaCrawler-main\media_platform\douyin\core.py", line 342, in get_creators_and_videos creator_work_counts = await asyncio.gather( ^^^^^^^^^^^^^^^^^^^^^ File "C:\Users\EDY\Desktop\达人采集助手-portable-v2\app\MediaCrawler-main\media_platform\douyin\core.py", line 306, in fetch_one_creator creator_info: Dict = await self.dy_client.get_user_info(user_id) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "C:\Users\EDY\Desktop\达人采集助手-portable-v2\app\MediaCrawler-main\media_platform\douyin\client.py", line 319, in get_user_info return await self.get(uri, params) ^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "C:\Users\EDY\Desktop\达人采集助手-portable-v2\app\MediaCrawler-main\media_platform\douyin\client.py", line 141, in get await self.__process_req_params(uri, params, headers) File "C:\Users\EDY\Desktop\达人采集助手-portable-v2\app\MediaCrawler-main\media_platform\douyin\client.py", line 120, in __process_req_params a_bogus = await get_a_bogus(uri, query_string, post_data, headers["User-Agent"], self.playwright_page) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "C:\Users\EDY\Desktop\达人采集助手-portable-v2\app\MediaCrawler-main\media_platform\douyin\help.py", line 81, in get_a_bogus return get_a_bogus_from_js(url, params, user_agent) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "C:\Users\EDY\Desktop\达人采集助手-portable-v2\app\MediaCrawler-main\media_platform\douyin\help.py", line 100, in get_a_bogus_from_js result = subprocess.run( ^^^^^^^^^^^^^^^ File "C:\Users\EDY\Desktop\达人采集助手-portable-v2\app\runtime\python\Lib\subprocess.py", line 548, in run with Popen(*popenargs, **kwargs) as process: ^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "C:\Users\EDY\Desktop\达人采集助手-portable-v2\app\runtime\python\Lib\subprocess.py", line 1026, in __init__ self._execute_child(args, executable, preexec_fn, close_fds, File "C:\Users\EDY\Desktop\达人采集助手-portable-v2\app\runtime\python\Lib\subprocess.py", line 1538, in _execute_child hp, ht, pid, tid = _winapi.CreateProcess(executable, args, ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ FileNotFoundError: [WinError 2] 系统找不到指定的文件。
chad 主页采集失败:2026-09-17 14:10:33 MediaCrawler INFO (core.py:77) - [DouYinCrawler] 使用CDP模式启动浏览器 2026-09-17 14:10:33 MediaCrawler INFO (cdp_browser.py:152) - [CDPBrowserManager] Connecting to existing browser on port 9222... 2026-09-17 14:10:33 MediaCrawler INFO (cdp_browser.py:155) - [CDPBrowserManager] Make sure remote debugging is enabled in your browser: chrome://inspect/#remote-debugging 2026-09-17 14:10:33 MediaCrawler INFO (cdp_browser.py:163) - [CDPBrowserManager] Waiting up to 60s for browser CDP connection... 2026-09-17 14:10:33 MediaCrawler INFO (cdp_browser.py:237) - [CDPBrowserManager] CDP port 9222 is accessible 2026-09-17 14:10:33 MediaCrawler INFO (cdp_browser.py:301) - [CDPBrowserManager] Got browser WebSocket URL: ws://localhost:9222/devtools/browser/7c03ef21-ce48-4e92-88b7-8abe72aed2f3 2026-09-17 14:10:33 MediaCrawler INFO (cdp_browser.py:329) - [CDPBrowserManager] Connecting to existing browser via discovered CDP (attempt 1/3): ws://localhost:9222/devtools/browser/7c03ef21-ce48-4e92-88b7-8abe72aed2f3 2026-09-17 14:10:33 MediaCrawler INFO (cdp_browser.py:333) - [CDPBrowserManager] If Chrome asks whether to allow remote debugging, accept it in the already logged-in browser window 2026-09-17 14:10:34 MediaCrawler INFO (cdp_browser.py:364) - [CDPBrowserManager] Successfully connected to browser 2026-09-17 14:10:34 MediaCrawler INFO (cdp_browser.py:365) - [CDPBrowserManager] Browser contexts count: 1 2026-09-17 14:10:34 MediaCrawler INFO (cdp_browser.py:390) - [CDPBrowserManager] Using existing browser context 2026-09-17 14:10:34 MediaCrawler INFO (cdp_browser.py:194) - [CDPBrowserManager] Successfully connected to existing browser 2026-09-17 14:10:34 MediaCrawler INFO (cdp_browser.py:422) - [CDPBrowserManager] Added anti-detection script: libs/stealth.min.js 2026-09-17 14:10:34 MediaCrawler INFO (core.py:450) - [DouYinCrawler] CDP浏览器信息: {'version': '152.0.7977.83', 'contexts_count': 1, 'debug_port': 9222, 'is_connected': True} 2026-09-17 14:10:38 MediaCrawler INFO (core.py:293) - [DouYinCrawler.get_creators_and_videos] Begin get douyin creators 2026-09-17 14:10:38 MediaCrawler INFO (core.py:294) - [DouYinCrawler.get_creators_and_videos] Parsing creator URLs... 2026-09-17 14:10:38 MediaCrawler INFO (core.py:339) - [DouYinCrawler.get_creators_and_videos] Creator concurrency: 2 2026-09-17 14:10:38 MediaCrawler INFO (core.py:301) - [DouYinCrawler.get_creators_and_videos] Parsed sec_user_id: MS4wLjABAAAAGHb1_jgdSRXaRc9QhHINSSoQyr_K8BhihKzRnyt1qYo from MS4wLjABAAAAGHb1_jgdSRXaRc9QhHINSSoQyr_K8BhihKzRnyt1qYo 2026-09-17 14:10:38 MediaCrawler INFO (core.py:301) - [DouYinCrawler.get_creators_and_videos] Parsed sec_user_id: MS4wLjABAAAAKGbG57eEly5jAMr5dU7T6fw6Q_ApxKcG_i4T8cj3QvIj0l0BGVHlZ4h-ZYG4I_0o from MS4wLjABAAAAKGbG57eEly5jAMr5dU7T6fw6Q_ApxKcG_i4T8cj3QvIj0l0BGVHlZ4h-ZYG4I_0o 2026-09-17 14:10:38 MediaCrawler INFO (core.py:301) - [DouYinCrawler.get_creators_and_videos] Parsed sec_user_id: MS4wLjABAAAAkxTmmmGLa6G8r5omA-I7krelbMGq0nbnAD3H5LouiCM from MS4wLjABAAAAkxTmmmGLa6G8r5omA-I7krelbMGq0nbnAD3H5LouiCM 2026-09-17 14:10:38 MediaCrawler INFO (cdp_browser.py:490) - [CDPBrowserManager] Browser connection disconnected 2026-09-17 14:10:38 MediaCrawler INFO (cdp_browser.py:507) - [CDPBrowserManager] Connected to existing browser, skipping process cleanup 2026-09-17 14:10:38 MediaCrawler INFO (core.py:301) - [DouYinCrawler.get_creators_and_videos] Parsed sec_user_id: MS4wLjABAAAAle7-WPDrlgIShvkj-vjnXOnWP8eD9AsNw7_6yMjy-sWxYEOAvMJ__CyxNYJeftul from MS4wLjABAAAAle7-WPDrlgIShvkj-vjnXOnWP8eD9AsNw7_6yMjy-sWxYEOAvMJ__CyxNYJeftul 2026-09-17 14:10:38 MediaCrawler INFO (core.py:301) - [DouYinCrawler.get_creators_and_videos] Parsed sec_user_id: MS4wLjABAAAAVFq9kOxCq6lNV9f0nRQa8TXC3J4nN1XV7FaVQKTlrLLgNbOnIp47HFNbe7-K1LwO from MS4wLjABAAAAVFq9kOxCq6lNV9f0nRQa8TXC3J4nN1XV7FaVQKTlrLLgNbOnIp47HFNbe7-K1LwO Traceback (most recent call last): File "C:\Users\EDY\Documents\流程\kol-crm-next\scripts\run-mediacrawler.py", line 21, in <module> runpy.run_path(os.path.join(crawler_root, "main.py"), run_name="__main__") File "<frozen runpy>", line 291, in run_path File "<frozen runpy>", line 98, in _run_module_code File "<frozen runpy>", line 88, in _run_code File "C:\Users\EDY\Desktop\达人采集助手-portable-v3\达人采集助手-portable-v3\app\MediaCrawler-main\main.py", line 174, in <module> run(main, async_cleanup, cleanup_timeout_seconds=15.0, on_first_interrupt=_force_stop) File "C:\Users\EDY\Desktop\达人采集助手-portable-v3\达人采集助手-portable-v3\app\MediaCrawler-main\tools\app_runner.py", line 109, in run asyncio.run(_runner()) File "C:\Users\EDY\Desktop\达人采集助手-portable-v3\达人采集助手-portable-v3\app\runtime\python\Lib\asyncio\runners.py", line 190, in run return runner.run(main) ^^^^^^^^^^^^^^^^ File "C:\Users\EDY\Desktop\达人采集助手-portable-v3\达人采集助手-portable-v3\app\runtime\python\Lib\asyncio\runners.py", line 118, in run return self._loop.run_until_complete(task) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "C:\Users\EDY\Desktop\达人采集助手-portable-v3\达人采集助手-portable-v3\app\runtime\python\Lib\asyncio\base_events.py", line 654, in run_until_complete return future.result() ^^^^^^^^^^^^^^^ File "C:\Users\EDY\Desktop\达人采集助手-portable-v3\达人采集助手-portable-v3\app\MediaCrawler-main\tools\app_runner.py", line 96, in _runner await app_main() File "C:\Users\EDY\Desktop\达人采集助手-portable-v3\达人采集助手-portable-v3\app\MediaCrawler-main\main.py", line 114, in main await crawler.start() File "C:\Users\EDY\Desktop\达人采集助手-portable-v3\达人采集助手-portable-v3\app\MediaCrawler-main\media_platform\douyin\core.py", line 141, in start await self.get_creators_and_videos() File "C:\Users\EDY\Desktop\达人采集助手-portable-v3\达人采集助手-portable-v3\app\MediaCrawler-main\media_platform\douyin\core.py", line 342, in get_creators_and_videos creator_work_counts = await asyncio.gather( ^^^^^^^^^^^^^^^^^^^^^ File "C:\Users\EDY\Desktop\达人采集助手-portable-v3\达人采集助手-portable-v3\app\MediaCrawler-main\media_platform\douyin\core.py", line 306, in fetch_one_creator creator_info: Dict = await self.dy_client.get_user_info(user_id) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "C:\Users\EDY\Desktop\达人采集助手-portable-v3\达人采集助手-portable-v3\app\MediaCrawler-main\media_platform\douyin\client.py", line 319, in get_user_info return await self.get(uri, params) ^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "C:\Users\EDY\Desktop\达人采集助手-portable-v3\达人采集助手-portable-v3\app\MediaCrawler-main\media_platform\douyin\client.py", line 141, in get await self.__process_req_params(uri, params, headers) File "C:\Users\EDY\Desktop\达人采集助手-portable-v3\达人采集助手-portable-v3\app\MediaCrawler-main\media_platform\douyin\client.py", line 120, in __process_req_params a_bogus = await get_a_bogus(uri, query_string, post_data, headers["User-Agent"], self.playwright_page) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "C:\Users\EDY\Desktop\达人采集助手-portable-v3\达人采集助手-portable-v3\app\MediaCrawler-main\media_platform\douyin\help.py", line 81, in get_a_bogus return get_a_bogus_from_js(url, params, user_agent) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "C:\Users\EDY\Desktop\达人采集助手-portable-v3\达人采集助手-portable-v3\app\MediaCrawler-main\media_platform\douyin\help.py", line 100, in get_a_bogus_from_js result = subprocess.run( ^^^^^^^^^^^^^^^ File "C:\Users\EDY\Desktop\达人采集助手-portable-v3\达人采集助手-portable-v3\app\runtime\python\Lib\subprocess.py", line 548, in run with Popen(*popenargs, **kwargs) as process: ^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "C:\Users\EDY\Desktop\达人采集助手-portable-v3\达人采集助手-portable-v3\app\runtime\python\Lib\subprocess.py", line 1026, in __init__ self._execute_child(args, executable, preexec_fn, close_fds, File "C:\Users\EDY\Desktop\达人采集助手-portable-v3\达人采集助手-portable-v3\app\runtime\python\Lib\subprocess.py", line 1538, in _execute_child hp, ht, pid, tid = _winapi.CreateProcess(executable, args, ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ FileNotFoundError: [WinError 2] 系统找不到指定的文件。
5u' 主页采集失败:MediaCrawler 主页采集超时(90 秒)
叶来香🍁 主页采集失败:2026-09-17 14:22:42 MediaCrawler INFO (core.py:77) - [DouYinCrawler] 使用CDP模式启动浏览器 2026-09-17 14:22:42 MediaCrawler INFO (cdp_browser.py:152) - [CDPBrowserManager] Connecting to existing browser on port 9222... 2026-09-17 14:22:42 MediaCrawler INFO (cdp_browser.py:155) - [CDPBrowserManager] Make sure remote debugging is enabled in your browser: chrome://inspect/#remote-debugging 2026-09-17 14:22:42 MediaCrawler INFO (cdp_browser.py:163) - [CDPBrowserManager] Waiting up to 60s for browser CDP connection... 2026-09-17 14:22:42 MediaCrawler INFO (cdp_browser.py:237) - [CDPBrowserManager] CDP port 9222 is accessible 2026-09-17 14:22:42 MediaCrawler INFO (cdp_browser.py:301) - [CDPBrowserManager] Got browser WebSocket URL: ws://localhost:9222/devtools/browser/f079b23d-96c5-4a1d-989c-33629bf0f438 2026-09-17 14:22:42 MediaCrawler INFO (cdp_browser.py:329) - [CDPBrowserManager] Connecting to existing browser via discovered CDP (attempt 1/3): ws://localhost:9222/devtools/browser/f079b23d-96c5-4a1d-989c-33629bf0f438 2026-09-17 14:22:42 MediaCrawler INFO (cdp_browser.py:333) - [CDPBrowserManager] If Chrome asks whether to allow remote debugging, accept it in the already logged-in browser window 2026-09-17 14:22:43 MediaCrawler INFO (cdp_browser.py:364) - [CDPBrowserManager] Successfully connected to browser 2026-09-17 14:22:43 MediaCrawler INFO (cdp_browser.py:365) - [CDPBrowserManager] Browser contexts count: 1 2026-09-17 14:22:43 MediaCrawler INFO (cdp_browser.py:390) - [CDPBrowserManager] Using existing browser context 2026-09-17 14:22:43 MediaCrawler INFO (cdp_browser.py:194) - [CDPBrowserManager] Successfully connected to existing browser 2026-09-17 14:22:43 MediaCrawler INFO (cdp_browser.py:422) - [CDPBrowserManager] Added anti-detection script: libs/stealth.min.js 2026-09-17 14:22:43 MediaCrawler INFO (core.py:450) - [DouYinCrawler] CDP浏览器信息: {'version': '152.0.7977.83', 'contexts_count': 1, 'debug_port': 9222, 'is_connected': True} 2026-09-17 14:22:47 MediaCrawler INFO (core.py:293) - [DouYinCrawler.get_creators_and_videos] Begin get douyin creators 2026-09-17 14:22:47 MediaCrawler INFO (core.py:294) - [DouYinCrawler.get_creators_and_videos] Parsing creator URLs... 2026-09-17 14:22:47 MediaCrawler INFO (core.py:339) - [DouYinCrawler.get_creators_and_videos] Creator concurrency: 2 2026-09-17 14:22:47 MediaCrawler INFO (core.py:301) - [DouYinCrawler.get_creators_and_videos] Parsed sec_user_id: MS4wLjABAAAAcdV0gXMX-2NowbEBz6sIOitjtNkS6OrMFboOXglN_24 from MS4wLjABAAAAcdV0gXMX-2NowbEBz6sIOitjtNkS6OrMFboOXglN_24 2026-09-17 14:22:47 MediaCrawler INFO (core.py:301) - [DouYinCrawler.get_creators_and_videos] Parsed sec_user_id: MS4wLjABAAAAcoB7wwtHNv_SA37jK1z1FHvzg0PPR6G7C7ar3T5J0rE from MS4wLjABAAAAcoB7wwtHNv_SA37jK1z1FHvzg0PPR6G7C7ar3T5J0rE 2026-09-17 14:22:47 MediaCrawler INFO (core.py:301) - [DouYinCrawler.get_creators_and_videos] Parsed sec_user_id: MS4wLjABAAAAhPcICW7ccBHl3NXTO7YtlCBbDdnQpJINPc5qu4Dqj6he_-YeQ7G80iK_LFTVBZvc from MS4wLjABAAAAhPcICW7ccBHl3NXTO7YtlCBbDdnQpJINPc5qu4Dqj6he_-YeQ7G80iK_LFTVBZvc 2026-09-17 14:22:47 MediaCrawler INFO (cdp_browser.py:490) - [CDPBrowserManager] Browser connection disconnected 2026-09-17 14:22:47 MediaCrawler INFO (cdp_browser.py:507) - [CDPBrowserManager] Connected to existing browser, skipping process cleanup 2026-09-17 14:22:47 MediaCrawler INFO (core.py:301) - [DouYinCrawler.get_creators_and_videos] Parsed sec_user_id: MS4wLjABAAAAt0TXuTMnoUvY_UkXiXPdrR-f-SHqWcgN9mRYW_nsq-4 from MS4wLjABAAAAt0TXuTMnoUvY_UkXiXPdrR-f-SHqWcgN9mRYW_nsq-4 2026-09-17 14:22:47 MediaCrawler INFO (core.py:301) - [DouYinCrawler.get_creators_and_videos] Parsed sec_user_id: MS4wLjABAAAAxz6zLvaThtHTFH90gjHMDsA24teKLo77ks4IcrNMaeMzfDpFWDty7XPstW76-uI- from MS4wLjABAAAAxz6zLvaThtHTFH90gjHMDsA24teKLo77ks4IcrNMaeMzfDpFWDty7XPstW76-uI- Traceback (most recent call last): File "C:\Users\EDY\Documents\流程\kol-crm-next\scripts\run-mediacrawler.py", line 21, in <module> runpy.run_path(os.path.join(crawler_root, "main.py"), run_name="__main__") File "<frozen runpy>", line 291, in run_path File "<frozen runpy>", line 98, in _run_module_code File "<frozen runpy>", line 88, in _run_code File "C:\Users\EDY\Desktop\达人采集助手-portable-v3\达人采集助手-portable-v3\app\MediaCrawler-main\main.py", line 174, in <module> run(main, async_cleanup, cleanup_timeout_seconds=15.0, on_first_interrupt=_force_stop) File "C:\Users\EDY\Desktop\达人采集助手-portable-v3\达人采集助手-portable-v3\app\MediaCrawler-main\tools\app_runner.py", line 109, in run asyncio.run(_runner()) File "C:\Users\EDY\Desktop\达人采集助手-portable-v3\达人采集助手-portable-v3\app\runtime\python\Lib\asyncio\runners.py", line 190, in run return runner.run(main) ^^^^^^^^^^^^^^^^ File "C:\Users\EDY\Desktop\达人采集助手-portable-v3\达人采集助手-portable-v3\app\runtime\python\Lib\asyncio\runners.py", line 118, in run return self._loop.run_until_complete(task) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "C:\Users\EDY\Desktop\达人采集助手-portable-v3\达人采集助手-portable-v3\app\runtime\python\Lib\asyncio\base_events.py", line 654, in run_until_complete return future.result() ^^^^^^^^^^^^^^^ File "C:\Users\EDY\Desktop\达人采集助手-portable-v3\达人采集助手-portable-v3\app\MediaCrawler-main\tools\app_runner.py", line 96, in _runner await app_main() File "C:\Users\EDY\Desktop\达人采集助手-portable-v3\达人采集助手-portable-v3\app\MediaCrawler-main\main.py", line 114, in main await crawler.start() File "C:\Users\EDY\Desktop\达人采集助手-portable-v3\达人采集助手-portable-v3\app\MediaCrawler-main\media_platform\douyin\core.py", line 141, in start await self.get_creators_and_videos() File "C:\Users\EDY\Desktop\达人采集助手-portable-v3\达人采集助手-portable-v3\app\MediaCrawler-main\media_platform\douyin\core.py", line 342, in get_creators_and_videos creator_work_counts = await asyncio.gather( ^^^^^^^^^^^^^^^^^^^^^ File "C:\Users\EDY\Desktop\达人采集助手-portable-v3\达人采集助手-portable-v3\app\MediaCrawler-main\media_platform\douyin\core.py", line 306, in fetch_one_creator creator_info: Dict = await self.dy_client.get_user_info(user_id) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "C:\Users\EDY\Desktop\达人采集助手-portable-v3\达人采集助手-portable-v3\app\MediaCrawler-main\media_platform\douyin\client.py", line 319, in get_user_info return await self.get(uri, params) ^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "C:\Users\EDY\Desktop\达人采集助手-portable-v3\达人采集助手-portable-v3\app\MediaCrawler-main\media_platform\douyin\client.py", line 141, in get await self.__process_req_params(uri, params, headers) File "C:\Users\EDY\Desktop\达人采集助手-portable-v3\达人采集助手-portable-v3\app\MediaCrawler-main\media_platform\douyin\client.py", line 120, in __process_req_params a_bogus = await get_a_bogus(uri, query_string, post_data, headers["User-Agent"], self.playwright_page) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "C:\Users\EDY\Desktop\达人采集助手-portable-v3\达人采集助手-portable-v3\app\MediaCrawler-main\media_platform\douyin\help.py", line 81, in get_a_bogus return get_a_bogus_from_js(url, params, user_agent) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "C:\Users\EDY\Desktop\达人采集助手-portable-v3\达人采集助手-portable-v3\app\MediaCrawler-main\media_platform\douyin\help.py", line 100, in get_a_bogus_from_js result = subprocess.run( ^^^^^^^^^^^^^^^ File "C:\Users\EDY\Desktop\达人采集助手-portable-v3\达人采集助手-portable-v3\app\runtime\python\Lib\subprocess.py", line 548, in run with Popen(*popenargs, **kwargs) as process: ^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "C:\Users\EDY\Desktop\达人采集助手-portable-v3\达人采集助手-portable-v3\app\runtime\python\Lib\subprocess.py", line 1026, in __init__ self._execute_child(args, executable, preexec_fn, close_fds, File "C:\Users\EDY\Desktop\达人采集助手-portable-v3\达人采集助手-portable-v3\app\runtime\python\Lib\subprocess.py", line 1538, in _execute_child hp, ht, pid, tid = _winapi.CreateProcess(executable, args, ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ FileNotFoundError: [WinError 2] 系统找不到指定的文件。
肖十三 主页采集失败:2026-09-17 14:10:58 MediaCrawler INFO (core.py:77) - [DouYinCrawler] 使用CDP模式启动浏览器 2026-09-17 14:10:58 MediaCrawler INFO (cdp_browser.py:152) - [CDPBrowserManager] Connecting to existing browser on port 9222... 2026-09-17 14:10:58 MediaCrawler INFO (cdp_browser.py:155) - [CDPBrowserManager] Make sure remote debugging is enabled in your browser: chrome://inspect/#remote-debugging 2026-09-17 14:10:58 MediaCrawler INFO (cdp_browser.py:163) - [CDPBrowserManager] Waiting up to 60s for browser CDP connection... 2026-09-17 14:10:58 MediaCrawler INFO (cdp_browser.py:237) - [CDPBrowserManager] CDP port 9222 is accessible 2026-09-17 14:10:59 MediaCrawler INFO (cdp_browser.py:301) - [CDPBrowserManager] Got browser WebSocket URL: ws://localhost:9222/devtools/browser/7c03ef21-ce48-4e92-88b7-8abe72aed2f3 2026-09-17 14:10:59 MediaCrawler INFO (cdp_browser.py:329) - [CDPBrowserManager] Connecting to existing browser via discovered CDP (attempt 1/3): ws://localhost:9222/devtools/browser/7c03ef21-ce48-4e92-88b7-8abe72aed2f3 2026-09-17 14:10:59 MediaCrawler INFO (cdp_browser.py:333) - [CDPBrowserManager] If Chrome asks whether to allow remote debugging, accept it in the already logged-in browser window 2026-09-17 14:10:59 MediaCrawler INFO (cdp_browser.py:364) - [CDPBrowserManager] Successfully connected to browser 2026-09-17 14:10:59 MediaCrawler INFO (cdp_browser.py:365) - [CDPBrowserManager] Browser contexts count: 1 2026-09-17 14:10:59 MediaCrawler INFO (cdp_browser.py:390) - [CDPBrowserManager] Using existing browser context 2026-09-17 14:10:59 MediaCrawler INFO (cdp_browser.py:194) - [CDPBrowserManager] Successfully connected to existing browser 2026-09-17 14:10:59 MediaCrawler INFO (cdp_browser.py:422) - [CDPBrowserManager] Added anti-detection script: libs/stealth.min.js 2026-09-17 14:10:59 MediaCrawler INFO (core.py:450) - [DouYinCrawler] CDP浏览器信息: {'version': '152.0.7977.83', 'contexts_count': 1, 'debug_port': 9222, 'is_connected': True} 2026-09-17 14:11:02 MediaCrawler INFO (core.py:293) - [DouYinCrawler.get_creators_and_videos] Begin get douyin creators 2026-09-17 14:11:02 MediaCrawler INFO (core.py:294) - [DouYinCrawler.get_creators_and_videos] Parsing creator URLs... 2026-09-17 14:11:02 MediaCrawler INFO (core.py:339) - [DouYinCrawler.get_creators_and_videos] Creator concurrency: 2 2026-09-17 14:11:02 MediaCrawler INFO (core.py:301) - [DouYinCrawler.get_creators_and_videos] Parsed sec_user_id: MS4wLjABAAAA-7FuZwMllEVyWnCU2M9GSHsA69DSN7I9RkQb0GNsqzI from MS4wLjABAAAA-7FuZwMllEVyWnCU2M9GSHsA69DSN7I9RkQb0GNsqzI 2026-09-17 14:11:02 MediaCrawler INFO (core.py:301) - [DouYinCrawler.get_creators_and_videos] Parsed sec_user_id: MS4wLjABAAAA0YAn2hW4EoLtfkx_MphhVCWsSz8mDxGjKbfp30eBi6w from MS4wLjABAAAA0YAn2hW4EoLtfkx_MphhVCWsSz8mDxGjKbfp30eBi6w 2026-09-17 14:11:02 MediaCrawler INFO (core.py:301) - [DouYinCrawler.get_creators_and_videos] Parsed sec_user_id: MS4wLjABAAAAc5o31_ktyjVcEvUgmjFOzjCf9Rk50xNE8qeXlgICr0I from MS4wLjABAAAAc5o31_ktyjVcEvUgmjFOzjCf9Rk50xNE8qeXlgICr0I 2026-09-17 14:11:02 MediaCrawler INFO (cdp_browser.py:490) - [CDPBrowserManager] Browser connection disconnected 2026-09-17 14:11:02 MediaCrawler INFO (cdp_browser.py:507) - [CDPBrowserManager] Connected to existing browser, skipping process cleanup 2026-09-17 14:11:02 MediaCrawler INFO (core.py:301) - [DouYinCrawler.get_creators_and_videos] Parsed sec_user_id: MS4wLjABAAAACI9fWKcbtZlbkEtZ3yOvKhtn5vMjEKSezARi3rqRny_diF1fqCXIbeQs0C1qhrbH from MS4wLjABAAAACI9fWKcbtZlbkEtZ3yOvKhtn5vMjEKSezARi3rqRny_diF1fqCXIbeQs0C1qhrbH 2026-09-17 14:11:02 MediaCrawler INFO (core.py:301) - [DouYinCrawler.get_creators_and_videos] Parsed sec_user_id: MS4wLjABAAAAvpAxdIKMcaXNk6he8H1FOSCjOXe23oonwL2lr64C_h8 from MS4wLjABAAAAvpAxdIKMcaXNk6he8H1FOSCjOXe23oonwL2lr64C_h8 Traceback (most recent call last): File "C:\Users\EDY\Documents\流程\kol-crm-next\scripts\run-mediacrawler.py", line 21, in <module> runpy.run_path(os.path.join(crawler_root, "main.py"), run_name="__main__") File "<frozen runpy>", line 291, in run_path File "<frozen runpy>", line 98, in _run_module_code File "<frozen runpy>", line 88, in _run_code File "C:\Users\EDY\Desktop\达人采集助手-portable-v3\达人采集助手-portable-v3\app\MediaCrawler-main\main.py", line 174, in <module> run(main, async_cleanup, cleanup_timeout_seconds=15.0, on_first_interrupt=_force_stop) File "C:\Users\EDY\Desktop\达人采集助手-portable-v3\达人采集助手-portable-v3\app\MediaCrawler-main\tools\app_runner.py", line 109, in run asyncio.run(_runner()) File "C:\Users\EDY\Desktop\达人采集助手-portable-v3\达人采集助手-portable-v3\app\runtime\python\Lib\asyncio\runners.py", line 190, in run return runner.run(main) ^^^^^^^^^^^^^^^^ File "C:\Users\EDY\Desktop\达人采集助手-portable-v3\达人采集助手-portable-v3\app\runtime\python\Lib\asyncio\runners.py", line 118, in run return self._loop.run_until_complete(task) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "C:\Users\EDY\Desktop\达人采集助手-portable-v3\达人采集助手-portable-v3\app\runtime\python\Lib\asyncio\base_events.py", line 654, in run_until_complete return future.result() ^^^^^^^^^^^^^^^ File "C:\Users\EDY\Desktop\达人采集助手-portable-v3\达人采集助手-portable-v3\app\MediaCrawler-main\tools\app_runner.py", line 96, in _runner await app_main() File "C:\Users\EDY\Desktop\达人采集助手-portable-v3\达人采集助手-portable-v3\app\MediaCrawler-main\main.py", line 114, in main await crawler.start() File "C:\Users\EDY\Desktop\达人采集助手-portable-v3\达人采集助手-portable-v3\app\MediaCrawler-main\media_platform\douyin\core.py", line 141, in start await self.get_creators_and_videos() File "C:\Users\EDY\Desktop\达人采集助手-portable-v3\达人采集助手-portable-v3\app\MediaCrawler-main\media_platform\douyin\core.py", line 342, in get_creators_and_videos creator_work_counts = await asyncio.gather( ^^^^^^^^^^^^^^^^^^^^^ File "C:\Users\EDY\Desktop\达人采集助手-portable-v3\达人采集助手-portable-v3\app\MediaCrawler-main\media_platform\douyin\core.py", line 306, in fetch_one_creator creator_info: Dict = await self.dy_client.get_user_info(user_id) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "C:\Users\EDY\Desktop\达人采集助手-portable-v3\达人采集助手-portable-v3\app\MediaCrawler-main\media_platform\douyin\client.py", line 319, in get_user_info return await self.get(uri, params) ^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "C:\Users\EDY\Desktop\达人采集助手-portable-v3\达人采集助手-portable-v3\app\MediaCrawler-main\media_platform\douyin\client.py", line 141, in get await self.__process_req_params(uri, params, headers) File "C:\Users\EDY\Desktop\达人采集助手-portable-v3\达人采集助手-portable-v3\app\MediaCrawler-main\media_platform\douyin\client.py", line 120, in __process_req_params a_bogus = await get_a_bogus(uri, query_string, post_data, headers["User-Agent"], self.playwright_page) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "C:\Users\EDY\Desktop\达人采集助手-portable-v3\达人采集助手-portable-v3\app\MediaCrawler-main\media_platform\douyin\help.py", line 81, in get_a_bogus return get_a_bogus_from_js(url, params, user_agent) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "C:\Users\EDY\Desktop\达人采集助手-portable-v3\达人采集助手-portable-v3\app\MediaCrawler-main\media_platform\douyin\help.py", line 100, in get_a_bogus_from_js result = subprocess.run( ^^^^^^^^^^^^^^^ File "C:\Users\EDY\Desktop\达人采集助手-portable-v3\达人采集助手-portable-v3\app\runtime\python\Lib\subprocess.py", line 548, in run with Popen(*popenargs, **kwargs) as process: ^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "C:\Users\EDY\Desktop\达人采集助手-portable-v3\达人采集助手-portable-v3\app\runtime\python\Lib\subprocess.py", line 1026, in __init__ self._execute_child(args, executable, preexec_fn, close_fds, File "C:\Users\EDY\Desktop\达人采集助手-portable-v3\达人采集助手-portable-v3\app\runtime\python\Lib\subprocess.py", line 1538, in _execute_child hp, ht, pid, tid = _winapi.CreateProcess(executable, args, ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ FileNotFoundError: [WinError 2] 系统找不到指定的文件。
纯净水 主页采集失败:2026-09-17 14:10:33 MediaCrawler INFO (core.py:77) - [DouYinCrawler] 使用CDP模式启动浏览器 2026-09-17 14:10:33 MediaCrawler INFO (cdp_browser.py:152) - [CDPBrowserManager] Connecting to existing browser on port 9222... 2026-09-17 14:10:33 MediaCrawler INFO (cdp_browser.py:155) - [CDPBrowserManager] Make sure remote debugging is enabled in your browser: chrome://inspect/#remote-debugging 2026-09-17 14:10:33 MediaCrawler INFO (cdp_browser.py:163) - [CDPBrowserManager] Waiting up to 60s for browser CDP connection... 2026-09-17 14:10:33 MediaCrawler INFO (cdp_browser.py:237) - [CDPBrowserManager] CDP port 9222 is accessible 2026-09-17 14:10:33 MediaCrawler INFO (cdp_browser.py:301) - [CDPBrowserManager] Got browser WebSocket URL: ws://localhost:9222/devtools/browser/7c03ef21-ce48-4e92-88b7-8abe72aed2f3 2026-09-17 14:10:33 MediaCrawler INFO (cdp_browser.py:329) - [CDPBrowserManager] Connecting to existing browser via discovered CDP (attempt 1/3): ws://localhost:9222/devtools/browser/7c03ef21-ce48-4e92-88b7-8abe72aed2f3 2026-09-17 14:10:33 MediaCrawler INFO (cdp_browser.py:333) - [CDPBrowserManager] If Chrome asks whether to allow remote debugging, accept it in the already logged-in browser window 2026-09-17 14:10:34 MediaCrawler INFO (cdp_browser.py:364) - [CDPBrowserManager] Successfully connected to browser 2026-09-17 14:10:34 MediaCrawler INFO (cdp_browser.py:365) - [CDPBrowserManager] Browser contexts count: 1 2026-09-17 14:10:34 MediaCrawler INFO (cdp_browser.py:390) - [CDPBrowserManager] Using existing browser context 2026-09-17 14:10:34 MediaCrawler INFO (cdp_browser.py:194) - [CDPBrowserManager] Successfully connected to existing browser 2026-09-17 14:10:34 MediaCrawler INFO (cdp_browser.py:422) - [CDPBrowserManager] Added anti-detection script: libs/stealth.min.js 2026-09-17 14:10:34 MediaCrawler INFO (core.py:450) - [DouYinCrawler] CDP浏览器信息: {'version': '152.0.7977.83', 'contexts_count': 1, 'debug_port': 9222, 'is_connected': True} 2026-09-17 14:10:38 MediaCrawler INFO (core.py:293) - [DouYinCrawler.get_creators_and_videos] Begin get douyin creators 2026-09-17 14:10:38 MediaCrawler INFO (core.py:294) - [DouYinCrawler.get_creators_and_videos] Parsing creator URLs... 2026-09-17 14:10:38 MediaCrawler INFO (core.py:339) - [DouYinCrawler.get_creators_and_videos] Creator concurrency: 2 2026-09-17 14:10:38 MediaCrawler INFO (core.py:301) - [DouYinCrawler.get_creators_and_videos] Parsed sec_user_id: MS4wLjABAAAAGHb1_jgdSRXaRc9QhHINSSoQyr_K8BhihKzRnyt1qYo from MS4wLjABAAAAGHb1_jgdSRXaRc9QhHINSSoQyr_K8BhihKzRnyt1qYo 2026-09-17 14:10:38 MediaCrawler INFO (core.py:301) - [DouYinCrawler.get_creators_and_videos] Parsed sec_user_id: MS4wLjABAAAAKGbG57eEly5jAMr5dU7T6fw6Q_ApxKcG_i4T8cj3QvIj0l0BGVHlZ4h-ZYG4I_0o from MS4wLjABAAAAKGbG57eEly5jAMr5dU7T6fw6Q_ApxKcG_i4T8cj3QvIj0l0BGVHlZ4h-ZYG4I_0o 2026-09-17 14:10:38 MediaCrawler INFO (core.py:301) - [DouYinCrawler.get_creators_and_videos] Parsed sec_user_id: MS4wLjABAAAAkxTmmmGLa6G8r5omA-I7krelbMGq0nbnAD3H5LouiCM from MS4wLjABAAAAkxTmmmGLa6G8r5omA-I7krelbMGq0nbnAD3H5LouiCM 2026-09-17 14:10:38 MediaCrawler INFO (cdp_browser.py:490) - [CDPBrowserManager] Browser connection disconnected 2026-09-17 14:10:38 MediaCrawler INFO (cdp_browser.py:507) - [CDPBrowserManager] Connected to existing browser, skipping process cleanup 2026-09-17 14:10:38 MediaCrawler INFO (core.py:301) - [DouYinCrawler.get_creators_and_videos] Parsed sec_user_id: MS4wLjABAAAAle7-WPDrlgIShvkj-vjnXOnWP8eD9AsNw7_6yMjy-sWxYEOAvMJ__CyxNYJeftul from MS4wLjABAAAAle7-WPDrlgIShvkj-vjnXOnWP8eD9AsNw7_6yMjy-sWxYEOAvMJ__CyxNYJeftul 2026-09-17 14:10:38 MediaCrawler INFO (core.py:301) - [DouYinCrawler.get_creators_and_videos] Parsed sec_user_id: MS4wLjABAAAAVFq9kOxCq6lNV9f0nRQa8TXC3J4nN1XV7FaVQKTlrLLgNbOnIp47HFNbe7-K1LwO from MS4wLjABAAAAVFq9kOxCq6lNV9f0nRQa8TXC3J4nN1XV7FaVQKTlrLLgNbOnIp47HFNbe7-K1LwO Traceback (most recent call last): File "C:\Users\EDY\Documents\流程\kol-crm-next\scripts\run-mediacrawler.py", line 21, in <module> runpy.run_path(os.path.join(crawler_root, "main.py"), run_name="__main__") File "<frozen runpy>", line 291, in run_path File "<frozen runpy>", line 98, in _run_module_code File "<frozen runpy>", line 88, in _run_code File "C:\Users\EDY\Desktop\达人采集助手-portable-v3\达人采集助手-portable-v3\app\MediaCrawler-main\main.py", line 174, in <module> run(main, async_cleanup, cleanup_timeout_seconds=15.0, on_first_interrupt=_force_stop) File "C:\Users\EDY\Desktop\达人采集助手-portable-v3\达人采集助手-portable-v3\app\MediaCrawler-main\tools\app_runner.py", line 109, in run asyncio.run(_runner()) File "C:\Users\EDY\Desktop\达人采集助手-portable-v3\达人采集助手-portable-v3\app\runtime\python\Lib\asyncio\runners.py", line 190, in run return runner.run(main) ^^^^^^^^^^^^^^^^ File "C:\Users\EDY\Desktop\达人采集助手-portable-v3\达人采集助手-portable-v3\app\runtime\python\Lib\asyncio\runners.py", line 118, in run return self._loop.run_until_complete(task) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "C:\Users\EDY\Desktop\达人采集助手-portable-v3\达人采集助手-portable-v3\app\runtime\python\Lib\asyncio\base_events.py", line 654, in run_until_complete return future.result() ^^^^^^^^^^^^^^^ File "C:\Users\EDY\Desktop\达人采集助手-portable-v3\达人采集助手-portable-v3\app\MediaCrawler-main\tools\app_runner.py", line 96, in _runner await app_main() File "C:\Users\EDY\Desktop\达人采集助手-portable-v3\达人采集助手-portable-v3\app\MediaCrawler-main\main.py", line 114, in main await crawler.start() File "C:\Users\EDY\Desktop\达人采集助手-portable-v3\达人采集助手-portable-v3\app\MediaCrawler-main\media_platform\douyin\core.py", line 141, in start await self.get_creators_and_videos() File "C:\Users\EDY\Desktop\达人采集助手-portable-v3\达人采集助手-portable-v3\app\MediaCrawler-main\media_platform\douyin\core.py", line 342, in get_creators_and_videos creator_work_counts = await asyncio.gather( ^^^^^^^^^^^^^^^^^^^^^ File "C:\Users\EDY\Desktop\达人采集助手-portable-v3\达人采集助手-portable-v3\app\MediaCrawler-main\media_platform\douyin\core.py", line 306, in fetch_one_creator creator_info: Dict = await self.dy_client.get_user_info(user_id) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "C:\Users\EDY\Desktop\达人采集助手-portable-v3\达人采集助手-portable-v3\app\MediaCrawler-main\media_platform\douyin\client.py", line 319, in get_user_info return await self.get(uri, params) ^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "C:\Users\EDY\Desktop\达人采集助手-portable-v3\达人采集助手-portable-v3\app\MediaCrawler-main\media_platform\douyin\client.py", line 141, in get await self.__process_req_params(uri, params, headers) File "C:\Users\EDY\Desktop\达人采集助手-portable-v3\达人采集助手-portable-v3\app\MediaCrawler-main\media_platform\douyin\client.py", line 120, in __process_req_params a_bogus = await get_a_bogus(uri, query_string, post_data, headers["User-Agent"], self.playwright_page) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "C:\Users\EDY\Desktop\达人采集助手-portable-v3\达人采集助手-portable-v3\app\MediaCrawler-main\media_platform\douyin\help.py", line 81, in get_a_bogus return get_a_bogus_from_js(url, params, user_agent) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "C:\Users\EDY\Desktop\达人采集助手-portable-v3\达人采集助手-portable-v3\app\MediaCrawler-main\media_platform\douyin\help.py", line 100, in get_a_bogus_from_js result = subprocess.run( ^^^^^^^^^^^^^^^ File "C:\Users\EDY\Desktop\达人采集助手-portable-v3\达人采集助手-portable-v3\app\runtime\python\Lib\subprocess.py", line 548, in run with Popen(*popenargs, **kwargs) as process: ^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "C:\Users\EDY\Desktop\达人采集助手-portable-v3\达人采集助手-portable-v3\app\runtime\python\Lib\subprocess.py", line 1026, in __init__ self._execute_child(args, executable, preexec_fn, close_fds, File "C:\Users\EDY\Desktop\达人采集助手-portable-v3\达人采集助手-portable-v3\app\runtime\python\Lib\subprocess.py", line 1538, in _execute_child hp, ht, pid, tid = _winapi.CreateProcess(executable, args, ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ FileNotFoundError: [WinError 2] 系统找不到指定的文件。
AAA孔龙抗狼 主页采集失败:2026-09-17 14:22:42 MediaCrawler INFO (core.py:77) - [DouYinCrawler] 使用CDP模式启动浏览器 2026-09-17 14:22:42 MediaCrawler INFO (cdp_browser.py:152) - [CDPBrowserManager] Connecting to existing browser on port 9222... 2026-09-17 14:22:42 MediaCrawler INFO (cdp_browser.py:155) - [CDPBrowserManager] Make sure remote debugging is enabled in your browser: chrome://inspect/#remote-debugging 2026-09-17 14:22:42 MediaCrawler INFO (cdp_browser.py:163) - [CDPBrowserManager] Waiting up to 60s for browser CDP connection... 2026-09-17 14:22:42 MediaCrawler INFO (cdp_browser.py:237) - [CDPBrowserManager] CDP port 9222 is accessible 2026-09-17 14:22:42 MediaCrawler INFO (cdp_browser.py:301) - [CDPBrowserManager] Got browser WebSocket URL: ws://localhost:9222/devtools/browser/f079b23d-96c5-4a1d-989c-33629bf0f438 2026-09-17 14:22:42 MediaCrawler INFO (cdp_browser.py:329) - [CDPBrowserManager] Connecting to existing browser via discovered CDP (attempt 1/3): ws://localhost:9222/devtools/browser/f079b23d-96c5-4a1d-989c-33629bf0f438 2026-09-17 14:22:42 MediaCrawler INFO (cdp_browser.py:333) - [CDPBrowserManager] If Chrome asks whether to allow remote debugging, accept it in the already logged-in browser window 2026-09-17 14:22:43 MediaCrawler INFO (cdp_browser.py:364) - [CDPBrowserManager] Successfully connected to browser 2026-09-17 14:22:43 MediaCrawler INFO (cdp_browser.py:365) - [CDPBrowserManager] Browser contexts count: 1 2026-09-17 14:22:43 MediaCrawler INFO (cdp_browser.py:390) - [CDPBrowserManager] Using existing browser context 2026-09-17 14:22:43 MediaCrawler INFO (cdp_browser.py:194) - [CDPBrowserManager] Successfully connected to existing browser 2026-09-17 14:22:43 MediaCrawler INFO (cdp_browser.py:422) - [CDPBrowserManager] Added anti-detection script: libs/stealth.min.js 2026-09-17 14:22:43 MediaCrawler INFO (core.py:450) - [DouYinCrawler] CDP浏览器信息: {'version': '152.0.7977.83', 'contexts_count': 1, 'debug_port': 9222, 'is_connected': True} 2026-09-17 14:22:47 MediaCrawler INFO (core.py:293) - [DouYinCrawler.get_creators_and_videos] Begin get douyin creators 2026-09-17 14:22:47 MediaCrawler INFO (core.py:294) - [DouYinCrawler.get_creators_and_videos] Parsing creator URLs... 2026-09-17 14:22:47 MediaCrawler INFO (core.py:339) - [DouYinCrawler.get_creators_and_videos] Creator concurrency: 2 2026-09-17 14:22:47 MediaCrawler INFO (core.py:301) - [DouYinCrawler.get_creators_and_videos] Parsed sec_user_id: MS4wLjABAAAAcdV0gXMX-2NowbEBz6sIOitjtNkS6OrMFboOXglN_24 from MS4wLjABAAAAcdV0gXMX-2NowbEBz6sIOitjtNkS6OrMFboOXglN_24 2026-09-17 14:22:47 MediaCrawler INFO (core.py:301) - [DouYinCrawler.get_creators_and_videos] Parsed sec_user_id: MS4wLjABAAAAcoB7wwtHNv_SA37jK1z1FHvzg0PPR6G7C7ar3T5J0rE from MS4wLjABAAAAcoB7wwtHNv_SA37jK1z1FHvzg0PPR6G7C7ar3T5J0rE 2026-09-17 14:22:47 MediaCrawler INFO (core.py:301) - [DouYinCrawler.get_creators_and_videos] Parsed sec_user_id: MS4wLjABAAAAhPcICW7ccBHl3NXTO7YtlCBbDdnQpJINPc5qu4Dqj6he_-YeQ7G80iK_LFTVBZvc from MS4wLjABAAAAhPcICW7ccBHl3NXTO7YtlCBbDdnQpJINPc5qu4Dqj6he_-YeQ7G80iK_LFTVBZvc 2026-09-17 14:22:47 MediaCrawler INFO (cdp_browser.py:490) - [CDPBrowserManager] Browser connection disconnected 2026-09-17 14:22:47 MediaCrawler INFO (cdp_browser.py:507) - [CDPBrowserManager] Connected to existing browser, skipping process cleanup 2026-09-17 14:22:47 MediaCrawler INFO (core.py:301) - [DouYinCrawler.get_creators_and_videos] Parsed sec_user_id: MS4wLjABAAAAt0TXuTMnoUvY_UkXiXPdrR-f-SHqWcgN9mRYW_nsq-4 from MS4wLjABAAAAt0TXuTMnoUvY_UkXiXPdrR-f-SHqWcgN9mRYW_nsq-4 2026-09-17 14:22:47 MediaCrawler INFO (core.py:301) - [DouYinCrawler.get_creators_and_videos] Parsed sec_user_id: MS4wLjABAAAAxz6zLvaThtHTFH90gjHMDsA24teKLo77ks4IcrNMaeMzfDpFWDty7XPstW76-uI- from MS4wLjABAAAAxz6zLvaThtHTFH90gjHMDsA24teKLo77ks4IcrNMaeMzfDpFWDty7XPstW76-uI- Traceback (most recent call last): File "C:\Users\EDY\Documents\流程\kol-crm-next\scripts\run-mediacrawler.py", line 21, in <module> runpy.run_path(os.path.join(crawler_root, "main.py"), run_name="__main__") File "<frozen runpy>", line 291, in run_path File "<frozen runpy>", line 98, in _run_module_code File "<frozen runpy>", line 88, in _run_code File "C:\Users\EDY\Desktop\达人采集助手-portable-v3\达人采集助手-portable-v3\app\MediaCrawler-main\main.py", line 174, in <module> run(main, async_cleanup, cleanup_timeout_seconds=15.0, on_first_interrupt=_force_stop) File "C:\Users\EDY\Desktop\达人采集助手-portable-v3\达人采集助手-portable-v3\app\MediaCrawler-main\tools\app_runner.py", line 109, in run asyncio.run(_runner()) File "C:\Users\EDY\Desktop\达人采集助手-portable-v3\达人采集助手-portable-v3\app\runtime\python\Lib\asyncio\runners.py", line 190, in run return runner.run(main) ^^^^^^^^^^^^^^^^ File "C:\Users\EDY\Desktop\达人采集助手-portable-v3\达人采集助手-portable-v3\app\runtime\python\Lib\asyncio\runners.py", line 118, in run return self._loop.run_until_complete(task) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "C:\Users\EDY\Desktop\达人采集助手-portable-v3\达人采集助手-portable-v3\app\runtime\python\Lib\asyncio\base_events.py", line 654, in run_until_complete return future.result() ^^^^^^^^^^^^^^^ File "C:\Users\EDY\Desktop\达人采集助手-portable-v3\达人采集助手-portable-v3\app\MediaCrawler-main\tools\app_runner.py", line 96, in _runner await app_main() File "C:\Users\EDY\Desktop\达人采集助手-portable-v3\达人采集助手-portable-v3\app\MediaCrawler-main\main.py", line 114, in main await crawler.start() File "C:\Users\EDY\Desktop\达人采集助手-portable-v3\达人采集助手-portable-v3\app\MediaCrawler-main\media_platform\douyin\core.py", line 141, in start await self.get_creators_and_videos() File "C:\Users\EDY\Desktop\达人采集助手-portable-v3\达人采集助手-portable-v3\app\MediaCrawler-main\media_platform\douyin\core.py", line 342, in get_creators_and_videos creator_work_counts = await asyncio.gather( ^^^^^^^^^^^^^^^^^^^^^ File "C:\Users\EDY\Desktop\达人采集助手-portable-v3\达人采集助手-portable-v3\app\MediaCrawler-main\media_platform\douyin\core.py", line 306, in fetch_one_creator creator_info: Dict = await self.dy_client.get_user_info(user_id) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "C:\Users\EDY\Desktop\达人采集助手-portable-v3\达人采集助手-portable-v3\app\MediaCrawler-main\media_platform\douyin\client.py", line 319, in get_user_info return await self.get(uri, params) ^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "C:\Users\EDY\Desktop\达人采集助手-portable-v3\达人采集助手-portable-v3\app\MediaCrawler-main\media_platform\douyin\client.py", line 141, in get await self.__process_req_params(uri, params, headers) File "C:\Users\EDY\Desktop\达人采集助手-portable-v3\达人采集助手-portable-v3\app\MediaCrawler-main\media_platform\douyin\client.py", line 120, in __process_req_params a_bogus = await get_a_bogus(uri, query_string, post_data, headers["User-Agent"], self.playwright_page) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "C:\Users\EDY\Desktop\达人采集助手-portable-v3\达人采集助手-portable-v3\app\MediaCrawler-main\media_platform\douyin\help.py", line 81, in get_a_bogus return get_a_bogus_from_js(url, params, user_agent) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "C:\Users\EDY\Desktop\达人采集助手-portable-v3\达人采集助手-portable-v3\app\MediaCrawler-main\media_platform\douyin\help.py", line 100, in get_a_bogus_from_js result = subprocess.run( ^^^^^^^^^^^^^^^ File "C:\Users\EDY\Desktop\达人采集助手-portable-v3\达人采集助手-portable-v3\app\runtime\python\Lib\subprocess.py", line 548, in run with Popen(*popenargs, **kwargs) as process: ^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "C:\Users\EDY\Desktop\达人采集助手-portable-v3\达人采集助手-portable-v3\app\runtime\python\Lib\subprocess.py", line 1026, in __init__ self._execute_child(args, executable, preexec_fn, close_fds, File "C:\Users\EDY\Desktop\达人采集助手-portable-v3\达人采集助手-portable-v3\app\runtime\python\Lib\subprocess.py", line 1538, in _execute_child hp, ht, pid, tid = _winapi.CreateProcess(executable, args, ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ FileNotFoundError: [WinError 2] 系统找不到指定的文件。
Oott 主页采集失败:2026-09-17 14:10:33 MediaCrawler INFO (core.py:77) - [DouYinCrawler] 使用CDP模式启动浏览器 2026-09-17 14:10:33 MediaCrawler INFO (cdp_browser.py:152) - [CDPBrowserManager] Connecting to existing browser on port 9222... 2026-09-17 14:10:33 MediaCrawler INFO (cdp_browser.py:155) - [CDPBrowserManager] Make sure remote debugging is enabled in your browser: chrome://inspect/#remote-debugging 2026-09-17 14:10:33 MediaCrawler INFO (cdp_browser.py:163) - [CDPBrowserManager] Waiting up to 60s for browser CDP connection... 2026-09-17 14:10:33 MediaCrawler INFO (cdp_browser.py:237) - [CDPBrowserManager] CDP port 9222 is accessible 2026-09-17 14:10:33 MediaCrawler INFO (cdp_browser.py:301) - [CDPBrowserManager] Got browser WebSocket URL: ws://localhost:9222/devtools/browser/7c03ef21-ce48-4e92-88b7-8abe72aed2f3 2026-09-17 14:10:33 MediaCrawler INFO (cdp_browser.py:329) - [CDPBrowserManager] Connecting to existing browser via discovered CDP (attempt 1/3): ws://localhost:9222/devtools/browser/7c03ef21-ce48-4e92-88b7-8abe72aed2f3 2026-09-17 14:10:33 MediaCrawler INFO (cdp_browser.py:333) - [CDPBrowserManager] If Chrome asks whether to allow remote debugging, accept it in the already logged-in browser window 2026-09-17 14:10:34 MediaCrawler INFO (cdp_browser.py:364) - [CDPBrowserManager] Successfully connected to browser 2026-09-17 14:10:34 MediaCrawler INFO (cdp_browser.py:365) - [CDPBrowserManager] Browser contexts count: 1 2026-09-17 14:10:34 MediaCrawler INFO (cdp_browser.py:390) - [CDPBrowserManager] Using existing browser context 2026-09-17 14:10:34 MediaCrawler INFO (cdp_browser.py:194) - [CDPBrowserManager] Successfully connected to existing browser 2026-09-17 14:10:34 MediaCrawler INFO (cdp_browser.py:422) - [CDPBrowserManager] Added anti-detection script: libs/stealth.min.js 2026-09-17 14:10:34 MediaCrawler INFO (core.py:450) - [DouYinCrawler] CDP浏览器信息: {'version': '152.0.7977.83', 'contexts_count': 1, 'debug_port': 9222, 'is_connected': True} 2026-09-17 14:10:38 MediaCrawler INFO (core.py:293) - [DouYinCrawler.get_creators_and_videos] Begin get douyin creators 2026-09-17 14:10:38 MediaCrawler INFO (core.py:294) - [DouYinCrawler.get_creators_and_videos] Parsing creator URLs... 2026-09-17 14:10:38 MediaCrawler INFO (core.py:339) - [DouYinCrawler.get_creators_and_videos] Creator concurrency: 2 2026-09-17 14:10:38 MediaCrawler INFO (core.py:301) - [DouYinCrawler.get_creators_and_videos] Parsed sec_user_id: MS4wLjABAAAAGHb1_jgdSRXaRc9QhHINSSoQyr_K8BhihKzRnyt1qYo from MS4wLjABAAAAGHb1_jgdSRXaRc9QhHINSSoQyr_K8BhihKzRnyt1qYo 2026-09-17 14:10:38 MediaCrawler INFO (core.py:301) - [DouYinCrawler.get_creators_and_videos] Parsed sec_user_id: MS4wLjABAAAAKGbG57eEly5jAMr5dU7T6fw6Q_ApxKcG_i4T8cj3QvIj0l0BGVHlZ4h-ZYG4I_0o from MS4wLjABAAAAKGbG57eEly5jAMr5dU7T6fw6Q_ApxKcG_i4T8cj3QvIj0l0BGVHlZ4h-ZYG4I_0o 2026-09-17 14:10:38 MediaCrawler INFO (core.py:301) - [DouYinCrawler.get_creators_and_videos] Parsed sec_user_id: MS4wLjABAAAAkxTmmmGLa6G8r5omA-I7krelbMGq0nbnAD3H5LouiCM from MS4wLjABAAAAkxTmmmGLa6G8r5omA-I7krelbMGq0nbnAD3H5LouiCM 2026-09-17 14:10:38 MediaCrawler INFO (cdp_browser.py:490) - [CDPBrowserManager] Browser connection disconnected 2026-09-17 14:10:38 MediaCrawler INFO (cdp_browser.py:507) - [CDPBrowserManager] Connected to existing browser, skipping process cleanup 2026-09-17 14:10:38 MediaCrawler INFO (core.py:301) - [DouYinCrawler.get_creators_and_videos] Parsed sec_user_id: MS4wLjABAAAAle7-WPDrlgIShvkj-vjnXOnWP8eD9AsNw7_6yMjy-sWxYEOAvMJ__CyxNYJeftul from MS4wLjABAAAAle7-WPDrlgIShvkj-vjnXOnWP8eD9AsNw7_6yMjy-sWxYEOAvMJ__CyxNYJeftul 2026-09-17 14:10:38 MediaCrawler INFO (core.py:301) - [DouYinCrawler.get_creators_and_videos] Parsed sec_user_id: MS4wLjABAAAAVFq9kOxCq6lNV9f0nRQa8TXC3J4nN1XV7FaVQKTlrLLgNbOnIp47HFNbe7-K1LwO from MS4wLjABAAAAVFq9kOxCq6lNV9f0nRQa8TXC3J4nN1XV7FaVQKTlrLLgNbOnIp47HFNbe7-K1LwO Traceback (most recent call last): File "C:\Users\EDY\Documents\流程\kol-crm-next\scripts\run-mediacrawler.py", line 21, in <module> runpy.run_path(os.path.join(crawler_root, "main.py"), run_name="__main__") File "<frozen runpy>", line 291, in run_path File "<frozen runpy>", line 98, in _run_module_code File "<frozen runpy>", line 88, in _run_code File "C:\Users\EDY\Desktop\达人采集助手-portable-v3\达人采集助手-portable-v3\app\MediaCrawler-main\main.py", line 174, in <module> run(main, async_cleanup, cleanup_timeout_seconds=15.0, on_first_interrupt=_force_stop) File "C:\Users\EDY\Desktop\达人采集助手-portable-v3\达人采集助手-portable-v3\app\MediaCrawler-main\tools\app_runner.py", line 109, in run asyncio.run(_runner()) File "C:\Users\EDY\Desktop\达人采集助手-portable-v3\达人采集助手-portable-v3\app\runtime\python\Lib\asyncio\runners.py", line 190, in run return runner.run(main) ^^^^^^^^^^^^^^^^ File "C:\Users\EDY\Desktop\达人采集助手-portable-v3\达人采集助手-portable-v3\app\runtime\python\Lib\asyncio\runners.py", line 118, in run return self._loop.run_until_complete(task) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "C:\Users\EDY\Desktop\达人采集助手-portable-v3\达人采集助手-portable-v3\app\runtime\python\Lib\asyncio\base_events.py", line 654, in run_until_complete return future.result() ^^^^^^^^^^^^^^^ File "C:\Users\EDY\Desktop\达人采集助手-portable-v3\达人采集助手-portable-v3\app\MediaCrawler-main\tools\app_runner.py", line 96, in _runner await app_main() File "C:\Users\EDY\Desktop\达人采集助手-portable-v3\达人采集助手-portable-v3\app\MediaCrawler-main\main.py", line 114, in main await crawler.start() File "C:\Users\EDY\Desktop\达人采集助手-portable-v3\达人采集助手-portable-v3\app\MediaCrawler-main\media_platform\douyin\core.py", line 141, in start await self.get_creators_and_videos() File "C:\Users\EDY\Desktop\达人采集助手-portable-v3\达人采集助手-portable-v3\app\MediaCrawler-main\media_platform\douyin\core.py", line 342, in get_creators_and_videos creator_work_counts = await asyncio.gather( ^^^^^^^^^^^^^^^^^^^^^ File "C:\Users\EDY\Desktop\达人采集助手-portable-v3\达人采集助手-portable-v3\app\MediaCrawler-main\media_platform\douyin\core.py", line 306, in fetch_one_creator creator_info: Dict = await self.dy_client.get_user_info(user_id) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "C:\Users\EDY\Desktop\达人采集助手-portable-v3\达人采集助手-portable-v3\app\MediaCrawler-main\media_platform\douyin\client.py", line 319, in get_user_info return await self.get(uri, params) ^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "C:\Users\EDY\Desktop\达人采集助手-portable-v3\达人采集助手-portable-v3\app\MediaCrawler-main\media_platform\douyin\client.py", line 141, in get await self.__process_req_params(uri, params, headers) File "C:\Users\EDY\Desktop\达人采集助手-portable-v3\达人采集助手-portable-v3\app\MediaCrawler-main\media_platform\douyin\client.py", line 120, in __process_req_params a_bogus = await get_a_bogus(uri, query_string, post_data, headers["User-Agent"], self.playwright_page) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "C:\Users\EDY\Desktop\达人采集助手-portable-v3\达人采集助手-portable-v3\app\MediaCrawler-main\media_platform\douyin\help.py", line 81, in get_a_bogus return get_a_bogus_from_js(url, params, user_agent) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "C:\Users\EDY\Desktop\达人采集助手-portable-v3\达人采集助手-portable-v3\app\MediaCrawler-main\media_platform\douyin\help.py", line 100, in get_a_bogus_from_js result = subprocess.run( ^^^^^^^^^^^^^^^ File "C:\Users\EDY\Desktop\达人采集助手-portable-v3\达人采集助手-portable-v3\app\runtime\python\Lib\subprocess.py", line 548, in run with Popen(*popenargs, **kwargs) as process: ^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "C:\Users\EDY\Desktop\达人采集助手-portable-v3\达人采集助手-portable-v3\app\runtime\python\Lib\subprocess.py", line 1026, in __init__ self._execute_child(args, executable, preexec_fn, close_fds, File "C:\Users\EDY\Desktop\达人采集助手-portable-v3\达人采集助手-portable-v3\app\runtime\python\Lib\subprocess.py", line 1538, in _execute_child hp, ht, pid, tid = _winapi.CreateProcess(executable, args, ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ FileNotFoundError: [WinError 2] 系统找不到指定的文件。
酸菜馅超大包子 主页采集失败:2026-09-17 16:17:32 MediaCrawler INFO (core.py:77) - [DouYinCrawler] 使用CDP模式启动浏览器 2026-09-17 16:17:32 MediaCrawler INFO (cdp_browser.py:152) - [CDPBrowserManager] Connecting to existing browser on port 9222... 2026-09-17 16:17:32 MediaCrawler INFO (cdp_browser.py:155) - [CDPBrowserManager] Make sure remote debugging is enabled in your browser: chrome://inspect/#remote-debugging 2026-09-17 16:17:32 MediaCrawler INFO (cdp_browser.py:163) - [CDPBrowserManager] Waiting up to 60s for browser CDP connection... 2026-09-17 16:17:32 MediaCrawler INFO (cdp_browser.py:237) - [CDPBrowserManager] CDP port 9222 is accessible 2026-09-17 16:17:32 MediaCrawler INFO (cdp_browser.py:301) - [CDPBrowserManager] Got browser WebSocket URL: ws://localhost:9222/devtools/browser/b6166241-0447-4b83-98ca-78fdbeb71daf 2026-09-17 16:17:32 MediaCrawler INFO (cdp_browser.py:329) - [CDPBrowserManager] Connecting to existing browser via discovered CDP (attempt 1/3): ws://localhost:9222/devtools/browser/b6166241-0447-4b83-98ca-78fdbeb71daf 2026-09-17 16:17:32 MediaCrawler INFO (cdp_browser.py:333) - [CDPBrowserManager] If Chrome asks whether to allow remote debugging, accept it in the already logged-in browser window 2026-09-17 16:17:33 MediaCrawler INFO (cdp_browser.py:364) - [CDPBrowserManager] Successfully connected to browser 2026-09-17 16:17:33 MediaCrawler INFO (cdp_browser.py:365) - [CDPBrowserManager] Browser contexts count: 1 2026-09-17 16:17:33 MediaCrawler INFO (cdp_browser.py:390) - [CDPBrowserManager] Using existing browser context 2026-09-17 16:17:33 MediaCrawler INFO (cdp_browser.py:194) - [CDPBrowserManager] Successfully connected to existing browser 2026-09-17 16:17:33 MediaCrawler INFO (cdp_browser.py:422) - [CDPBrowserManager] Added anti-detection script: libs/stealth.min.js 2026-09-17 16:17:33 MediaCrawler INFO (core.py:450) - [DouYinCrawler] CDP浏览器信息: {'version': '152.0.7977.83', 'contexts_count': 1, 'debug_port': 9222, 'is_connected': True} 2026-09-17 16:17:36 MediaCrawler INFO (core.py:293) - [DouYinCrawler.get_creators_and_videos] Begin get douyin creators 2026-09-17 16:17:36 MediaCrawler INFO (core.py:294) - [DouYinCrawler.get_creators_and_videos] Parsing creator URLs... 2026-09-17 16:17:36 MediaCrawler INFO (core.py:339) - [DouYinCrawler.get_creators_and_videos] Creator concurrency: 2 2026-09-17 16:17:36 MediaCrawler INFO (core.py:301) - [DouYinCrawler.get_creators_and_videos] Parsed sec_user_id: MS4wLjABAAAA0V7AJ3EqoDNA8kIaTzSCQzR5lY8rhK0rquicc8JzoO78x-2PZvlrqDrJju1s6h-1 from MS4wLjABAAAA0V7AJ3EqoDNA8kIaTzSCQzR5lY8rhK0rquicc8JzoO78x-2PZvlrqDrJju1s6h-1 2026-09-17 16:17:36 MediaCrawler INFO (core.py:301) - [DouYinCrawler.get_creators_and_videos] Parsed sec_user_id: MS4wLjABAAAADINv1UMy9-XKl7ifoN_WzfKBfTNGJYHL1hgQXrK9UtI from MS4wLjABAAAADINv1UMy9-XKl7ifoN_WzfKBfTNGJYHL1hgQXrK9UtI 2026-09-17 16:17:36 MediaCrawler INFO (core.py:301) - [DouYinCrawler.get_creators_and_videos] Parsed sec_user_id: MS4wLjABAAAAi2W5j6pqn7Gea1ZujhxXNdq8qzntPAaKIijbt4qpidw from MS4wLjABAAAAi2W5j6pqn7Gea1ZujhxXNdq8qzntPAaKIijbt4qpidw 2026-09-17 16:17:36 MediaCrawler INFO (cdp_browser.py:490) - [CDPBrowserManager] Browser connection disconnected 2026-09-17 16:17:36 MediaCrawler INFO (cdp_browser.py:507) - [CDPBrowserManager] Connected to existing browser, skipping process cleanup 2026-09-17 16:17:36 MediaCrawler INFO (core.py:301) - [DouYinCrawler.get_creators_and_videos] Parsed sec_user_id: MS4wLjABAAAAQwuzE95dyOwLtYtv-C4p14wnCepnVnl5kUTOVfrrDRT8yNNLMzyl4CROKkqRKv4R from MS4wLjABAAAAQwuzE95dyOwLtYtv-C4p14wnCepnVnl5kUTOVfrrDRT8yNNLMzyl4CROKkqRKv4R 2026-09-17 16:17:36 MediaCrawler INFO (core.py:301) - [DouYinCrawler.get_creators_and_videos] Parsed sec_user_id: MS4wLjABAAAARuliBL9lf98sy7kkYWK9gHJzA7lzo6UcQpd6pub1N5hjVTcjhnHYbQz9p0s4T3iB from MS4wLjABAAAARuliBL9lf98sy7kkYWK9gHJzA7lzo6UcQpd6pub1N5hjVTcjhnHYbQz9p0s4T3iB Traceback (most recent call last): File "C:\Users\EDY\Desktop\达人采集助手-portable-v2\app\scripts\run-mediacrawler.py", line 21, in <module> runpy.run_path(os.path.join(crawler_root, "main.py"), run_name="__main__") File "<frozen runpy>", line 291, in run_path File "<frozen runpy>", line 98, in _run_module_code File "<frozen runpy>", line 88, in _run_code File "C:\Users\EDY\Desktop\达人采集助手-portable-v2\app\MediaCrawler-main\main.py", line 174, in <module> run(main, async_cleanup, cleanup_timeout_seconds=15.0, on_first_interrupt=_force_stop) File "C:\Users\EDY\Desktop\达人采集助手-portable-v2\app\MediaCrawler-main\tools\app_runner.py", line 109, in run asyncio.run(_runner()) File "C:\Users\EDY\Desktop\达人采集助手-portable-v2\app\runtime\python\Lib\asyncio\runners.py", line 190, in run return runner.run(main) ^^^^^^^^^^^^^^^^ File "C:\Users\EDY\Desktop\达人采集助手-portable-v2\app\runtime\python\Lib\asyncio\runners.py", line 118, in run return self._loop.run_until_complete(task) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "C:\Users\EDY\Desktop\达人采集助手-portable-v2\app\runtime\python\Lib\asyncio\base_events.py", line 654, in run_until_complete return future.result() ^^^^^^^^^^^^^^^ File "C:\Users\EDY\Desktop\达人采集助手-portable-v2\app\MediaCrawler-main\tools\app_runner.py", line 96, in _runner await app_main() File "C:\Users\EDY\Desktop\达人采集助手-portable-v2\app\MediaCrawler-main\main.py", line 114, in main await crawler.start() File "C:\Users\EDY\Desktop\达人采集助手-portable-v2\app\MediaCrawler-main\media_platform\douyin\core.py", line 141, in start await self.get_creators_and_videos() File "C:\Users\EDY\Desktop\达人采集助手-portable-v2\app\MediaCrawler-main\media_platform\douyin\core.py", line 342, in get_creators_and_videos creator_work_counts = await asyncio.gather( ^^^^^^^^^^^^^^^^^^^^^ File "C:\Users\EDY\Desktop\达人采集助手-portable-v2\app\MediaCrawler-main\media_platform\douyin\core.py", line 306, in fetch_one_creator creator_info: Dict = await self.dy_client.get_user_info(user_id) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "C:\Users\EDY\Desktop\达人采集助手-portable-v2\app\MediaCrawler-main\media_platform\douyin\client.py", line 319, in get_user_info return await self.get(uri, params) ^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "C:\Users\EDY\Desktop\达人采集助手-portable-v2\app\MediaCrawler-main\media_platform\douyin\client.py", line 141, in get await self.__process_req_params(uri, params, headers) File "C:\Users\EDY\Desktop\达人采集助手-portable-v2\app\MediaCrawler-main\media_platform\douyin\client.py", line 120, in __process_req_params a_bogus = await get_a_bogus(uri, query_string, post_data, headers["User-Agent"], self.playwright_page) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "C:\Users\EDY\Desktop\达人采集助手-portable-v2\app\MediaCrawler-main\media_platform\douyin\help.py", line 81, in get_a_bogus return get_a_bogus_from_js(url, params, user_agent) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "C:\Users\EDY\Desktop\达人采集助手-portable-v2\app\MediaCrawler-main\media_platform\douyin\help.py", line 100, in get_a_bogus_from_js result = subprocess.run( ^^^^^^^^^^^^^^^ File "C:\Users\EDY\Desktop\达人采集助手-portable-v2\app\runtime\python\Lib\subprocess.py", line 548, in run with Popen(*popenargs, **kwargs) as process: ^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "C:\Users\EDY\Desktop\达人采集助手-portable-v2\app\runtime\python\Lib\subprocess.py", line 1026, in __init__ self._execute_child(args, executable, preexec_fn, close_fds, File "C:\Users\EDY\Desktop\达人采集助手-portable-v2\app\runtime\python\Lib\subprocess.py", line 1538, in _execute_child hp, ht, pid, tid = _winapi.CreateProcess(executable, args, ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ FileNotFoundError: [WinError 2] 系统找不到指定的文件。
かみ 主页采集失败:2026-09-17 14:22:42 MediaCrawler INFO (core.py:77) - [DouYinCrawler] 使用CDP模式启动浏览器 2026-09-17 14:22:42 MediaCrawler INFO (cdp_browser.py:152) - [CDPBrowserManager] Connecting to existing browser on port 9222... 2026-09-17 14:22:42 MediaCrawler INFO (cdp_browser.py:155) - [CDPBrowserManager] Make sure remote debugging is enabled in your browser: chrome://inspect/#remote-debugging 2026-09-17 14:22:42 MediaCrawler INFO (cdp_browser.py:163) - [CDPBrowserManager] Waiting up to 60s for browser CDP connection... 2026-09-17 14:22:42 MediaCrawler INFO (cdp_browser.py:237) - [CDPBrowserManager] CDP port 9222 is accessible 2026-09-17 14:22:42 MediaCrawler INFO (cdp_browser.py:301) - [CDPBrowserManager] Got browser WebSocket URL: ws://localhost:9222/devtools/browser/f079b23d-96c5-4a1d-989c-33629bf0f438 2026-09-17 14:22:42 MediaCrawler INFO (cdp_browser.py:329) - [CDPBrowserManager] Connecting to existing browser via discovered CDP (attempt 1/3): ws://localhost:9222/devtools/browser/f079b23d-96c5-4a1d-989c-33629bf0f438 2026-09-17 14:22:42 MediaCrawler INFO (cdp_browser.py:333) - [CDPBrowserManager] If Chrome asks whether to allow remote debugging, accept it in the already logged-in browser window 2026-09-17 14:22:43 MediaCrawler INFO (cdp_browser.py:364) - [CDPBrowserManager] Successfully connected to browser 2026-09-17 14:22:43 MediaCrawler INFO (cdp_browser.py:365) - [CDPBrowserManager] Browser contexts count: 1 2026-09-17 14:22:43 MediaCrawler INFO (cdp_browser.py:390) - [CDPBrowserManager] Using existing browser context 2026-09-17 14:22:43 MediaCrawler INFO (cdp_browser.py:194) - [CDPBrowserManager] Successfully connected to existing browser 2026-09-17 14:22:43 MediaCrawler INFO (cdp_browser.py:422) - [CDPBrowserManager] Added anti-detection script: libs/stealth.min.js 2026-09-17 14:22:43 MediaCrawler INFO (core.py:450) - [DouYinCrawler] CDP浏览器信息: {'version': '152.0.7977.83', 'contexts_count': 1, 'debug_port': 9222, 'is_connected': True} 2026-09-17 14:22:47 MediaCrawler INFO (core.py:293) - [DouYinCrawler.get_creators_and_videos] Begin get douyin creators 2026-09-17 14:22:47 MediaCrawler INFO (core.py:294) - [DouYinCrawler.get_creators_and_videos] Parsing creator URLs... 2026-09-17 14:22:47 MediaCrawler INFO (core.py:339) - [DouYinCrawler.get_creators_and_videos] Creator concurrency: 2 2026-09-17 14:22:47 MediaCrawler INFO (core.py:301) - [DouYinCrawler.get_creators_and_videos] Parsed sec_user_id: MS4wLjABAAAAcdV0gXMX-2NowbEBz6sIOitjtNkS6OrMFboOXglN_24 from MS4wLjABAAAAcdV0gXMX-2NowbEBz6sIOitjtNkS6OrMFboOXglN_24 2026-09-17 14:22:47 MediaCrawler INFO (core.py:301) - [DouYinCrawler.get_creators_and_videos] Parsed sec_user_id: MS4wLjABAAAAcoB7wwtHNv_SA37jK1z1FHvzg0PPR6G7C7ar3T5J0rE from MS4wLjABAAAAcoB7wwtHNv_SA37jK1z1FHvzg0PPR6G7C7ar3T5J0rE 2026-09-17 14:22:47 MediaCrawler INFO (core.py:301) - [DouYinCrawler.get_creators_and_videos] Parsed sec_user_id: MS4wLjABAAAAhPcICW7ccBHl3NXTO7YtlCBbDdnQpJINPc5qu4Dqj6he_-YeQ7G80iK_LFTVBZvc from MS4wLjABAAAAhPcICW7ccBHl3NXTO7YtlCBbDdnQpJINPc5qu4Dqj6he_-YeQ7G80iK_LFTVBZvc 2026-09-17 14:22:47 MediaCrawler INFO (cdp_browser.py:490) - [CDPBrowserManager] Browser connection disconnected 2026-09-17 14:22:47 MediaCrawler INFO (cdp_browser.py:507) - [CDPBrowserManager] Connected to existing browser, skipping process cleanup 2026-09-17 14:22:47 MediaCrawler INFO (core.py:301) - [DouYinCrawler.get_creators_and_videos] Parsed sec_user_id: MS4wLjABAAAAt0TXuTMnoUvY_UkXiXPdrR-f-SHqWcgN9mRYW_nsq-4 from MS4wLjABAAAAt0TXuTMnoUvY_UkXiXPdrR-f-SHqWcgN9mRYW_nsq-4 2026-09-17 14:22:47 MediaCrawler INFO (core.py:301) - [DouYinCrawler.get_creators_and_videos] Parsed sec_user_id: MS4wLjABAAAAxz6zLvaThtHTFH90gjHMDsA24teKLo77ks4IcrNMaeMzfDpFWDty7XPstW76-uI- from MS4wLjABAAAAxz6zLvaThtHTFH90gjHMDsA24teKLo77ks4IcrNMaeMzfDpFWDty7XPstW76-uI- Traceback (most recent call last): File "C:\Users\EDY\Documents\流程\kol-crm-next\scripts\run-mediacrawler.py", line 21, in <module> runpy.run_path(os.path.join(crawler_root, "main.py"), run_name="__main__") File "<frozen runpy>", line 291, in run_path File "<frozen runpy>", line 98, in _run_module_code File "<frozen runpy>", line 88, in _run_code File "C:\Users\EDY\Desktop\达人采集助手-portable-v3\达人采集助手-portable-v3\app\MediaCrawler-main\main.py", line 174, in <module> run(main, async_cleanup, cleanup_timeout_seconds=15.0, on_first_interrupt=_force_stop) File "C:\Users\EDY\Desktop\达人采集助手-portable-v3\达人采集助手-portable-v3\app\MediaCrawler-main\tools\app_runner.py", line 109, in run asyncio.run(_runner()) File "C:\Users\EDY\Desktop\达人采集助手-portable-v3\达人采集助手-portable-v3\app\runtime\python\Lib\asyncio\runners.py", line 190, in run return runner.run(main) ^^^^^^^^^^^^^^^^ File "C:\Users\EDY\Desktop\达人采集助手-portable-v3\达人采集助手-portable-v3\app\runtime\python\Lib\asyncio\runners.py", line 118, in run return self._loop.run_until_complete(task) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "C:\Users\EDY\Desktop\达人采集助手-portable-v3\达人采集助手-portable-v3\app\runtime\python\Lib\asyncio\base_events.py", line 654, in run_until_complete return future.result() ^^^^^^^^^^^^^^^ File "C:\Users\EDY\Desktop\达人采集助手-portable-v3\达人采集助手-portable-v3\app\MediaCrawler-main\tools\app_runner.py", line 96, in _runner await app_main() File "C:\Users\EDY\Desktop\达人采集助手-portable-v3\达人采集助手-portable-v3\app\MediaCrawler-main\main.py", line 114, in main await crawler.start() File "C:\Users\EDY\Desktop\达人采集助手-portable-v3\达人采集助手-portable-v3\app\MediaCrawler-main\media_platform\douyin\core.py", line 141, in start await self.get_creators_and_videos() File "C:\Users\EDY\Desktop\达人采集助手-portable-v3\达人采集助手-portable-v3\app\MediaCrawler-main\media_platform\douyin\core.py", line 342, in get_creators_and_videos creator_work_counts = await asyncio.gather( ^^^^^^^^^^^^^^^^^^^^^ File "C:\Users\EDY\Desktop\达人采集助手-portable-v3\达人采集助手-portable-v3\app\MediaCrawler-main\media_platform\douyin\core.py", line 306, in fetch_one_creator creator_info: Dict = await self.dy_client.get_user_info(user_id) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "C:\Users\EDY\Desktop\达人采集助手-portable-v3\达人采集助手-portable-v3\app\MediaCrawler-main\media_platform\douyin\client.py", line 319, in get_user_info return await self.get(uri, params) ^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "C:\Users\EDY\Desktop\达人采集助手-portable-v3\达人采集助手-portable-v3\app\MediaCrawler-main\media_platform\douyin\client.py", line 141, in get await self.__process_req_params(uri, params, headers) File "C:\Users\EDY\Desktop\达人采集助手-portable-v3\达人采集助手-portable-v3\app\MediaCrawler-main\media_platform\douyin\client.py", line 120, in __process_req_params a_bogus = await get_a_bogus(uri, query_string, post_data, headers["User-Agent"], self.playwright_page) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "C:\Users\EDY\Desktop\达人采集助手-portable-v3\达人采集助手-portable-v3\app\MediaCrawler-main\media_platform\douyin\help.py", line 81, in get_a_bogus return get_a_bogus_from_js(url, params, user_agent) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "C:\Users\EDY\Desktop\达人采集助手-portable-v3\达人采集助手-portable-v3\app\MediaCrawler-main\media_platform\douyin\help.py", line 100, in get_a_bogus_from_js result = subprocess.run( ^^^^^^^^^^^^^^^ File "C:\Users\EDY\Desktop\达人采集助手-portable-v3\达人采集助手-portable-v3\app\runtime\python\Lib\subprocess.py", line 548, in run with Popen(*popenargs, **kwargs) as process: ^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "C:\Users\EDY\Desktop\达人采集助手-portable-v3\达人采集助手-portable-v3\app\runtime\python\Lib\subprocess.py", line 1026, in __init__ self._execute_child(args, executable, preexec_fn, close_fds, File "C:\Users\EDY\Desktop\达人采集助手-portable-v3\达人采集助手-portable-v3\app\runtime\python\Lib\subprocess.py", line 1538, in _execute_child hp, ht, pid, tid = _winapi.CreateProcess(executable, args, ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ FileNotFoundError: [WinError 2] 系统找不到指定的文件。
😯 主页采集失败:2026-09-17 16:32:21 MediaCrawler INFO (core.py:77) - [DouYinCrawler] 使用CDP模式启动浏览器 2026-09-17 16:32:21 MediaCrawler INFO (cdp_browser.py:152) - [CDPBrowserManager] Connecting to existing browser on port 9222... 2026-09-17 16:32:21 MediaCrawler INFO (cdp_browser.py:155) - [CDPBrowserManager] Make sure remote debugging is enabled in your browser: chrome://inspect/#remote-debugging 2026-09-17 16:32:21 MediaCrawler INFO (cdp_browser.py:163) - [CDPBrowserManager] Waiting up to 60s for browser CDP connection... 2026-09-17 16:32:21 MediaCrawler INFO (cdp_browser.py:237) - [CDPBrowserManager] CDP port 9222 is accessible 2026-09-17 16:32:21 MediaCrawler INFO (cdp_browser.py:301) - [CDPBrowserManager] Got browser WebSocket URL: ws://localhost:9222/devtools/browser/b6166241-0447-4b83-98ca-78fdbeb71daf 2026-09-17 16:32:21 MediaCrawler INFO (cdp_browser.py:329) - [CDPBrowserManager] Connecting to existing browser via discovered CDP (attempt 1/3): ws://localhost:9222/devtools/browser/b6166241-0447-4b83-98ca-78fdbeb71daf 2026-09-17 16:32:21 MediaCrawler INFO (cdp_browser.py:333) - [CDPBrowserManager] If Chrome asks whether to allow remote debugging, accept it in the already logged-in browser window 2026-09-17 16:32:24 MediaCrawler INFO (cdp_browser.py:364) - [CDPBrowserManager] Successfully connected to browser 2026-09-17 16:32:24 MediaCrawler INFO (cdp_browser.py:365) - [CDPBrowserManager] Browser contexts count: 1 2026-09-17 16:32:24 MediaCrawler INFO (cdp_browser.py:390) - [CDPBrowserManager] Using existing browser context 2026-09-17 16:32:24 MediaCrawler INFO (cdp_browser.py:194) - [CDPBrowserManager] Successfully connected to existing browser 2026-09-17 16:32:24 MediaCrawler INFO (cdp_browser.py:422) - [CDPBrowserManager] Added anti-detection script: libs/stealth.min.js 2026-09-17 16:32:24 MediaCrawler INFO (core.py:450) - [DouYinCrawler] CDP浏览器信息: {'version': '152.0.7977.83', 'contexts_count': 1, 'debug_port': 9222, 'is_connected': True} 2026-09-17 16:32:27 MediaCrawler INFO (core.py:293) - [DouYinCrawler.get_creators_and_videos] Begin get douyin creators 2026-09-17 16:32:27 MediaCrawler INFO (core.py:294) - [DouYinCrawler.get_creators_and_videos] Parsing creator URLs... 2026-09-17 16:32:27 MediaCrawler INFO (core.py:339) - [DouYinCrawler.get_creators_and_videos] Creator concurrency: 2 2026-09-17 16:32:27 MediaCrawler INFO (core.py:301) - [DouYinCrawler.get_creators_and_videos] Parsed sec_user_id: MS4wLjABAAAA-lrSCRUoQrZ3T90QjJW3gK4NunZk2NiwozoW6cgIjXk from MS4wLjABAAAA-lrSCRUoQrZ3T90QjJW3gK4NunZk2NiwozoW6cgIjXk 2026-09-17 16:32:27 MediaCrawler INFO (core.py:301) - [DouYinCrawler.get_creators_and_videos] Parsed sec_user_id: MS4wLjABAAAAaUCQ_gwp7gjbk7sn3X1c9wHG3pZbZOoVYl1moKnPUFE from MS4wLjABAAAAaUCQ_gwp7gjbk7sn3X1c9wHG3pZbZOoVYl1moKnPUFE 2026-09-17 16:32:27 MediaCrawler INFO (core.py:301) - [DouYinCrawler.get_creators_and_videos] Parsed sec_user_id: MS4wLjABAAAADZejdQI5YhjZ1QeUKxivOtGsf6AhGeE4zDwmR5kV-dA from MS4wLjABAAAADZejdQI5YhjZ1QeUKxivOtGsf6AhGeE4zDwmR5kV-dA 2026-09-17 16:32:28 MediaCrawler INFO (cdp_browser.py:490) - [CDPBrowserManager] Browser connection disconnected 2026-09-17 16:32:28 MediaCrawler INFO (cdp_browser.py:507) - [CDPBrowserManager] Connected to existing browser, skipping process cleanup 2026-09-17 16:32:28 MediaCrawler INFO (core.py:301) - [DouYinCrawler.get_creators_and_videos] Parsed sec_user_id: MS4wLjABAAAAPehcz5UItwBKHRUS91h52oDNA9gIZEGFD_GWmVoJwT__BGgBpgVbyrjErpzLEpZS from MS4wLjABAAAAPehcz5UItwBKHRUS91h52oDNA9gIZEGFD_GWmVoJwT__BGgBpgVbyrjErpzLEpZS 2026-09-17 16:32:28 MediaCrawler INFO (core.py:301) - [DouYinCrawler.get_creators_and_videos] Parsed sec_user_id: MS4wLjABAAAAptZpQBCAT2dBWpLYcYQqHINRueD9_pUH5Dvq1qAwhNA from MS4wLjABAAAAptZpQBCAT2dBWpLYcYQqHINRueD9_pUH5Dvq1qAwhNA Traceback (most recent call last): File "C:\Users\EDY\Desktop\达人采集助手-portable-v2\app\scripts\run-mediacrawler.py", line 21, in <module> runpy.run_path(os.path.join(crawler_root, "main.py"), run_name="__main__") File "<frozen runpy>", line 291, in run_path File "<frozen runpy>", line 98, in _run_module_code File "<frozen runpy>", line 88, in _run_code File "C:\Users\EDY\Desktop\达人采集助手-portable-v2\app\MediaCrawler-main\main.py", line 174, in <module> run(main, async_cleanup, cleanup_timeout_seconds=15.0, on_first_interrupt=_force_stop) File "C:\Users\EDY\Desktop\达人采集助手-portable-v2\app\MediaCrawler-main\tools\app_runner.py", line 109, in run asyncio.run(_runner()) File "C:\Users\EDY\Desktop\达人采集助手-portable-v2\app\runtime\python\Lib\asyncio\runners.py", line 190, in run return runner.run(main) ^^^^^^^^^^^^^^^^ File "C:\Users\EDY\Desktop\达人采集助手-portable-v2\app\runtime\python\Lib\asyncio\runners.py", line 118, in run return self._loop.run_until_complete(task) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "C:\Users\EDY\Desktop\达人采集助手-portable-v2\app\runtime\python\Lib\asyncio\base_events.py", line 654, in run_until_complete return future.result() ^^^^^^^^^^^^^^^ File "C:\Users\EDY\Desktop\达人采集助手-portable-v2\app\MediaCrawler-main\tools\app_runner.py", line 96, in _runner await app_main() File "C:\Users\EDY\Desktop\达人采集助手-portable-v2\app\MediaCrawler-main\main.py", line 114, in main await crawler.start() File "C:\Users\EDY\Desktop\达人采集助手-portable-v2\app\MediaCrawler-main\media_platform\douyin\core.py", line 141, in start await self.get_creators_and_videos() File "C:\Users\EDY\Desktop\达人采集助手-portable-v2\app\MediaCrawler-main\media_platform\douyin\core.py", line 342, in get_creators_and_videos creator_work_counts = await asyncio.gather( ^^^^^^^^^^^^^^^^^^^^^ File "C:\Users\EDY\Desktop\达人采集助手-portable-v2\app\MediaCrawler-main\media_platform\douyin\core.py", line 306, in fetch_one_creator creator_info: Dict = await self.dy_client.get_user_info(user_id) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "C:\Users\EDY\Desktop\达人采集助手-portable-v2\app\MediaCrawler-main\media_platform\douyin\client.py", line 319, in get_user_info return await self.get(uri, params) ^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "C:\Users\EDY\Desktop\达人采集助手-portable-v2\app\MediaCrawler-main\media_platform\douyin\client.py", line 141, in get await self.__process_req_params(uri, params, headers) File "C:\Users\EDY\Desktop\达人采集助手-portable-v2\app\MediaCrawler-main\media_platform\douyin\client.py", line 120, in __process_req_params a_bogus = await get_a_bogus(uri, query_string, post_data, headers["User-Agent"], self.playwright_page) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "C:\Users\EDY\Desktop\达人采集助手-portable-v2\app\MediaCrawler-main\media_platform\douyin\help.py", line 81, in get_a_bogus return get_a_bogus_from_js(url, params, user_agent) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "C:\Users\EDY\Desktop\达人采集助手-portable-v2\app\MediaCrawler-main\media_platform\douyin\help.py", line 100, in get_a_bogus_from_js result = subprocess.run( ^^^^^^^^^^^^^^^ File "C:\Users\EDY\Desktop\达人采集助手-portable-v2\app\runtime\python\Lib\subprocess.py", line 548, in run with Popen(*popenargs, **kwargs) as process: ^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "C:\Users\EDY\Desktop\达人采集助手-portable-v2\app\runtime\python\Lib\subprocess.py", line 1026, in __init__ self._execute_child(args, executable, preexec_fn, close_fds, File "C:\Users\EDY\Desktop\达人采集助手-portable-v2\app\runtime\python\Lib\subprocess.py", line 1538, in _execute_child hp, ht, pid, tid = _winapi.CreateProcess(executable, args, ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ FileNotFoundError: [WinError 2] 系统找不到指定的文件。
云云朵朵 主页采集失败:2026-09-17 14:10:33 MediaCrawler INFO (core.py:77) - [DouYinCrawler] 使用CDP模式启动浏览器 2026-09-17 14:10:33 MediaCrawler INFO (cdp_browser.py:152) - [CDPBrowserManager] Connecting to existing browser on port 9222... 2026-09-17 14:10:33 MediaCrawler INFO (cdp_browser.py:155) - [CDPBrowserManager] Make sure remote debugging is enabled in your browser: chrome://inspect/#remote-debugging 2026-09-17 14:10:33 MediaCrawler INFO (cdp_browser.py:163) - [CDPBrowserManager] Waiting up to 60s for browser CDP connection... 2026-09-17 14:10:33 MediaCrawler INFO (cdp_browser.py:237) - [CDPBrowserManager] CDP port 9222 is accessible 2026-09-17 14:10:33 MediaCrawler INFO (cdp_browser.py:301) - [CDPBrowserManager] Got browser WebSocket URL: ws://localhost:9222/devtools/browser/7c03ef21-ce48-4e92-88b7-8abe72aed2f3 2026-09-17 14:10:33 MediaCrawler INFO (cdp_browser.py:329) - [CDPBrowserManager] Connecting to existing browser via discovered CDP (attempt 1/3): ws://localhost:9222/devtools/browser/7c03ef21-ce48-4e92-88b7-8abe72aed2f3 2026-09-17 14:10:33 MediaCrawler INFO (cdp_browser.py:333) - [CDPBrowserManager] If Chrome asks whether to allow remote debugging, accept it in the already logged-in browser window 2026-09-17 14:10:34 MediaCrawler INFO (cdp_browser.py:364) - [CDPBrowserManager] Successfully connected to browser 2026-09-17 14:10:34 MediaCrawler INFO (cdp_browser.py:365) - [CDPBrowserManager] Browser contexts count: 1 2026-09-17 14:10:34 MediaCrawler INFO (cdp_browser.py:390) - [CDPBrowserManager] Using existing browser context 2026-09-17 14:10:34 MediaCrawler INFO (cdp_browser.py:194) - [CDPBrowserManager] Successfully connected to existing browser 2026-09-17 14:10:34 MediaCrawler INFO (cdp_browser.py:422) - [CDPBrowserManager] Added anti-detection script: libs/stealth.min.js 2026-09-17 14:10:34 MediaCrawler INFO (core.py:450) - [DouYinCrawler] CDP浏览器信息: {'version': '152.0.7977.83', 'contexts_count': 1, 'debug_port': 9222, 'is_connected': True} 2026-09-17 14:10:38 MediaCrawler INFO (core.py:293) - [DouYinCrawler.get_creators_and_videos] Begin get douyin creators 2026-09-17 14:10:38 MediaCrawler INFO (core.py:294) - [DouYinCrawler.get_creators_and_videos] Parsing creator URLs... 2026-09-17 14:10:38 MediaCrawler INFO (core.py:339) - [DouYinCrawler.get_creators_and_videos] Creator concurrency: 2 2026-09-17 14:10:38 MediaCrawler INFO (core.py:301) - [DouYinCrawler.get_creators_and_videos] Parsed sec_user_id: MS4wLjABAAAAGHb1_jgdSRXaRc9QhHINSSoQyr_K8BhihKzRnyt1qYo from MS4wLjABAAAAGHb1_jgdSRXaRc9QhHINSSoQyr_K8BhihKzRnyt1qYo 2026-09-17 14:10:38 MediaCrawler INFO (core.py:301) - [DouYinCrawler.get_creators_and_videos] Parsed sec_user_id: MS4wLjABAAAAKGbG57eEly5jAMr5dU7T6fw6Q_ApxKcG_i4T8cj3QvIj0l0BGVHlZ4h-ZYG4I_0o from MS4wLjABAAAAKGbG57eEly5jAMr5dU7T6fw6Q_ApxKcG_i4T8cj3QvIj0l0BGVHlZ4h-ZYG4I_0o 2026-09-17 14:10:38 MediaCrawler INFO (core.py:301) - [DouYinCrawler.get_creators_and_videos] Parsed sec_user_id: MS4wLjABAAAAkxTmmmGLa6G8r5omA-I7krelbMGq0nbnAD3H5LouiCM from MS4wLjABAAAAkxTmmmGLa6G8r5omA-I7krelbMGq0nbnAD3H5LouiCM 2026-09-17 14:10:38 MediaCrawler INFO (cdp_browser.py:490) - [CDPBrowserManager] Browser connection disconnected 2026-09-17 14:10:38 MediaCrawler INFO (cdp_browser.py:507) - [CDPBrowserManager] Connected to existing browser, skipping process cleanup 2026-09-17 14:10:38 MediaCrawler INFO (core.py:301) - [DouYinCrawler.get_creators_and_videos] Parsed sec_user_id: MS4wLjABAAAAle7-WPDrlgIShvkj-vjnXOnWP8eD9AsNw7_6yMjy-sWxYEOAvMJ__CyxNYJeftul from MS4wLjABAAAAle7-WPDrlgIShvkj-vjnXOnWP8eD9AsNw7_6yMjy-sWxYEOAvMJ__CyxNYJeftul 2026-09-17 14:10:38 MediaCrawler INFO (core.py:301) - [DouYinCrawler.get_creators_and_videos] Parsed sec_user_id: MS4wLjABAAAAVFq9kOxCq6lNV9f0nRQa8TXC3J4nN1XV7FaVQKTlrLLgNbOnIp47HFNbe7-K1LwO from MS4wLjABAAAAVFq9kOxCq6lNV9f0nRQa8TXC3J4nN1XV7FaVQKTlrLLgNbOnIp47HFNbe7-K1LwO Traceback (most recent call last): File "C:\Users\EDY\Documents\流程\kol-crm-next\scripts\run-mediacrawler.py", line 21, in <module> runpy.run_path(os.path.join(crawler_root, "main.py"), run_name="__main__") File "<frozen runpy>", line 291, in run_path File "<frozen runpy>", line 98, in _run_module_code File "<frozen runpy>", line 88, in _run_code File "C:\Users\EDY\Desktop\达人采集助手-portable-v3\达人采集助手-portable-v3\app\MediaCrawler-main\main.py", line 174, in <module> run(main, async_cleanup, cleanup_timeout_seconds=15.0, on_first_interrupt=_force_stop) File "C:\Users\EDY\Desktop\达人采集助手-portable-v3\达人采集助手-portable-v3\app\MediaCrawler-main\tools\app_runner.py", line 109, in run asyncio.run(_runner()) File "C:\Users\EDY\Desktop\达人采集助手-portable-v3\达人采集助手-portable-v3\app\runtime\python\Lib\asyncio\runners.py", line 190, in run return runner.run(main) ^^^^^^^^^^^^^^^^ File "C:\Users\EDY\Desktop\达人采集助手-portable-v3\达人采集助手-portable-v3\app\runtime\python\Lib\asyncio\runners.py", line 118, in run return self._loop.run_until_complete(task) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "C:\Users\EDY\Desktop\达人采集助手-portable-v3\达人采集助手-portable-v3\app\runtime\python\Lib\asyncio\base_events.py", line 654, in run_until_complete return future.result() ^^^^^^^^^^^^^^^ File "C:\Users\EDY\Desktop\达人采集助手-portable-v3\达人采集助手-portable-v3\app\MediaCrawler-main\tools\app_runner.py", line 96, in _runner await app_main() File "C:\Users\EDY\Desktop\达人采集助手-portable-v3\达人采集助手-portable-v3\app\MediaCrawler-main\main.py", line 114, in main await crawler.start() File "C:\Users\EDY\Desktop\达人采集助手-portable-v3\达人采集助手-portable-v3\app\MediaCrawler-main\media_platform\douyin\core.py", line 141, in start await self.get_creators_and_videos() File "C:\Users\EDY\Desktop\达人采集助手-portable-v3\达人采集助手-portable-v3\app\MediaCrawler-main\media_platform\douyin\core.py", line 342, in get_creators_and_videos creator_work_counts = await asyncio.gather( ^^^^^^^^^^^^^^^^^^^^^ File "C:\Users\EDY\Desktop\达人采集助手-portable-v3\达人采集助手-portable-v3\app\MediaCrawler-main\media_platform\douyin\core.py", line 306, in fetch_one_creator creator_info: Dict = await self.dy_client.get_user_info(user_id) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "C:\Users\EDY\Desktop\达人采集助手-portable-v3\达人采集助手-portable-v3\app\MediaCrawler-main\media_platform\douyin\client.py", line 319, in get_user_info return await self.get(uri, params) ^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "C:\Users\EDY\Desktop\达人采集助手-portable-v3\达人采集助手-portable-v3\app\MediaCrawler-main\media_platform\douyin\client.py", line 141, in get await self.__process_req_params(uri, params, headers) File "C:\Users\EDY\Desktop\达人采集助手-portable-v3\达人采集助手-portable-v3\app\MediaCrawler-main\media_platform\douyin\client.py", line 120, in __process_req_params a_bogus = await get_a_bogus(uri, query_string, post_data, headers["User-Agent"], self.playwright_page) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "C:\Users\EDY\Desktop\达人采集助手-portable-v3\达人采集助手-portable-v3\app\MediaCrawler-main\media_platform\douyin\help.py", line 81, in get_a_bogus return get_a_bogus_from_js(url, params, user_agent) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "C:\Users\EDY\Desktop\达人采集助手-portable-v3\达人采集助手-portable-v3\app\MediaCrawler-main\media_platform\douyin\help.py", line 100, in get_a_bogus_from_js result = subprocess.run( ^^^^^^^^^^^^^^^ File "C:\Users\EDY\Desktop\达人采集助手-portable-v3\达人采集助手-portable-v3\app\runtime\python\Lib\subprocess.py", line 548, in run with Popen(*popenargs, **kwargs) as process: ^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "C:\Users\EDY\Desktop\达人采集助手-portable-v3\达人采集助手-portable-v3\app\runtime\python\Lib\subprocess.py", line 1026, in __init__ self._execute_child(args, executable, preexec_fn, close_fds, File "C:\Users\EDY\Desktop\达人采集助手-portable-v3\达人采集助手-portable-v3\app\runtime\python\Lib\subprocess.py", line 1538, in _execute_child hp, ht, pid, tid = _winapi.CreateProcess(executable, args, ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ FileNotFoundError: [WinError 2] 系统找不到指定的文件。
天选苦命打工人 主页采集失败:2026-09-17 14:10:33 MediaCrawler INFO (core.py:77) - [DouYinCrawler] 使用CDP模式启动浏览器 2026-09-17 14:10:33 MediaCrawler INFO (cdp_browser.py:152) - [CDPBrowserManager] Connecting to existing browser on port 9222... 2026-09-17 14:10:33 MediaCrawler INFO (cdp_browser.py:155) - [CDPBrowserManager] Make sure remote debugging is enabled in your browser: chrome://inspect/#remote-debugging 2026-09-17 14:10:33 MediaCrawler INFO (cdp_browser.py:163) - [CDPBrowserManager] Waiting up to 60s for browser CDP connection... 2026-09-17 14:10:33 MediaCrawler INFO (cdp_browser.py:237) - [CDPBrowserManager] CDP port 9222 is accessible 2026-09-17 14:10:33 MediaCrawler INFO (cdp_browser.py:301) - [CDPBrowserManager] Got browser WebSocket URL: ws://localhost:9222/devtools/browser/7c03ef21-ce48-4e92-88b7-8abe72aed2f3 2026-09-17 14:10:33 MediaCrawler INFO (cdp_browser.py:329) - [CDPBrowserManager] Connecting to existing browser via discovered CDP (attempt 1/3): ws://localhost:9222/devtools/browser/7c03ef21-ce48-4e92-88b7-8abe72aed2f3 2026-09-17 14:10:33 MediaCrawler INFO (cdp_browser.py:333) - [CDPBrowserManager] If Chrome asks whether to allow remote debugging, accept it in the already logged-in browser window 2026-09-17 14:10:34 MediaCrawler INFO (cdp_browser.py:364) - [CDPBrowserManager] Successfully connected to browser 2026-09-17 14:10:34 MediaCrawler INFO (cdp_browser.py:365) - [CDPBrowserManager] Browser contexts count: 1 2026-09-17 14:10:34 MediaCrawler INFO (cdp_browser.py:390) - [CDPBrowserManager] Using existing browser context 2026-09-17 14:10:34 MediaCrawler INFO (cdp_browser.py:194) - [CDPBrowserManager] Successfully connected to existing browser 2026-09-17 14:10:34 MediaCrawler INFO (cdp_browser.py:422) - [CDPBrowserManager] Added anti-detection script: libs/stealth.min.js 2026-09-17 14:10:34 MediaCrawler INFO (core.py:450) - [DouYinCrawler] CDP浏览器信息: {'version': '152.0.7977.83', 'contexts_count': 1, 'debug_port': 9222, 'is_connected': True} 2026-09-17 14:10:38 MediaCrawler INFO (core.py:293) - [DouYinCrawler.get_creators_and_videos] Begin get douyin creators 2026-09-17 14:10:38 MediaCrawler INFO (core.py:294) - [DouYinCrawler.get_creators_and_videos] Parsing creator URLs... 2026-09-17 14:10:38 MediaCrawler INFO (core.py:339) - [DouYinCrawler.get_creators_and_videos] Creator concurrency: 2 2026-09-17 14:10:38 MediaCrawler INFO (core.py:301) - [DouYinCrawler.get_creators_and_videos] Parsed sec_user_id: MS4wLjABAAAAGHb1_jgdSRXaRc9QhHINSSoQyr_K8BhihKzRnyt1qYo from MS4wLjABAAAAGHb1_jgdSRXaRc9QhHINSSoQyr_K8BhihKzRnyt1qYo 2026-09-17 14:10:38 MediaCrawler INFO (core.py:301) - [DouYinCrawler.get_creators_and_videos] Parsed sec_user_id: MS4wLjABAAAAKGbG57eEly5jAMr5dU7T6fw6Q_ApxKcG_i4T8cj3QvIj0l0BGVHlZ4h-ZYG4I_0o from MS4wLjABAAAAKGbG57eEly5jAMr5dU7T6fw6Q_ApxKcG_i4T8cj3QvIj0l0BGVHlZ4h-ZYG4I_0o 2026-09-17 14:10:38 MediaCrawler INFO (core.py:301) - [DouYinCrawler.get_creators_and_videos] Parsed sec_user_id: MS4wLjABAAAAkxTmmmGLa6G8r5omA-I7krelbMGq0nbnAD3H5LouiCM from MS4wLjABAAAAkxTmmmGLa6G8r5omA-I7krelbMGq0nbnAD3H5LouiCM 2026-09-17 14:10:38 MediaCrawler INFO (cdp_browser.py:490) - [CDPBrowserManager] Browser connection disconnected 2026-09-17 14:10:38 MediaCrawler INFO (cdp_browser.py:507) - [CDPBrowserManager] Connected to existing browser, skipping process cleanup 2026-09-17 14:10:38 MediaCrawler INFO (core.py:301) - [DouYinCrawler.get_creators_and_videos] Parsed sec_user_id: MS4wLjABAAAAle7-WPDrlgIShvkj-vjnXOnWP8eD9AsNw7_6yMjy-sWxYEOAvMJ__CyxNYJeftul from MS4wLjABAAAAle7-WPDrlgIShvkj-vjnXOnWP8eD9AsNw7_6yMjy-sWxYEOAvMJ__CyxNYJeftul 2026-09-17 14:10:38 MediaCrawler INFO (core.py:301) - [DouYinCrawler.get_creators_and_videos] Parsed sec_user_id: MS4wLjABAAAAVFq9kOxCq6lNV9f0nRQa8TXC3J4nN1XV7FaVQKTlrLLgNbOnIp47HFNbe7-K1LwO from MS4wLjABAAAAVFq9kOxCq6lNV9f0nRQa8TXC3J4nN1XV7FaVQKTlrLLgNbOnIp47HFNbe7-K1LwO Traceback (most recent call last): File "C:\Users\EDY\Documents\流程\kol-crm-next\scripts\run-mediacrawler.py", line 21, in <module> runpy.run_path(os.path.join(crawler_root, "main.py"), run_name="__main__") File "<frozen runpy>", line 291, in run_path File "<frozen runpy>", line 98, in _run_module_code File "<frozen runpy>", line 88, in _run_code File "C:\Users\EDY\Desktop\达人采集助手-portable-v3\达人采集助手-portable-v3\app\MediaCrawler-main\main.py", line 174, in <module> run(main, async_cleanup, cleanup_timeout_seconds=15.0, on_first_interrupt=_force_stop) File "C:\Users\EDY\Desktop\达人采集助手-portable-v3\达人采集助手-portable-v3\app\MediaCrawler-main\tools\app_runner.py", line 109, in run asyncio.run(_runner()) File "C:\Users\EDY\Desktop\达人采集助手-portable-v3\达人采集助手-portable-v3\app\runtime\python\Lib\asyncio\runners.py", line 190, in run return runner.run(main) ^^^^^^^^^^^^^^^^ File "C:\Users\EDY\Desktop\达人采集助手-portable-v3\达人采集助手-portable-v3\app\runtime\python\Lib\asyncio\runners.py", line 118, in run return self._loop.run_until_complete(task) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "C:\Users\EDY\Desktop\达人采集助手-portable-v3\达人采集助手-portable-v3\app\runtime\python\Lib\asyncio\base_events.py", line 654, in run_until_complete return future.result() ^^^^^^^^^^^^^^^ File "C:\Users\EDY\Desktop\达人采集助手-portable-v3\达人采集助手-portable-v3\app\MediaCrawler-main\tools\app_runner.py", line 96, in _runner await app_main() File "C:\Users\EDY\Desktop\达人采集助手-portable-v3\达人采集助手-portable-v3\app\MediaCrawler-main\main.py", line 114, in main await crawler.start() File "C:\Users\EDY\Desktop\达人采集助手-portable-v3\达人采集助手-portable-v3\app\MediaCrawler-main\media_platform\douyin\core.py", line 141, in start await self.get_creators_and_videos() File "C:\Users\EDY\Desktop\达人采集助手-portable-v3\达人采集助手-portable-v3\app\MediaCrawler-main\media_platform\douyin\core.py", line 342, in get_creators_and_videos creator_work_counts = await asyncio.gather( ^^^^^^^^^^^^^^^^^^^^^ File "C:\Users\EDY\Desktop\达人采集助手-portable-v3\达人采集助手-portable-v3\app\MediaCrawler-main\media_platform\douyin\core.py", line 306, in fetch_one_creator creator_info: Dict = await self.dy_client.get_user_info(user_id) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "C:\Users\EDY\Desktop\达人采集助手-portable-v3\达人采集助手-portable-v3\app\MediaCrawler-main\media_platform\douyin\client.py", line 319, in get_user_info return await self.get(uri, params) ^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "C:\Users\EDY\Desktop\达人采集助手-portable-v3\达人采集助手-portable-v3\app\MediaCrawler-main\media_platform\douyin\client.py", line 141, in get await self.__process_req_params(uri, params, headers) File "C:\Users\EDY\Desktop\达人采集助手-portable-v3\达人采集助手-portable-v3\app\MediaCrawler-main\media_platform\douyin\client.py", line 120, in __process_req_params a_bogus = await get_a_bogus(uri, query_string, post_data, headers["User-Agent"], self.playwright_page) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "C:\Users\EDY\Desktop\达人采集助手-portable-v3\达人采集助手-portable-v3\app\MediaCrawler-main\media_platform\douyin\help.py", line 81, in get_a_bogus return get_a_bogus_from_js(url, params, user_agent) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "C:\Users\EDY\Desktop\达人采集助手-portable-v3\达人采集助手-portable-v3\app\MediaCrawler-main\media_platform\douyin\help.py", line 100, in get_a_bogus_from_js result = subprocess.run( ^^^^^^^^^^^^^^^ File "C:\Users\EDY\Desktop\达人采集助手-portable-v3\达人采集助手-portable-v3\app\runtime\python\Lib\subprocess.py", line 548, in run with Popen(*popenargs, **kwargs) as process: ^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "C:\Users\EDY\Desktop\达人采集助手-portable-v3\达人采集助手-portable-v3\app\runtime\python\Lib\subprocess.py", line 1026, in __init__ self._execute_child(args, executable, preexec_fn, close_fds, File "C:\Users\EDY\Desktop\达人采集助手-portable-v3\达人采集助手-portable-v3\app\runtime\python\Lib\subprocess.py", line 1538, in _execute_child hp, ht, pid, tid = _winapi.CreateProcess(executable, args, ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ FileNotFoundError: [WinError 2] 系统找不到指定的文件。
DYX 主页采集失败:2026-09-17 14:10:58 MediaCrawler INFO (core.py:77) - [DouYinCrawler] 使用CDP模式启动浏览器 2026-09-17 14:10:58 MediaCrawler INFO (cdp_browser.py:152) - [CDPBrowserManager] Connecting to existing browser on port 9222... 2026-09-17 14:10:58 MediaCrawler INFO (cdp_browser.py:155) - [CDPBrowserManager] Make sure remote debugging is enabled in your browser: chrome://inspect/#remote-debugging 2026-09-17 14:10:58 MediaCrawler INFO (cdp_browser.py:163) - [CDPBrowserManager] Waiting up to 60s for browser CDP connection... 2026-09-17 14:10:58 MediaCrawler INFO (cdp_browser.py:237) - [CDPBrowserManager] CDP port 9222 is accessible 2026-09-17 14:10:59 MediaCrawler INFO (cdp_browser.py:301) - [CDPBrowserManager] Got browser WebSocket URL: ws://localhost:9222/devtools/browser/7c03ef21-ce48-4e92-88b7-8abe72aed2f3 2026-09-17 14:10:59 MediaCrawler INFO (cdp_browser.py:329) - [CDPBrowserManager] Connecting to existing browser via discovered CDP (attempt 1/3): ws://localhost:9222/devtools/browser/7c03ef21-ce48-4e92-88b7-8abe72aed2f3 2026-09-17 14:10:59 MediaCrawler INFO (cdp_browser.py:333) - [CDPBrowserManager] If Chrome asks whether to allow remote debugging, accept it in the already logged-in browser window 2026-09-17 14:10:59 MediaCrawler INFO (cdp_browser.py:364) - [CDPBrowserManager] Successfully connected to browser 2026-09-17 14:10:59 MediaCrawler INFO (cdp_browser.py:365) - [CDPBrowserManager] Browser contexts count: 1 2026-09-17 14:10:59 MediaCrawler INFO (cdp_browser.py:390) - [CDPBrowserManager] Using existing browser context 2026-09-17 14:10:59 MediaCrawler INFO (cdp_browser.py:194) - [CDPBrowserManager] Successfully connected to existing browser 2026-09-17 14:10:59 MediaCrawler INFO (cdp_browser.py:422) - [CDPBrowserManager] Added anti-detection script: libs/stealth.min.js 2026-09-17 14:10:59 MediaCrawler INFO (core.py:450) - [DouYinCrawler] CDP浏览器信息: {'version': '152.0.7977.83', 'contexts_count': 1, 'debug_port': 9222, 'is_connected': True} 2026-09-17 14:11:02 MediaCrawler INFO (core.py:293) - [DouYinCrawler.get_creators_and_videos] Begin get douyin creators 2026-09-17 14:11:02 MediaCrawler INFO (core.py:294) - [DouYinCrawler.get_creators_and_videos] Parsing creator URLs... 2026-09-17 14:11:02 MediaCrawler INFO (core.py:339) - [DouYinCrawler.get_creators_and_videos] Creator concurrency: 2 2026-09-17 14:11:02 MediaCrawler INFO (core.py:301) - [DouYinCrawler.get_creators_and_videos] Parsed sec_user_id: MS4wLjABAAAA-7FuZwMllEVyWnCU2M9GSHsA69DSN7I9RkQb0GNsqzI from MS4wLjABAAAA-7FuZwMllEVyWnCU2M9GSHsA69DSN7I9RkQb0GNsqzI 2026-09-17 14:11:02 MediaCrawler INFO (core.py:301) - [DouYinCrawler.get_creators_and_videos] Parsed sec_user_id: MS4wLjABAAAA0YAn2hW4EoLtfkx_MphhVCWsSz8mDxGjKbfp30eBi6w from MS4wLjABAAAA0YAn2hW4EoLtfkx_MphhVCWsSz8mDxGjKbfp30eBi6w 2026-09-17 14:11:02 MediaCrawler INFO (core.py:301) - [DouYinCrawler.get_creators_and_videos] Parsed sec_user_id: MS4wLjABAAAAc5o31_ktyjVcEvUgmjFOzjCf9Rk50xNE8qeXlgICr0I from MS4wLjABAAAAc5o31_ktyjVcEvUgmjFOzjCf9Rk50xNE8qeXlgICr0I 2026-09-17 14:11:02 MediaCrawler INFO (cdp_browser.py:490) - [CDPBrowserManager] Browser connection disconnected 2026-09-17 14:11:02 MediaCrawler INFO (cdp_browser.py:507) - [CDPBrowserManager] Connected to existing browser, skipping process cleanup 2026-09-17 14:11:02 MediaCrawler INFO (core.py:301) - [DouYinCrawler.get_creators_and_videos] Parsed sec_user_id: MS4wLjABAAAACI9fWKcbtZlbkEtZ3yOvKhtn5vMjEKSezARi3rqRny_diF1fqCXIbeQs0C1qhrbH from MS4wLjABAAAACI9fWKcbtZlbkEtZ3yOvKhtn5vMjEKSezARi3rqRny_diF1fqCXIbeQs0C1qhrbH 2026-09-17 14:11:02 MediaCrawler INFO (core.py:301) - [DouYinCrawler.get_creators_and_videos] Parsed sec_user_id: MS4wLjABAAAAvpAxdIKMcaXNk6he8H1FOSCjOXe23oonwL2lr64C_h8 from MS4wLjABAAAAvpAxdIKMcaXNk6he8H1FOSCjOXe23oonwL2lr64C_h8 Traceback (most recent call last): File "C:\Users\EDY\Documents\流程\kol-crm-next\scripts\run-mediacrawler.py", line 21, in <module> runpy.run_path(os.path.join(crawler_root, "main.py"), run_name="__main__") File "<frozen runpy>", line 291, in run_path File "<frozen runpy>", line 98, in _run_module_code File "<frozen runpy>", line 88, in _run_code File "C:\Users\EDY\Desktop\达人采集助手-portable-v3\达人采集助手-portable-v3\app\MediaCrawler-main\main.py", line 174, in <module> run(main, async_cleanup, cleanup_timeout_seconds=15.0, on_first_interrupt=_force_stop) File "C:\Users\EDY\Desktop\达人采集助手-portable-v3\达人采集助手-portable-v3\app\MediaCrawler-main\tools\app_runner.py", line 109, in run asyncio.run(_runner()) File "C:\Users\EDY\Desktop\达人采集助手-portable-v3\达人采集助手-portable-v3\app\runtime\python\Lib\asyncio\runners.py", line 190, in run return runner.run(main) ^^^^^^^^^^^^^^^^ File "C:\Users\EDY\Desktop\达人采集助手-portable-v3\达人采集助手-portable-v3\app\runtime\python\Lib\asyncio\runners.py", line 118, in run return self._loop.run_until_complete(task) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "C:\Users\EDY\Desktop\达人采集助手-portable-v3\达人采集助手-portable-v3\app\runtime\python\Lib\asyncio\base_events.py", line 654, in run_until_complete return future.result() ^^^^^^^^^^^^^^^ File "C:\Users\EDY\Desktop\达人采集助手-portable-v3\达人采集助手-portable-v3\app\MediaCrawler-main\tools\app_runner.py", line 96, in _runner await app_main() File "C:\Users\EDY\Desktop\达人采集助手-portable-v3\达人采集助手-portable-v3\app\MediaCrawler-main\main.py", line 114, in main await crawler.start() File "C:\Users\EDY\Desktop\达人采集助手-portable-v3\达人采集助手-portable-v3\app\MediaCrawler-main\media_platform\douyin\core.py", line 141, in start await self.get_creators_and_videos() File "C:\Users\EDY\Desktop\达人采集助手-portable-v3\达人采集助手-portable-v3\app\MediaCrawler-main\media_platform\douyin\core.py", line 342, in get_creators_and_videos creator_work_counts = await asyncio.gather( ^^^^^^^^^^^^^^^^^^^^^ File "C:\Users\EDY\Desktop\达人采集助手-portable-v3\达人采集助手-portable-v3\app\MediaCrawler-main\media_platform\douyin\core.py", line 306, in fetch_one_creator creator_info: Dict = await self.dy_client.get_user_info(user_id) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "C:\Users\EDY\Desktop\达人采集助手-portable-v3\达人采集助手-portable-v3\app\MediaCrawler-main\media_platform\douyin\client.py", line 319, in get_user_info return await self.get(uri, params) ^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "C:\Users\EDY\Desktop\达人采集助手-portable-v3\达人采集助手-portable-v3\app\MediaCrawler-main\media_platform\douyin\client.py", line 141, in get await self.__process_req_params(uri, params, headers) File "C:\Users\EDY\Desktop\达人采集助手-portable-v3\达人采集助手-portable-v3\app\MediaCrawler-main\media_platform\douyin\client.py", line 120, in __process_req_params a_bogus = await get_a_bogus(uri, query_string, post_data, headers["User-Agent"], self.playwright_page) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "C:\Users\EDY\Desktop\达人采集助手-portable-v3\达人采集助手-portable-v3\app\MediaCrawler-main\media_platform\douyin\help.py", line 81, in get_a_bogus return get_a_bogus_from_js(url, params, user_agent) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "C:\Users\EDY\Desktop\达人采集助手-portable-v3\达人采集助手-portable-v3\app\MediaCrawler-main\media_platform\douyin\help.py", line 100, in get_a_bogus_from_js result = subprocess.run( ^^^^^^^^^^^^^^^ File "C:\Users\EDY\Desktop\达人采集助手-portable-v3\达人采集助手-portable-v3\app\runtime\python\Lib\subprocess.py", line 548, in run with Popen(*popenargs, **kwargs) as process: ^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "C:\Users\EDY\Desktop\达人采集助手-portable-v3\达人采集助手-portable-v3\app\runtime\python\Lib\subprocess.py", line 1026, in __init__ self._execute_child(args, executable, preexec_fn, close_fds, File "C:\Users\EDY\Desktop\达人采集助手-portable-v3\达人采集助手-portable-v3\app\runtime\python\Lib\subprocess.py", line 1538, in _execute_child hp, ht, pid, tid = _winapi.CreateProcess(executable, args, ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ FileNotFoundError: [WinError 2] 系统找不到指定的文件。
杜凯琹 主页采集失败:2026-09-17 16:17:32 MediaCrawler INFO (core.py:77) - [DouYinCrawler] 使用CDP模式启动浏览器 2026-09-17 16:17:32 MediaCrawler INFO (cdp_browser.py:152) - [CDPBrowserManager] Connecting to existing browser on port 9222... 2026-09-17 16:17:32 MediaCrawler INFO (cdp_browser.py:155) - [CDPBrowserManager] Make sure remote debugging is enabled in your browser: chrome://inspect/#remote-debugging 2026-09-17 16:17:32 MediaCrawler INFO (cdp_browser.py:163) - [CDPBrowserManager] Waiting up to 60s for browser CDP connection... 2026-09-17 16:17:32 MediaCrawler INFO (cdp_browser.py:237) - [CDPBrowserManager] CDP port 9222 is accessible 2026-09-17 16:17:32 MediaCrawler INFO (cdp_browser.py:301) - [CDPBrowserManager] Got browser WebSocket URL: ws://localhost:9222/devtools/browser/b6166241-0447-4b83-98ca-78fdbeb71daf 2026-09-17 16:17:32 MediaCrawler INFO (cdp_browser.py:329) - [CDPBrowserManager] Connecting to existing browser via discovered CDP (attempt 1/3): ws://localhost:9222/devtools/browser/b6166241-0447-4b83-98ca-78fdbeb71daf 2026-09-17 16:17:32 MediaCrawler INFO (cdp_browser.py:333) - [CDPBrowserManager] If Chrome asks whether to allow remote debugging, accept it in the already logged-in browser window 2026-09-17 16:17:33 MediaCrawler INFO (cdp_browser.py:364) - [CDPBrowserManager] Successfully connected to browser 2026-09-17 16:17:33 MediaCrawler INFO (cdp_browser.py:365) - [CDPBrowserManager] Browser contexts count: 1 2026-09-17 16:17:33 MediaCrawler INFO (cdp_browser.py:390) - [CDPBrowserManager] Using existing browser context 2026-09-17 16:17:33 MediaCrawler INFO (cdp_browser.py:194) - [CDPBrowserManager] Successfully connected to existing browser 2026-09-17 16:17:33 MediaCrawler INFO (cdp_browser.py:422) - [CDPBrowserManager] Added anti-detection script: libs/stealth.min.js 2026-09-17 16:17:33 MediaCrawler INFO (core.py:450) - [DouYinCrawler] CDP浏览器信息: {'version': '152.0.7977.83', 'contexts_count': 1, 'debug_port': 9222, 'is_connected': True} 2026-09-17 16:17:36 MediaCrawler INFO (core.py:293) - [DouYinCrawler.get_creators_and_videos] Begin get douyin creators 2026-09-17 16:17:36 MediaCrawler INFO (core.py:294) - [DouYinCrawler.get_creators_and_videos] Parsing creator URLs... 2026-09-17 16:17:36 MediaCrawler INFO (core.py:339) - [DouYinCrawler.get_creators_and_videos] Creator concurrency: 2 2026-09-17 16:17:36 MediaCrawler INFO (core.py:301) - [DouYinCrawler.get_creators_and_videos] Parsed sec_user_id: MS4wLjABAAAA0V7AJ3EqoDNA8kIaTzSCQzR5lY8rhK0rquicc8JzoO78x-2PZvlrqDrJju1s6h-1 from MS4wLjABAAAA0V7AJ3EqoDNA8kIaTzSCQzR5lY8rhK0rquicc8JzoO78x-2PZvlrqDrJju1s6h-1 2026-09-17 16:17:36 MediaCrawler INFO (core.py:301) - [DouYinCrawler.get_creators_and_videos] Parsed sec_user_id: MS4wLjABAAAADINv1UMy9-XKl7ifoN_WzfKBfTNGJYHL1hgQXrK9UtI from MS4wLjABAAAADINv1UMy9-XKl7ifoN_WzfKBfTNGJYHL1hgQXrK9UtI 2026-09-17 16:17:36 MediaCrawler INFO (core.py:301) - [DouYinCrawler.get_creators_and_videos] Parsed sec_user_id: MS4wLjABAAAAi2W5j6pqn7Gea1ZujhxXNdq8qzntPAaKIijbt4qpidw from MS4wLjABAAAAi2W5j6pqn7Gea1ZujhxXNdq8qzntPAaKIijbt4qpidw 2026-09-17 16:17:36 MediaCrawler INFO (cdp_browser.py:490) - [CDPBrowserManager] Browser connection disconnected 2026-09-17 16:17:36 MediaCrawler INFO (cdp_browser.py:507) - [CDPBrowserManager] Connected to existing browser, skipping process cleanup 2026-09-17 16:17:36 MediaCrawler INFO (core.py:301) - [DouYinCrawler.get_creators_and_videos] Parsed sec_user_id: MS4wLjABAAAAQwuzE95dyOwLtYtv-C4p14wnCepnVnl5kUTOVfrrDRT8yNNLMzyl4CROKkqRKv4R from MS4wLjABAAAAQwuzE95dyOwLtYtv-C4p14wnCepnVnl5kUTOVfrrDRT8yNNLMzyl4CROKkqRKv4R 2026-09-17 16:17:36 MediaCrawler INFO (core.py:301) - [DouYinCrawler.get_creators_and_videos] Parsed sec_user_id: MS4wLjABAAAARuliBL9lf98sy7kkYWK9gHJzA7lzo6UcQpd6pub1N5hjVTcjhnHYbQz9p0s4T3iB from MS4wLjABAAAARuliBL9lf98sy7kkYWK9gHJzA7lzo6UcQpd6pub1N5hjVTcjhnHYbQz9p0s4T3iB Traceback (most recent call last): File "C:\Users\EDY\Desktop\达人采集助手-portable-v2\app\scripts\run-mediacrawler.py", line 21, in <module> runpy.run_path(os.path.join(crawler_root, "main.py"), run_name="__main__") File "<frozen runpy>", line 291, in run_path File "<frozen runpy>", line 98, in _run_module_code File "<frozen runpy>", line 88, in _run_code File "C:\Users\EDY\Desktop\达人采集助手-portable-v2\app\MediaCrawler-main\main.py", line 174, in <module> run(main, async_cleanup, cleanup_timeout_seconds=15.0, on_first_interrupt=_force_stop) File "C:\Users\EDY\Desktop\达人采集助手-portable-v2\app\MediaCrawler-main\tools\app_runner.py", line 109, in run asyncio.run(_runner()) File "C:\Users\EDY\Desktop\达人采集助手-portable-v2\app\runtime\python\Lib\asyncio\runners.py", line 190, in run return runner.run(main) ^^^^^^^^^^^^^^^^ File "C:\Users\EDY\Desktop\达人采集助手-portable-v2\app\runtime\python\Lib\asyncio\runners.py", line 118, in run return self._loop.run_until_complete(task) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "C:\Users\EDY\Desktop\达人采集助手-portable-v2\app\runtime\python\Lib\asyncio\base_events.py", line 654, in run_until_complete return future.result() ^^^^^^^^^^^^^^^ File "C:\Users\EDY\Desktop\达人采集助手-portable-v2\app\MediaCrawler-main\tools\app_runner.py", line 96, in _runner await app_main() File "C:\Users\EDY\Desktop\达人采集助手-portable-v2\app\MediaCrawler-main\main.py", line 114, in main await crawler.start() File "C:\Users\EDY\Desktop\达人采集助手-portable-v2\app\MediaCrawler-main\media_platform\douyin\core.py", line 141, in start await self.get_creators_and_videos() File "C:\Users\EDY\Desktop\达人采集助手-portable-v2\app\MediaCrawler-main\media_platform\douyin\core.py", line 342, in get_creators_and_videos creator_work_counts = await asyncio.gather( ^^^^^^^^^^^^^^^^^^^^^ File "C:\Users\EDY\Desktop\达人采集助手-portable-v2\app\MediaCrawler-main\media_platform\douyin\core.py", line 306, in fetch_one_creator creator_info: Dict = await self.dy_client.get_user_info(user_id) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "C:\Users\EDY\Desktop\达人采集助手-portable-v2\app\MediaCrawler-main\media_platform\douyin\client.py", line 319, in get_user_info return await self.get(uri, params) ^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "C:\Users\EDY\Desktop\达人采集助手-portable-v2\app\MediaCrawler-main\media_platform\douyin\client.py", line 141, in get await self.__process_req_params(uri, params, headers) File "C:\Users\EDY\Desktop\达人采集助手-portable-v2\app\MediaCrawler-main\media_platform\douyin\client.py", line 120, in __process_req_params a_bogus = await get_a_bogus(uri, query_string, post_data, headers["User-Agent"], self.playwright_page) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "C:\Users\EDY\Desktop\达人采集助手-portable-v2\app\MediaCrawler-main\media_platform\douyin\help.py", line 81, in get_a_bogus return get_a_bogus_from_js(url, params, user_agent) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "C:\Users\EDY\Desktop\达人采集助手-portable-v2\app\MediaCrawler-main\media_platform\douyin\help.py", line 100, in get_a_bogus_from_js result = subprocess.run( ^^^^^^^^^^^^^^^ File "C:\Users\EDY\Desktop\达人采集助手-portable-v2\app\runtime\python\Lib\subprocess.py", line 548, in run with Popen(*popenargs, **kwargs) as process: ^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "C:\Users\EDY\Desktop\达人采集助手-portable-v2\app\runtime\python\Lib\subprocess.py", line 1026, in __init__ self._execute_child(args, executable, preexec_fn, close_fds, File "C:\Users\EDY\Desktop\达人采集助手-portable-v2\app\runtime\python\Lib\subprocess.py", line 1538, in _execute_child hp, ht, pid, tid = _winapi.CreateProcess(executable, args, ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ FileNotFoundError: [WinError 2] 系统找不到指定的文件。
烧野草 主页采集失败:2026-09-17 16:16:08 MediaCrawler INFO (core.py:77) - [DouYinCrawler] 使用CDP模式启动浏览器 2026-09-17 16:16:08 MediaCrawler INFO (cdp_browser.py:152) - [CDPBrowserManager] Connecting to existing browser on port 9222... 2026-09-17 16:16:08 MediaCrawler INFO (cdp_browser.py:155) - [CDPBrowserManager] Make sure remote debugging is enabled in your browser: chrome://inspect/#remote-debugging 2026-09-17 16:16:08 MediaCrawler INFO (cdp_browser.py:163) - [CDPBrowserManager] Waiting up to 60s for browser CDP connection... 2026-09-17 16:16:08 MediaCrawler INFO (cdp_browser.py:237) - [CDPBrowserManager] CDP port 9222 is accessible 2026-09-17 16:16:09 MediaCrawler INFO (cdp_browser.py:301) - [CDPBrowserManager] Got browser WebSocket URL: ws://localhost:9222/devtools/browser/e796ab07-a99a-42fa-8efa-c7e137271037 2026-09-17 16:16:09 MediaCrawler INFO (cdp_browser.py:329) - [CDPBrowserManager] Connecting to existing browser via discovered CDP (attempt 1/3): ws://localhost:9222/devtools/browser/e796ab07-a99a-42fa-8efa-c7e137271037 2026-09-17 16:16:09 MediaCrawler INFO (cdp_browser.py:333) - [CDPBrowserManager] If Chrome asks whether to allow remote debugging, accept it in the already logged-in browser window 2026-09-17 16:16:09 MediaCrawler INFO (cdp_browser.py:364) - [CDPBrowserManager] Successfully connected to browser 2026-09-17 16:16:09 MediaCrawler INFO (cdp_browser.py:365) - [CDPBrowserManager] Browser contexts count: 1 2026-09-17 16:16:09 MediaCrawler INFO (cdp_browser.py:390) - [CDPBrowserManager] Using existing browser context 2026-09-17 16:16:09 MediaCrawler INFO (cdp_browser.py:194) - [CDPBrowserManager] Successfully connected to existing browser 2026-09-17 16:16:09 MediaCrawler INFO (cdp_browser.py:422) - [CDPBrowserManager] Added anti-detection script: libs/stealth.min.js 2026-09-17 16:16:09 MediaCrawler INFO (core.py:450) - [DouYinCrawler] CDP浏览器信息: {'version': '152.0.7977.83', 'contexts_count': 1, 'debug_port': 9222, 'is_connected': True} 2026-09-17 16:16:11 MediaCrawler INFO (core.py:293) - [DouYinCrawler.get_creators_and_videos] Begin get douyin creators 2026-09-17 16:16:11 MediaCrawler INFO (core.py:294) - [DouYinCrawler.get_creators_and_videos] Parsing creator URLs... 2026-09-17 16:16:11 MediaCrawler INFO (core.py:339) - [DouYinCrawler.get_creators_and_videos] Creator concurrency: 2 2026-09-17 16:16:11 MediaCrawler INFO (core.py:301) - [DouYinCrawler.get_creators_and_videos] Parsed sec_user_id: MS4wLjABAAAAHfC77BDXPOuxyBk0zSObig0tfC5V1xjHEEH3T2kEMd4OD3ZFe_pMUDqsAj9P5n90 from MS4wLjABAAAAHfC77BDXPOuxyBk0zSObig0tfC5V1xjHEEH3T2kEMd4OD3ZFe_pMUDqsAj9P5n90 2026-09-17 16:16:11 MediaCrawler INFO (core.py:301) - [DouYinCrawler.get_creators_and_videos] Parsed sec_user_id: MS4wLjABAAAAhKV9O3uHtuxI2fpIyM970jZfWPpVAwVKM8rDmAJRSK-QbjvBjZPIkSXdz7PzehWh from MS4wLjABAAAAhKV9O3uHtuxI2fpIyM970jZfWPpVAwVKM8rDmAJRSK-QbjvBjZPIkSXdz7PzehWh 2026-09-17 16:16:11 MediaCrawler INFO (core.py:301) - [DouYinCrawler.get_creators_and_videos] Parsed sec_user_id: MS4wLjABAAAAJ3bK1EqCNdOvi_BQycwgSxMqM1bECeJcOn7WKzDnIn2Qp47ia7SFaZwSSEIHVY9b from MS4wLjABAAAAJ3bK1EqCNdOvi_BQycwgSxMqM1bECeJcOn7WKzDnIn2Qp47ia7SFaZwSSEIHVY9b 2026-09-17 16:16:11 MediaCrawler INFO (cdp_browser.py:490) - [CDPBrowserManager] Browser connection disconnected 2026-09-17 16:16:11 MediaCrawler INFO (cdp_browser.py:507) - [CDPBrowserManager] Connected to existing browser, skipping process cleanup 2026-09-17 16:16:11 MediaCrawler INFO (core.py:301) - [DouYinCrawler.get_creators_and_videos] Parsed sec_user_id: MS4wLjABAAAAr5oeZ6Qq-dxRZqUuMl5_km-5L7iQD73ATwXeOzR20wE from MS4wLjABAAAAr5oeZ6Qq-dxRZqUuMl5_km-5L7iQD73ATwXeOzR20wE 2026-09-17 16:16:11 MediaCrawler INFO (core.py:301) - [DouYinCrawler.get_creators_and_videos] Parsed sec_user_id: MS4wLjABAAAAVpXiRoVi3mPmcvg7BQh5cVQn_GTgSz1rWDs-w0vC_rwAjJhQebWSC5GlxJ8e9HpA from MS4wLjABAAAAVpXiRoVi3mPmcvg7BQh5cVQn_GTgSz1rWDs-w0vC_rwAjJhQebWSC5GlxJ8e9HpA Traceback (most recent call last): File "C:\Users\EDY\Desktop\达人采集助手-portable-v2\app\scripts\run-mediacrawler.py", line 21, in <module> runpy.run_path(os.path.join(crawler_root, "main.py"), run_name="__main__") File "<frozen runpy>", line 291, in run_path File "<frozen runpy>", line 98, in _run_module_code File "<frozen runpy>", line 88, in _run_code File "C:\Users\EDY\Desktop\达人采集助手-portable-v2\app\MediaCrawler-main\main.py", line 174, in <module> run(main, async_cleanup, cleanup_timeout_seconds=15.0, on_first_interrupt=_force_stop) File "C:\Users\EDY\Desktop\达人采集助手-portable-v2\app\MediaCrawler-main\tools\app_runner.py", line 109, in run asyncio.run(_runner()) File "C:\Users\EDY\Desktop\达人采集助手-portable-v2\app\runtime\python\Lib\asyncio\runners.py", line 190, in run return runner.run(main) ^^^^^^^^^^^^^^^^ File "C:\Users\EDY\Desktop\达人采集助手-portable-v2\app\runtime\python\Lib\asyncio\runners.py", line 118, in run return self._loop.run_until_complete(task) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "C:\Users\EDY\Desktop\达人采集助手-portable-v2\app\runtime\python\Lib\asyncio\base_events.py", line 654, in run_until_complete return future.result() ^^^^^^^^^^^^^^^ File "C:\Users\EDY\Desktop\达人采集助手-portable-v2\app\MediaCrawler-main\tools\app_runner.py", line 96, in _runner await app_main() File "C:\Users\EDY\Desktop\达人采集助手-portable-v2\app\MediaCrawler-main\main.py", line 114, in main await crawler.start() File "C:\Users\EDY\Desktop\达人采集助手-portable-v2\app\MediaCrawler-main\media_platform\douyin\core.py", line 141, in start await self.get_creators_and_videos() File "C:\Users\EDY\Desktop\达人采集助手-portable-v2\app\MediaCrawler-main\media_platform\douyin\core.py", line 342, in get_creators_and_videos creator_work_counts = await asyncio.gather( ^^^^^^^^^^^^^^^^^^^^^ File "C:\Users\EDY\Desktop\达人采集助手-portable-v2\app\MediaCrawler-main\media_platform\douyin\core.py", line 306, in fetch_one_creator creator_info: Dict = await self.dy_client.get_user_info(user_id) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "C:\Users\EDY\Desktop\达人采集助手-portable-v2\app\MediaCrawler-main\media_platform\douyin\client.py", line 319, in get_user_info return await self.get(uri, params) ^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "C:\Users\EDY\Desktop\达人采集助手-portable-v2\app\MediaCrawler-main\media_platform\douyin\client.py", line 141, in get await self.__process_req_params(uri, params, headers) File "C:\Users\EDY\Desktop\达人采集助手-portable-v2\app\MediaCrawler-main\media_platform\douyin\client.py", line 120, in __process_req_params a_bogus = await get_a_bogus(uri, query_string, post_data, headers["User-Agent"], self.playwright_page) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "C:\Users\EDY\Desktop\达人采集助手-portable-v2\app\MediaCrawler-main\media_platform\douyin\help.py", line 81, in get_a_bogus return get_a_bogus_from_js(url, params, user_agent) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "C:\Users\EDY\Desktop\达人采集助手-portable-v2\app\MediaCrawler-main\media_platform\douyin\help.py", line 100, in get_a_bogus_from_js result = subprocess.run( ^^^^^^^^^^^^^^^ File "C:\Users\EDY\Desktop\达人采集助手-portable-v2\app\runtime\python\Lib\subprocess.py", line 548, in run with Popen(*popenargs, **kwargs) as process: ^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "C:\Users\EDY\Desktop\达人采集助手-portable-v2\app\runtime\python\Lib\subprocess.py", line 1026, in __init__ self._execute_child(args, executable, preexec_fn, close_fds, File "C:\Users\EDY\Desktop\达人采集助手-portable-v2\app\runtime\python\Lib\subprocess.py", line 1538, in _execute_child hp, ht, pid, tid = _winapi.CreateProcess(executable, args, ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ FileNotFoundError: [WinError 2] 系统找不到指定的文件。
爱做梦的机器猫~ 主页采集失败:2026-09-17 16:32:21 MediaCrawler INFO (core.py:77) - [DouYinCrawler] 使用CDP模式启动浏览器 2026-09-17 16:32:21 MediaCrawler INFO (cdp_browser.py:152) - [CDPBrowserManager] Connecting to existing browser on port 9222... 2026-09-17 16:32:21 MediaCrawler INFO (cdp_browser.py:155) - [CDPBrowserManager] Make sure remote debugging is enabled in your browser: chrome://inspect/#remote-debugging 2026-09-17 16:32:21 MediaCrawler INFO (cdp_browser.py:163) - [CDPBrowserManager] Waiting up to 60s for browser CDP connection... 2026-09-17 16:32:21 MediaCrawler INFO (cdp_browser.py:237) - [CDPBrowserManager] CDP port 9222 is accessible 2026-09-17 16:32:21 MediaCrawler INFO (cdp_browser.py:301) - [CDPBrowserManager] Got browser WebSocket URL: ws://localhost:9222/devtools/browser/b6166241-0447-4b83-98ca-78fdbeb71daf 2026-09-17 16:32:21 MediaCrawler INFO (cdp_browser.py:329) - [CDPBrowserManager] Connecting to existing browser via discovered CDP (attempt 1/3): ws://localhost:9222/devtools/browser/b6166241-0447-4b83-98ca-78fdbeb71daf 2026-09-17 16:32:21 MediaCrawler INFO (cdp_browser.py:333) - [CDPBrowserManager] If Chrome asks whether to allow remote debugging, accept it in the already logged-in browser window 2026-09-17 16:32:24 MediaCrawler INFO (cdp_browser.py:364) - [CDPBrowserManager] Successfully connected to browser 2026-09-17 16:32:24 MediaCrawler INFO (cdp_browser.py:365) - [CDPBrowserManager] Browser contexts count: 1 2026-09-17 16:32:24 MediaCrawler INFO (cdp_browser.py:390) - [CDPBrowserManager] Using existing browser context 2026-09-17 16:32:24 MediaCrawler INFO (cdp_browser.py:194) - [CDPBrowserManager] Successfully connected to existing browser 2026-09-17 16:32:24 MediaCrawler INFO (cdp_browser.py:422) - [CDPBrowserManager] Added anti-detection script: libs/stealth.min.js 2026-09-17 16:32:24 MediaCrawler INFO (core.py:450) - [DouYinCrawler] CDP浏览器信息: {'version': '152.0.7977.83', 'contexts_count': 1, 'debug_port': 9222, 'is_connected': True} 2026-09-17 16:32:27 MediaCrawler INFO (core.py:293) - [DouYinCrawler.get_creators_and_videos] Begin get douyin creators 2026-09-17 16:32:27 MediaCrawler INFO (core.py:294) - [DouYinCrawler.get_creators_and_videos] Parsing creator URLs... 2026-09-17 16:32:27 MediaCrawler INFO (core.py:339) - [DouYinCrawler.get_creators_and_videos] Creator concurrency: 2 2026-09-17 16:32:27 MediaCrawler INFO (core.py:301) - [DouYinCrawler.get_creators_and_videos] Parsed sec_user_id: MS4wLjABAAAA-lrSCRUoQrZ3T90QjJW3gK4NunZk2NiwozoW6cgIjXk from MS4wLjABAAAA-lrSCRUoQrZ3T90QjJW3gK4NunZk2NiwozoW6cgIjXk 2026-09-17 16:32:27 MediaCrawler INFO (core.py:301) - [DouYinCrawler.get_creators_and_videos] Parsed sec_user_id: MS4wLjABAAAAaUCQ_gwp7gjbk7sn3X1c9wHG3pZbZOoVYl1moKnPUFE from MS4wLjABAAAAaUCQ_gwp7gjbk7sn3X1c9wHG3pZbZOoVYl1moKnPUFE 2026-09-17 16:32:27 MediaCrawler INFO (core.py:301) - [DouYinCrawler.get_creators_and_videos] Parsed sec_user_id: MS4wLjABAAAADZejdQI5YhjZ1QeUKxivOtGsf6AhGeE4zDwmR5kV-dA from MS4wLjABAAAADZejdQI5YhjZ1QeUKxivOtGsf6AhGeE4zDwmR5kV-dA 2026-09-17 16:32:28 MediaCrawler INFO (cdp_browser.py:490) - [CDPBrowserManager] Browser connection disconnected 2026-09-17 16:32:28 MediaCrawler INFO (cdp_browser.py:507) - [CDPBrowserManager] Connected to existing browser, skipping process cleanup 2026-09-17 16:32:28 MediaCrawler INFO (core.py:301) - [DouYinCrawler.get_creators_and_videos] Parsed sec_user_id: MS4wLjABAAAAPehcz5UItwBKHRUS91h52oDNA9gIZEGFD_GWmVoJwT__BGgBpgVbyrjErpzLEpZS from MS4wLjABAAAAPehcz5UItwBKHRUS91h52oDNA9gIZEGFD_GWmVoJwT__BGgBpgVbyrjErpzLEpZS 2026-09-17 16:32:28 MediaCrawler INFO (core.py:301) - [DouYinCrawler.get_creators_and_videos] Parsed sec_user_id: MS4wLjABAAAAptZpQBCAT2dBWpLYcYQqHINRueD9_pUH5Dvq1qAwhNA from MS4wLjABAAAAptZpQBCAT2dBWpLYcYQqHINRueD9_pUH5Dvq1qAwhNA Traceback (most recent call last): File "C:\Users\EDY\Desktop\达人采集助手-portable-v2\app\scripts\run-mediacrawler.py", line 21, in <module> runpy.run_path(os.path.join(crawler_root, "main.py"), run_name="__main__") File "<frozen runpy>", line 291, in run_path File "<frozen runpy>", line 98, in _run_module_code File "<frozen runpy>", line 88, in _run_code File "C:\Users\EDY\Desktop\达人采集助手-portable-v2\app\MediaCrawler-main\main.py", line 174, in <module> run(main, async_cleanup, cleanup_timeout_seconds=15.0, on_first_interrupt=_force_stop) File "C:\Users\EDY\Desktop\达人采集助手-portable-v2\app\MediaCrawler-main\tools\app_runner.py", line 109, in run asyncio.run(_runner()) File "C:\Users\EDY\Desktop\达人采集助手-portable-v2\app\runtime\python\Lib\asyncio\runners.py", line 190, in run return runner.run(main) ^^^^^^^^^^^^^^^^ File "C:\Users\EDY\Desktop\达人采集助手-portable-v2\app\runtime\python\Lib\asyncio\runners.py", line 118, in run return self._loop.run_until_complete(task) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "C:\Users\EDY\Desktop\达人采集助手-portable-v2\app\runtime\python\Lib\asyncio\base_events.py", line 654, in run_until_complete return future.result() ^^^^^^^^^^^^^^^ File "C:\Users\EDY\Desktop\达人采集助手-portable-v2\app\MediaCrawler-main\tools\app_runner.py", line 96, in _runner await app_main() File "C:\Users\EDY\Desktop\达人采集助手-portable-v2\app\MediaCrawler-main\main.py", line 114, in main await crawler.start() File "C:\Users\EDY\Desktop\达人采集助手-portable-v2\app\MediaCrawler-main\media_platform\douyin\core.py", line 141, in start await self.get_creators_and_videos() File "C:\Users\EDY\Desktop\达人采集助手-portable-v2\app\MediaCrawler-main\media_platform\douyin\core.py", line 342, in get_creators_and_videos creator_work_counts = await asyncio.gather( ^^^^^^^^^^^^^^^^^^^^^ File "C:\Users\EDY\Desktop\达人采集助手-portable-v2\app\MediaCrawler-main\media_platform\douyin\core.py", line 306, in fetch_one_creator creator_info: Dict = await self.dy_client.get_user_info(user_id) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "C:\Users\EDY\Desktop\达人采集助手-portable-v2\app\MediaCrawler-main\media_platform\douyin\client.py", line 319, in get_user_info return await self.get(uri, params) ^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "C:\Users\EDY\Desktop\达人采集助手-portable-v2\app\MediaCrawler-main\media_platform\douyin\client.py", line 141, in get await self.__process_req_params(uri, params, headers) File "C:\Users\EDY\Desktop\达人采集助手-portable-v2\app\MediaCrawler-main\media_platform\douyin\client.py", line 120, in __process_req_params a_bogus = await get_a_bogus(uri, query_string, post_data, headers["User-Agent"], self.playwright_page) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "C:\Users\EDY\Desktop\达人采集助手-portable-v2\app\MediaCrawler-main\media_platform\douyin\help.py", line 81, in get_a_bogus return get_a_bogus_from_js(url, params, user_agent) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "C:\Users\EDY\Desktop\达人采集助手-portable-v2\app\MediaCrawler-main\media_platform\douyin\help.py", line 100, in get_a_bogus_from_js result = subprocess.run( ^^^^^^^^^^^^^^^ File "C:\Users\EDY\Desktop\达人采集助手-portable-v2\app\runtime\python\Lib\subprocess.py", line 548, in run with Popen(*popenargs, **kwargs) as process: ^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "C:\Users\EDY\Desktop\达人采集助手-portable-v2\app\runtime\python\Lib\subprocess.py", line 1026, in __init__ self._execute_child(args, executable, preexec_fn, close_fds, File "C:\Users\EDY\Desktop\达人采集助手-portable-v2\app\runtime\python\Lib\subprocess.py", line 1538, in _execute_child hp, ht, pid, tid = _winapi.CreateProcess(executable, args, ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ FileNotFoundError: [WinError 2] 系统找不到指定的文件。
小孙警官 主页采集失败:2026-09-17 16:32:06 MediaCrawler INFO (core.py:77) - [DouYinCrawler] 使用CDP模式启动浏览器 2026-09-17 16:32:06 MediaCrawler INFO (cdp_browser.py:152) - [CDPBrowserManager] Connecting to existing browser on port 9222... 2026-09-17 16:32:06 MediaCrawler INFO (cdp_browser.py:155) - [CDPBrowserManager] Make sure remote debugging is enabled in your browser: chrome://inspect/#remote-debugging 2026-09-17 16:32:06 MediaCrawler INFO (cdp_browser.py:163) - [CDPBrowserManager] Waiting up to 60s for browser CDP connection... 2026-09-17 16:32:06 MediaCrawler INFO (cdp_browser.py:237) - [CDPBrowserManager] CDP port 9222 is accessible 2026-09-17 16:32:07 MediaCrawler INFO (cdp_browser.py:301) - [CDPBrowserManager] Got browser WebSocket URL: ws://localhost:9222/devtools/browser/b6166241-0447-4b83-98ca-78fdbeb71daf 2026-09-17 16:32:07 MediaCrawler INFO (cdp_browser.py:329) - [CDPBrowserManager] Connecting to existing browser via discovered CDP (attempt 1/3): ws://localhost:9222/devtools/browser/b6166241-0447-4b83-98ca-78fdbeb71daf 2026-09-17 16:32:07 MediaCrawler INFO (cdp_browser.py:333) - [CDPBrowserManager] If Chrome asks whether to allow remote debugging, accept it in the already logged-in browser window 2026-09-17 16:32:08 MediaCrawler INFO (cdp_browser.py:364) - [CDPBrowserManager] Successfully connected to browser 2026-09-17 16:32:08 MediaCrawler INFO (cdp_browser.py:365) - [CDPBrowserManager] Browser contexts count: 1 2026-09-17 16:32:08 MediaCrawler INFO (cdp_browser.py:390) - [CDPBrowserManager] Using existing browser context 2026-09-17 16:32:08 MediaCrawler INFO (cdp_browser.py:194) - [CDPBrowserManager] Successfully connected to existing browser 2026-09-17 16:32:08 MediaCrawler INFO (cdp_browser.py:422) - [CDPBrowserManager] Added anti-detection script: libs/stealth.min.js 2026-09-17 16:32:08 MediaCrawler INFO (core.py:450) - [DouYinCrawler] CDP浏览器信息: {'version': '152.0.7977.83', 'contexts_count': 1, 'debug_port': 9222, 'is_connected': True} 2026-09-17 16:32:09 MediaCrawler INFO (core.py:293) - [DouYinCrawler.get_creators_and_videos] Begin get douyin creators 2026-09-17 16:32:09 MediaCrawler INFO (core.py:294) - [DouYinCrawler.get_creators_and_videos] Parsing creator URLs... 2026-09-17 16:32:09 MediaCrawler INFO (core.py:339) - [DouYinCrawler.get_creators_and_videos] Creator concurrency: 2 2026-09-17 16:32:09 MediaCrawler INFO (core.py:301) - [DouYinCrawler.get_creators_and_videos] Parsed sec_user_id: MS4wLjABAAAABkqrnqUzQnYv9Bvc8H2B6CZYc7SQMjDxScMpw3d18KA_554bLTOHgm2LpbMX8JWI from MS4wLjABAAAABkqrnqUzQnYv9Bvc8H2B6CZYc7SQMjDxScMpw3d18KA_554bLTOHgm2LpbMX8JWI 2026-09-17 16:32:09 MediaCrawler INFO (core.py:301) - [DouYinCrawler.get_creators_and_videos] Parsed sec_user_id: MS4wLjABAAAAexFpM7HqDksih6OlKdppTTEcyvdXFPDNOZyNRAatvKA from MS4wLjABAAAAexFpM7HqDksih6OlKdppTTEcyvdXFPDNOZyNRAatvKA 2026-09-17 16:32:09 MediaCrawler INFO (core.py:301) - [DouYinCrawler.get_creators_and_videos] Parsed sec_user_id: MS4wLjABAAAAFsF3Anolfk5DcVAWJrXZbyxwgqi4vZ4xJy4UtuG6vMX1-pezz0oJm2BeC1QxvMzv from MS4wLjABAAAAFsF3Anolfk5DcVAWJrXZbyxwgqi4vZ4xJy4UtuG6vMX1-pezz0oJm2BeC1QxvMzv 2026-09-17 16:32:09 MediaCrawler INFO (cdp_browser.py:490) - [CDPBrowserManager] Browser connection disconnected 2026-09-17 16:32:09 MediaCrawler INFO (cdp_browser.py:507) - [CDPBrowserManager] Connected to existing browser, skipping process cleanup 2026-09-17 16:32:09 MediaCrawler INFO (core.py:301) - [DouYinCrawler.get_creators_and_videos] Parsed sec_user_id: MS4wLjABAAAAI3Q32U3Y-_VBcSYDbhYk6hzup9SytpGZHe50rncdOB0 from MS4wLjABAAAAI3Q32U3Y-_VBcSYDbhYk6hzup9SytpGZHe50rncdOB0 2026-09-17 16:32:09 MediaCrawler INFO (core.py:301) - [DouYinCrawler.get_creators_and_videos] Parsed sec_user_id: MS4wLjABAAAAJ1hIJ93r2PJqj9aQEtYxb59XpFCQU2KK_Wi2ZybDQ08 from MS4wLjABAAAAJ1hIJ93r2PJqj9aQEtYxb59XpFCQU2KK_Wi2ZybDQ08 Traceback (most recent call last): File "C:\Users\EDY\Desktop\达人采集助手-portable-v2\app\scripts\run-mediacrawler.py", line 21, in <module> runpy.run_path(os.path.join(crawler_root, "main.py"), run_name="__main__") File "<frozen runpy>", line 291, in run_path File "<frozen runpy>", line 98, in _run_module_code File "<frozen runpy>", line 88, in _run_code File "C:\Users\EDY\Desktop\达人采集助手-portable-v2\app\MediaCrawler-main\main.py", line 174, in <module> run(main, async_cleanup, cleanup_timeout_seconds=15.0, on_first_interrupt=_force_stop) File "C:\Users\EDY\Desktop\达人采集助手-portable-v2\app\MediaCrawler-main\tools\app_runner.py", line 109, in run asyncio.run(_runner()) File "C:\Users\EDY\Desktop\达人采集助手-portable-v2\app\runtime\python\Lib\asyncio\runners.py", line 190, in run return runner.run(main) ^^^^^^^^^^^^^^^^ File "C:\Users\EDY\Desktop\达人采集助手-portable-v2\app\runtime\python\Lib\asyncio\runners.py", line 118, in run return self._loop.run_until_complete(task) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "C:\Users\EDY\Desktop\达人采集助手-portable-v2\app\runtime\python\Lib\asyncio\base_events.py", line 654, in run_until_complete return future.result() ^^^^^^^^^^^^^^^ File "C:\Users\EDY\Desktop\达人采集助手-portable-v2\app\MediaCrawler-main\tools\app_runner.py", line 96, in _runner await app_main() File "C:\Users\EDY\Desktop\达人采集助手-portable-v2\app\MediaCrawler-main\main.py", line 114, in main await crawler.start() File "C:\Users\EDY\Desktop\达人采集助手-portable-v2\app\MediaCrawler-main\media_platform\douyin\core.py", line 141, in start await self.get_creators_and_videos() File "C:\Users\EDY\Desktop\达人采集助手-portable-v2\app\MediaCrawler-main\media_platform\douyin\core.py", line 342, in get_creators_and_videos creator_work_counts = await asyncio.gather( ^^^^^^^^^^^^^^^^^^^^^ File "C:\Users\EDY\Desktop\达人采集助手-portable-v2\app\MediaCrawler-main\media_platform\douyin\core.py", line 306, in fetch_one_creator creator_info: Dict = await self.dy_client.get_user_info(user_id) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "C:\Users\EDY\Desktop\达人采集助手-portable-v2\app\MediaCrawler-main\media_platform\douyin\client.py", line 319, in get_user_info return await self.get(uri, params) ^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "C:\Users\EDY\Desktop\达人采集助手-portable-v2\app\MediaCrawler-main\media_platform\douyin\client.py", line 141, in get await self.__process_req_params(uri, params, headers) File "C:\Users\EDY\Desktop\达人采集助手-portable-v2\app\MediaCrawler-main\media_platform\douyin\client.py", line 120, in __process_req_params a_bogus = await get_a_bogus(uri, query_string, post_data, headers["User-Agent"], self.playwright_page) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "C:\Users\EDY\Desktop\达人采集助手-portable-v2\app\MediaCrawler-main\media_platform\douyin\help.py", line 81, in get_a_bogus return get_a_bogus_from_js(url, params, user_agent) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "C:\Users\EDY\Desktop\达人采集助手-portable-v2\app\MediaCrawler-main\media_platform\douyin\help.py", line 100, in get_a_bogus_from_js result = subprocess.run( ^^^^^^^^^^^^^^^ File "C:\Users\EDY\Desktop\达人采集助手-portable-v2\app\runtime\python\Lib\subprocess.py", line 548, in run with Popen(*popenargs, **kwargs) as process: ^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "C:\Users\EDY\Desktop\达人采集助手-portable-v2\app\runtime\python\Lib\subprocess.py", line 1026, in __init__ self._execute_child(args, executable, preexec_fn, close_fds, File "C:\Users\EDY\Desktop\达人采集助手-portable-v2\app\runtime\python\Lib\subprocess.py", line 1538, in _execute_child hp, ht, pid, tid = _winapi.CreateProcess(executable, args, ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ FileNotFoundError: [WinError 2] 系统找不到指定的文件。
听风揽月 主页采集失败:MediaCrawler 主页采集超时(90 秒)
风和雨 主页采集失败:2026-09-17 16:16:08 MediaCrawler INFO (core.py:77) - [DouYinCrawler] 使用CDP模式启动浏览器 2026-09-17 16:16:08 MediaCrawler INFO (cdp_browser.py:152) - [CDPBrowserManager] Connecting to existing browser on port 9222... 2026-09-17 16:16:08 MediaCrawler INFO (cdp_browser.py:155) - [CDPBrowserManager] Make sure remote debugging is enabled in your browser: chrome://inspect/#remote-debugging 2026-09-17 16:16:08 MediaCrawler INFO (cdp_browser.py:163) - [CDPBrowserManager] Waiting up to 60s for browser CDP connection... 2026-09-17 16:16:08 MediaCrawler INFO (cdp_browser.py:237) - [CDPBrowserManager] CDP port 9222 is accessible 2026-09-17 16:16:09 MediaCrawler INFO (cdp_browser.py:301) - [CDPBrowserManager] Got browser WebSocket URL: ws://localhost:9222/devtools/browser/e796ab07-a99a-42fa-8efa-c7e137271037 2026-09-17 16:16:09 MediaCrawler INFO (cdp_browser.py:329) - [CDPBrowserManager] Connecting to existing browser via discovered CDP (attempt 1/3): ws://localhost:9222/devtools/browser/e796ab07-a99a-42fa-8efa-c7e137271037 2026-09-17 16:16:09 MediaCrawler INFO (cdp_browser.py:333) - [CDPBrowserManager] If Chrome asks whether to allow remote debugging, accept it in the already logged-in browser window 2026-09-17 16:16:09 MediaCrawler INFO (cdp_browser.py:364) - [CDPBrowserManager] Successfully connected to browser 2026-09-17 16:16:09 MediaCrawler INFO (cdp_browser.py:365) - [CDPBrowserManager] Browser contexts count: 1 2026-09-17 16:16:09 MediaCrawler INFO (cdp_browser.py:390) - [CDPBrowserManager] Using existing browser context 2026-09-17 16:16:09 MediaCrawler INFO (cdp_browser.py:194) - [CDPBrowserManager] Successfully connected to existing browser 2026-09-17 16:16:09 MediaCrawler INFO (cdp_browser.py:422) - [CDPBrowserManager] Added anti-detection script: libs/stealth.min.js 2026-09-17 16:16:09 MediaCrawler INFO (core.py:450) - [DouYinCrawler] CDP浏览器信息: {'version': '152.0.7977.83', 'contexts_count': 1, 'debug_port': 9222, 'is_connected': True} 2026-09-17 16:16:11 MediaCrawler INFO (core.py:293) - [DouYinCrawler.get_creators_and_videos] Begin get douyin creators 2026-09-17 16:16:11 MediaCrawler INFO (core.py:294) - [DouYinCrawler.get_creators_and_videos] Parsing creator URLs... 2026-09-17 16:16:11 MediaCrawler INFO (core.py:339) - [DouYinCrawler.get_creators_and_videos] Creator concurrency: 2 2026-09-17 16:16:11 MediaCrawler INFO (core.py:301) - [DouYinCrawler.get_creators_and_videos] Parsed sec_user_id: MS4wLjABAAAAHfC77BDXPOuxyBk0zSObig0tfC5V1xjHEEH3T2kEMd4OD3ZFe_pMUDqsAj9P5n90 from MS4wLjABAAAAHfC77BDXPOuxyBk0zSObig0tfC5V1xjHEEH3T2kEMd4OD3ZFe_pMUDqsAj9P5n90 2026-09-17 16:16:11 MediaCrawler INFO (core.py:301) - [DouYinCrawler.get_creators_and_videos] Parsed sec_user_id: MS4wLjABAAAAhKV9O3uHtuxI2fpIyM970jZfWPpVAwVKM8rDmAJRSK-QbjvBjZPIkSXdz7PzehWh from MS4wLjABAAAAhKV9O3uHtuxI2fpIyM970jZfWPpVAwVKM8rDmAJRSK-QbjvBjZPIkSXdz7PzehWh 2026-09-17 16:16:11 MediaCrawler INFO (core.py:301) - [DouYinCrawler.get_creators_and_videos] Parsed sec_user_id: MS4wLjABAAAAJ3bK1EqCNdOvi_BQycwgSxMqM1bECeJcOn7WKzDnIn2Qp47ia7SFaZwSSEIHVY9b from MS4wLjABAAAAJ3bK1EqCNdOvi_BQycwgSxMqM1bECeJcOn7WKzDnIn2Qp47ia7SFaZwSSEIHVY9b 2026-09-17 16:16:11 MediaCrawler INFO (cdp_browser.py:490) - [CDPBrowserManager] Browser connection disconnected 2026-09-17 16:16:11 MediaCrawler INFO (cdp_browser.py:507) - [CDPBrowserManager] Connected to existing browser, skipping process cleanup 2026-09-17 16:16:11 MediaCrawler INFO (core.py:301) - [DouYinCrawler.get_creators_and_videos] Parsed sec_user_id: MS4wLjABAAAAr5oeZ6Qq-dxRZqUuMl5_km-5L7iQD73ATwXeOzR20wE from MS4wLjABAAAAr5oeZ6Qq-dxRZqUuMl5_km-5L7iQD73ATwXeOzR20wE 2026-09-17 16:16:11 MediaCrawler INFO (core.py:301) - [DouYinCrawler.get_creators_and_videos] Parsed sec_user_id: MS4wLjABAAAAVpXiRoVi3mPmcvg7BQh5cVQn_GTgSz1rWDs-w0vC_rwAjJhQebWSC5GlxJ8e9HpA from MS4wLjABAAAAVpXiRoVi3mPmcvg7BQh5cVQn_GTgSz1rWDs-w0vC_rwAjJhQebWSC5GlxJ8e9HpA Traceback (most recent call last): File "C:\Users\EDY\Desktop\达人采集助手-portable-v2\app\scripts\run-mediacrawler.py", line 21, in <module> runpy.run_path(os.path.join(crawler_root, "main.py"), run_name="__main__") File "<frozen runpy>", line 291, in run_path File "<frozen runpy>", line 98, in _run_module_code File "<frozen runpy>", line 88, in _run_code File "C:\Users\EDY\Desktop\达人采集助手-portable-v2\app\MediaCrawler-main\main.py", line 174, in <module> run(main, async_cleanup, cleanup_timeout_seconds=15.0, on_first_interrupt=_force_stop) File "C:\Users\EDY\Desktop\达人采集助手-portable-v2\app\MediaCrawler-main\tools\app_runner.py", line 109, in run asyncio.run(_runner()) File "C:\Users\EDY\Desktop\达人采集助手-portable-v2\app\runtime\python\Lib\asyncio\runners.py", line 190, in run return runner.run(main) ^^^^^^^^^^^^^^^^ File "C:\Users\EDY\Desktop\达人采集助手-portable-v2\app\runtime\python\Lib\asyncio\runners.py", line 118, in run return self._loop.run_until_complete(task) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "C:\Users\EDY\Desktop\达人采集助手-portable-v2\app\runtime\python\Lib\asyncio\base_events.py", line 654, in run_until_complete return future.result() ^^^^^^^^^^^^^^^ File "C:\Users\EDY\Desktop\达人采集助手-portable-v2\app\MediaCrawler-main\tools\app_runner.py", line 96, in _runner await app_main() File "C:\Users\EDY\Desktop\达人采集助手-portable-v2\app\MediaCrawler-main\main.py", line 114, in main await crawler.start() File "C:\Users\EDY\Desktop\达人采集助手-portable-v2\app\MediaCrawler-main\media_platform\douyin\core.py", line 141, in start await self.get_creators_and_videos() File "C:\Users\EDY\Desktop\达人采集助手-portable-v2\app\MediaCrawler-main\media_platform\douyin\core.py", line 342, in get_creators_and_videos creator_work_counts = await asyncio.gather( ^^^^^^^^^^^^^^^^^^^^^ File "C:\Users\EDY\Desktop\达人采集助手-portable-v2\app\MediaCrawler-main\media_platform\douyin\core.py", line 306, in fetch_one_creator creator_info: Dict = await self.dy_client.get_user_info(user_id) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "C:\Users\EDY\Desktop\达人采集助手-portable-v2\app\MediaCrawler-main\media_platform\douyin\client.py", line 319, in get_user_info return await self.get(uri, params) ^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "C:\Users\EDY\Desktop\达人采集助手-portable-v2\app\MediaCrawler-main\media_platform\douyin\client.py", line 141, in get await self.__process_req_params(uri, params, headers) File "C:\Users\EDY\Desktop\达人采集助手-portable-v2\app\MediaCrawler-main\media_platform\douyin\client.py", line 120, in __process_req_params a_bogus = await get_a_bogus(uri, query_string, post_data, headers["User-Agent"], self.playwright_page) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "C:\Users\EDY\Desktop\达人采集助手-portable-v2\app\MediaCrawler-main\media_platform\douyin\help.py", line 81, in get_a_bogus return get_a_bogus_from_js(url, params, user_agent) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "C:\Users\EDY\Desktop\达人采集助手-portable-v2\app\MediaCrawler-main\media_platform\douyin\help.py", line 100, in get_a_bogus_from_js result = subprocess.run( ^^^^^^^^^^^^^^^ File "C:\Users\EDY\Desktop\达人采集助手-portable-v2\app\runtime\python\Lib\subprocess.py", line 548, in run with Popen(*popenargs, **kwargs) as process: ^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "C:\Users\EDY\Desktop\达人采集助手-portable-v2\app\runtime\python\Lib\subprocess.py", line 1026, in __init__ self._execute_child(args, executable, preexec_fn, close_fds, File "C:\Users\EDY\Desktop\达人采集助手-portable-v2\app\runtime\python\Lib\subprocess.py", line 1538, in _execute_child hp, ht, pid, tid = _winapi.CreateProcess(executable, args, ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ FileNotFoundError: [WinError 2] 系统找不到指定的文件。
赵同学 主页采集失败:MediaCrawler 主页采集超时(90 秒)
一天四碗饭 主页采集失败:2026-09-17 14:10:58 MediaCrawler INFO (core.py:77) - [DouYinCrawler] 使用CDP模式启动浏览器 2026-09-17 14:10:58 MediaCrawler INFO (cdp_browser.py:152) - [CDPBrowserManager] Connecting to existing browser on port 9222... 2026-09-17 14:10:58 MediaCrawler INFO (cdp_browser.py:155) - [CDPBrowserManager] Make sure remote debugging is enabled in your browser: chrome://inspect/#remote-debugging 2026-09-17 14:10:58 MediaCrawler INFO (cdp_browser.py:163) - [CDPBrowserManager] Waiting up to 60s for browser CDP connection... 2026-09-17 14:10:58 MediaCrawler INFO (cdp_browser.py:237) - [CDPBrowserManager] CDP port 9222 is accessible 2026-09-17 14:10:59 MediaCrawler INFO (cdp_browser.py:301) - [CDPBrowserManager] Got browser WebSocket URL: ws://localhost:9222/devtools/browser/7c03ef21-ce48-4e92-88b7-8abe72aed2f3 2026-09-17 14:10:59 MediaCrawler INFO (cdp_browser.py:329) - [CDPBrowserManager] Connecting to existing browser via discovered CDP (attempt 1/3): ws://localhost:9222/devtools/browser/7c03ef21-ce48-4e92-88b7-8abe72aed2f3 2026-09-17 14:10:59 MediaCrawler INFO (cdp_browser.py:333) - [CDPBrowserManager] If Chrome asks whether to allow remote debugging, accept it in the already logged-in browser window 2026-09-17 14:10:59 MediaCrawler INFO (cdp_browser.py:364) - [CDPBrowserManager] Successfully connected to browser 2026-09-17 14:10:59 MediaCrawler INFO (cdp_browser.py:365) - [CDPBrowserManager] Browser contexts count: 1 2026-09-17 14:10:59 MediaCrawler INFO (cdp_browser.py:390) - [CDPBrowserManager] Using existing browser context 2026-09-17 14:10:59 MediaCrawler INFO (cdp_browser.py:194) - [CDPBrowserManager] Successfully connected to existing browser 2026-09-17 14:10:59 MediaCrawler INFO (cdp_browser.py:422) - [CDPBrowserManager] Added anti-detection script: libs/stealth.min.js 2026-09-17 14:10:59 MediaCrawler INFO (core.py:450) - [DouYinCrawler] CDP浏览器信息: {'version': '152.0.7977.83', 'contexts_count': 1, 'debug_port': 9222, 'is_connected': True} 2026-09-17 14:11:02 MediaCrawler INFO (core.py:293) - [DouYinCrawler.get_creators_and_videos] Begin get douyin creators 2026-09-17 14:11:02 MediaCrawler INFO (core.py:294) - [DouYinCrawler.get_creators_and_videos] Parsing creator URLs... 2026-09-17 14:11:02 MediaCrawler INFO (core.py:339) - [DouYinCrawler.get_creators_and_videos] Creator concurrency: 2 2026-09-17 14:11:02 MediaCrawler INFO (core.py:301) - [DouYinCrawler.get_creators_and_videos] Parsed sec_user_id: MS4wLjABAAAA-7FuZwMllEVyWnCU2M9GSHsA69DSN7I9RkQb0GNsqzI from MS4wLjABAAAA-7FuZwMllEVyWnCU2M9GSHsA69DSN7I9RkQb0GNsqzI 2026-09-17 14:11:02 MediaCrawler INFO (core.py:301) - [DouYinCrawler.get_creators_and_videos] Parsed sec_user_id: MS4wLjABAAAA0YAn2hW4EoLtfkx_MphhVCWsSz8mDxGjKbfp30eBi6w from MS4wLjABAAAA0YAn2hW4EoLtfkx_MphhVCWsSz8mDxGjKbfp30eBi6w 2026-09-17 14:11:02 MediaCrawler INFO (core.py:301) - [DouYinCrawler.get_creators_and_videos] Parsed sec_user_id: MS4wLjABAAAAc5o31_ktyjVcEvUgmjFOzjCf9Rk50xNE8qeXlgICr0I from MS4wLjABAAAAc5o31_ktyjVcEvUgmjFOzjCf9Rk50xNE8qeXlgICr0I 2026-09-17 14:11:02 MediaCrawler INFO (cdp_browser.py:490) - [CDPBrowserManager] Browser connection disconnected 2026-09-17 14:11:02 MediaCrawler INFO (cdp_browser.py:507) - [CDPBrowserManager] Connected to existing browser, skipping process cleanup 2026-09-17 14:11:02 MediaCrawler INFO (core.py:301) - [DouYinCrawler.get_creators_and_videos] Parsed sec_user_id: MS4wLjABAAAACI9fWKcbtZlbkEtZ3yOvKhtn5vMjEKSezARi3rqRny_diF1fqCXIbeQs0C1qhrbH from MS4wLjABAAAACI9fWKcbtZlbkEtZ3yOvKhtn5vMjEKSezARi3rqRny_diF1fqCXIbeQs0C1qhrbH 2026-09-17 14:11:02 MediaCrawler INFO (core.py:301) - [DouYinCrawler.get_creators_and_videos] Parsed sec_user_id: MS4wLjABAAAAvpAxdIKMcaXNk6he8H1FOSCjOXe23oonwL2lr64C_h8 from MS4wLjABAAAAvpAxdIKMcaXNk6he8H1FOSCjOXe23oonwL2lr64C_h8 Traceback (most recent call last): File "C:\Users\EDY\Documents\流程\kol-crm-next\scripts\run-mediacrawler.py", line 21, in <module> runpy.run_path(os.path.join(crawler_root, "main.py"), run_name="__main__") File "<frozen runpy>", line 291, in run_path File "<frozen runpy>", line 98, in _run_module_code File "<frozen runpy>", line 88, in _run_code File "C:\Users\EDY\Desktop\达人采集助手-portable-v3\达人采集助手-portable-v3\app\MediaCrawler-main\main.py", line 174, in <module> run(main, async_cleanup, cleanup_timeout_seconds=15.0, on_first_interrupt=_force_stop) File "C:\Users\EDY\Desktop\达人采集助手-portable-v3\达人采集助手-portable-v3\app\MediaCrawler-main\tools\app_runner.py", line 109, in run asyncio.run(_runner()) File "C:\Users\EDY\Desktop\达人采集助手-portable-v3\达人采集助手-portable-v3\app\runtime\python\Lib\asyncio\runners.py", line 190, in run return runner.run(main) ^^^^^^^^^^^^^^^^ File "C:\Users\EDY\Desktop\达人采集助手-portable-v3\达人采集助手-portable-v3\app\runtime\python\Lib\asyncio\runners.py", line 118, in run return self._loop.run_until_complete(task) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "C:\Users\EDY\Desktop\达人采集助手-portable-v3\达人采集助手-portable-v3\app\runtime\python\Lib\asyncio\base_events.py", line 654, in run_until_complete return future.result() ^^^^^^^^^^^^^^^ File "C:\Users\EDY\Desktop\达人采集助手-portable-v3\达人采集助手-portable-v3\app\MediaCrawler-main\tools\app_runner.py", line 96, in _runner await app_main() File "C:\Users\EDY\Desktop\达人采集助手-portable-v3\达人采集助手-portable-v3\app\MediaCrawler-main\main.py", line 114, in main await crawler.start() File "C:\Users\EDY\Desktop\达人采集助手-portable-v3\达人采集助手-portable-v3\app\MediaCrawler-main\media_platform\douyin\core.py", line 141, in start await self.get_creators_and_videos() File "C:\Users\EDY\Desktop\达人采集助手-portable-v3\达人采集助手-portable-v3\app\MediaCrawler-main\media_platform\douyin\core.py", line 342, in get_creators_and_videos creator_work_counts = await asyncio.gather( ^^^^^^^^^^^^^^^^^^^^^ File "C:\Users\EDY\Desktop\达人采集助手-portable-v3\达人采集助手-portable-v3\app\MediaCrawler-main\media_platform\douyin\core.py", line 306, in fetch_one_creator creator_info: Dict = await self.dy_client.get_user_info(user_id) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "C:\Users\EDY\Desktop\达人采集助手-portable-v3\达人采集助手-portable-v3\app\MediaCrawler-main\media_platform\douyin\client.py", line 319, in get_user_info return await self.get(uri, params) ^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "C:\Users\EDY\Desktop\达人采集助手-portable-v3\达人采集助手-portable-v3\app\MediaCrawler-main\media_platform\douyin\client.py", line 141, in get await self.__process_req_params(uri, params, headers) File "C:\Users\EDY\Desktop\达人采集助手-portable-v3\达人采集助手-portable-v3\app\MediaCrawler-main\media_platform\douyin\client.py", line 120, in __process_req_params a_bogus = await get_a_bogus(uri, query_string, post_data, headers["User-Agent"], self.playwright_page) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "C:\Users\EDY\Desktop\达人采集助手-portable-v3\达人采集助手-portable-v3\app\MediaCrawler-main\media_platform\douyin\help.py", line 81, in get_a_bogus return get_a_bogus_from_js(url, params, user_agent) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "C:\Users\EDY\Desktop\达人采集助手-portable-v3\达人采集助手-portable-v3\app\MediaCrawler-main\media_platform\douyin\help.py", line 100, in get_a_bogus_from_js result = subprocess.run( ^^^^^^^^^^^^^^^ File "C:\Users\EDY\Desktop\达人采集助手-portable-v3\达人采集助手-portable-v3\app\runtime\python\Lib\subprocess.py", line 548, in run with Popen(*popenargs, **kwargs) as process: ^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "C:\Users\EDY\Desktop\达人采集助手-portable-v3\达人采集助手-portable-v3\app\runtime\python\Lib\subprocess.py", line 1026, in __init__ self._execute_child(args, executable, preexec_fn, close_fds, File "C:\Users\EDY\Desktop\达人采集助手-portable-v3\达人采集助手-portable-v3\app\runtime\python\Lib\subprocess.py", line 1538, in _execute_child hp, ht, pid, tid = _winapi.CreateProcess(executable, args, ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ FileNotFoundError: [WinError 2] 系统找不到指定的文件。
芝士奶芙芙 主页采集失败:2026-09-17 16:14:55 MediaCrawler INFO (core.py:77) - [DouYinCrawler] 使用CDP模式启动浏览器 2026-09-17 16:14:55 MediaCrawler INFO (cdp_browser.py:152) - [CDPBrowserManager] Connecting to existing browser on port 9222... 2026-09-17 16:14:55 MediaCrawler INFO (cdp_browser.py:155) - [CDPBrowserManager] Make sure remote debugging is enabled in your browser: chrome://inspect/#remote-debugging 2026-09-17 16:14:55 MediaCrawler INFO (cdp_browser.py:163) - [CDPBrowserManager] Waiting up to 60s for browser CDP connection... 2026-09-17 16:14:55 MediaCrawler INFO (cdp_browser.py:237) - [CDPBrowserManager] CDP port 9222 is accessible 2026-09-17 16:14:55 MediaCrawler INFO (cdp_browser.py:301) - [CDPBrowserManager] Got browser WebSocket URL: ws://localhost:9222/devtools/browser/de0c60f3-2b1a-4fcc-adf5-d6c8e827445b 2026-09-17 16:14:55 MediaCrawler INFO (cdp_browser.py:329) - [CDPBrowserManager] Connecting to existing browser via discovered CDP (attempt 1/3): ws://localhost:9222/devtools/browser/de0c60f3-2b1a-4fcc-adf5-d6c8e827445b 2026-09-17 16:14:55 MediaCrawler INFO (cdp_browser.py:333) - [CDPBrowserManager] If Chrome asks whether to allow remote debugging, accept it in the already logged-in browser window 2026-09-17 16:14:56 MediaCrawler INFO (cdp_browser.py:364) - [CDPBrowserManager] Successfully connected to browser 2026-09-17 16:14:56 MediaCrawler INFO (cdp_browser.py:365) - [CDPBrowserManager] Browser contexts count: 1 2026-09-17 16:14:56 MediaCrawler INFO (cdp_browser.py:390) - [CDPBrowserManager] Using existing browser context 2026-09-17 16:14:56 MediaCrawler INFO (cdp_browser.py:194) - [CDPBrowserManager] Successfully connected to existing browser 2026-09-17 16:14:56 MediaCrawler INFO (cdp_browser.py:422) - [CDPBrowserManager] Added anti-detection script: libs/stealth.min.js 2026-09-17 16:14:56 MediaCrawler INFO (core.py:450) - [DouYinCrawler] CDP浏览器信息: {'version': '152.0.7977.83', 'contexts_count': 1, 'debug_port': 9222, 'is_connected': True} 2026-09-17 16:14:57 MediaCrawler INFO (core.py:293) - [DouYinCrawler.get_creators_and_videos] Begin get douyin creators 2026-09-17 16:14:57 MediaCrawler INFO (core.py:294) - [DouYinCrawler.get_creators_and_videos] Parsing creator URLs... 2026-09-17 16:14:57 MediaCrawler INFO (core.py:339) - [DouYinCrawler.get_creators_and_videos] Creator concurrency: 2 2026-09-17 16:14:57 MediaCrawler INFO (core.py:301) - [DouYinCrawler.get_creators_and_videos] Parsed sec_user_id: MS4wLjABAAAAjJrhhQDmjID51Von5NeD7ql7X-OqqY24yIgiNo1yO4_N7I6GrLR3camYax0mBhCl from MS4wLjABAAAAjJrhhQDmjID51Von5NeD7ql7X-OqqY24yIgiNo1yO4_N7I6GrLR3camYax0mBhCl 2026-09-17 16:14:57 MediaCrawler INFO (core.py:301) - [DouYinCrawler.get_creators_and_videos] Parsed sec_user_id: MS4wLjABAAAAoIynL8rpEuRGXnbaCOQKYjfuBf4enwQtHEjLqjTkw4k from MS4wLjABAAAAoIynL8rpEuRGXnbaCOQKYjfuBf4enwQtHEjLqjTkw4k 2026-09-17 16:14:57 MediaCrawler INFO (core.py:301) - [DouYinCrawler.get_creators_and_videos] Parsed sec_user_id: MS4wLjABAAAAxZwVBBZgOqL4o-D0Q4U-l4bxIu4lEt9AFMIahnmP3gjFQcuyZaFfzm6h9OR_v5Pg from MS4wLjABAAAAxZwVBBZgOqL4o-D0Q4U-l4bxIu4lEt9AFMIahnmP3gjFQcuyZaFfzm6h9OR_v5Pg 2026-09-17 16:14:57 MediaCrawler INFO (cdp_browser.py:490) - [CDPBrowserManager] Browser connection disconnected 2026-09-17 16:14:57 MediaCrawler INFO (cdp_browser.py:507) - [CDPBrowserManager] Connected to existing browser, skipping process cleanup 2026-09-17 16:14:57 MediaCrawler INFO (core.py:301) - [DouYinCrawler.get_creators_and_videos] Parsed sec_user_id: MS4wLjABAAAAyCgoDQuBXz4kL2CbiiUd2wdlLgt6i7TcCVdWQ85Tip0 from MS4wLjABAAAAyCgoDQuBXz4kL2CbiiUd2wdlLgt6i7TcCVdWQ85Tip0 2026-09-17 16:14:57 MediaCrawler INFO (core.py:301) - [DouYinCrawler.get_creators_and_videos] Parsed sec_user_id: MS4wLjABAAAAyMDHJlJKcd8EBU3oUB672_5Q5led88zBZRiVtAKApD4hEh3JNvVNMv0UJ4q-tg5o from MS4wLjABAAAAyMDHJlJKcd8EBU3oUB672_5Q5led88zBZRiVtAKApD4hEh3JNvVNMv0UJ4q-tg5o Traceback (most recent call last): File "C:\Users\EDY\Desktop\达人采集助手-portable-v2\app\scripts\run-mediacrawler.py", line 21, in <module> runpy.run_path(os.path.join(crawler_root, "main.py"), run_name="__main__") File "<frozen runpy>", line 291, in run_path File "<frozen runpy>", line 98, in _run_module_code File "<frozen runpy>", line 88, in _run_code File "C:\Users\EDY\Desktop\达人采集助手-portable-v2\app\MediaCrawler-main\main.py", line 174, in <module> run(main, async_cleanup, cleanup_timeout_seconds=15.0, on_first_interrupt=_force_stop) File "C:\Users\EDY\Desktop\达人采集助手-portable-v2\app\MediaCrawler-main\tools\app_runner.py", line 109, in run asyncio.run(_runner()) File "C:\Users\EDY\Desktop\达人采集助手-portable-v2\app\runtime\python\Lib\asyncio\runners.py", line 190, in run return runner.run(main) ^^^^^^^^^^^^^^^^ File "C:\Users\EDY\Desktop\达人采集助手-portable-v2\app\runtime\python\Lib\asyncio\runners.py", line 118, in run return self._loop.run_until_complete(task) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "C:\Users\EDY\Desktop\达人采集助手-portable-v2\app\runtime\python\Lib\asyncio\base_events.py", line 654, in run_until_complete return future.result() ^^^^^^^^^^^^^^^ File "C:\Users\EDY\Desktop\达人采集助手-portable-v2\app\MediaCrawler-main\tools\app_runner.py", line 96, in _runner await app_main() File "C:\Users\EDY\Desktop\达人采集助手-portable-v2\app\MediaCrawler-main\main.py", line 114, in main await crawler.start() File "C:\Users\EDY\Desktop\达人采集助手-portable-v2\app\MediaCrawler-main\media_platform\douyin\core.py", line 141, in start await self.get_creators_and_videos() File "C:\Users\EDY\Desktop\达人采集助手-portable-v2\app\MediaCrawler-main\media_platform\douyin\core.py", line 342, in get_creators_and_videos creator_work_counts = await asyncio.gather( ^^^^^^^^^^^^^^^^^^^^^ File "C:\Users\EDY\Desktop\达人采集助手-portable-v2\app\MediaCrawler-main\media_platform\douyin\core.py", line 306, in fetch_one_creator creator_info: Dict = await self.dy_client.get_user_info(user_id) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "C:\Users\EDY\Desktop\达人采集助手-portable-v2\app\MediaCrawler-main\media_platform\douyin\client.py", line 319, in get_user_info return await self.get(uri, params) ^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "C:\Users\EDY\Desktop\达人采集助手-portable-v2\app\MediaCrawler-main\media_platform\douyin\client.py", line 141, in get await self.__process_req_params(uri, params, headers) File "C:\Users\EDY\Desktop\达人采集助手-portable-v2\app\MediaCrawler-main\media_platform\douyin\client.py", line 120, in __process_req_params a_bogus = await get_a_bogus(uri, query_string, post_data, headers["User-Agent"], self.playwright_page) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "C:\Users\EDY\Desktop\达人采集助手-portable-v2\app\MediaCrawler-main\media_platform\douyin\help.py", line 81, in get_a_bogus return get_a_bogus_from_js(url, params, user_agent) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "C:\Users\EDY\Desktop\达人采集助手-portable-v2\app\MediaCrawler-main\media_platform\douyin\help.py", line 100, in get_a_bogus_from_js result = subprocess.run( ^^^^^^^^^^^^^^^ File "C:\Users\EDY\Desktop\达人采集助手-portable-v2\app\runtime\python\Lib\subprocess.py", line 548, in run with Popen(*popenargs, **kwargs) as process: ^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "C:\Users\EDY\Desktop\达人采集助手-portable-v2\app\runtime\python\Lib\subprocess.py", line 1026, in __init__ self._execute_child(args, executable, preexec_fn, close_fds, File "C:\Users\EDY\Desktop\达人采集助手-portable-v2\app\runtime\python\Lib\subprocess.py", line 1538, in _execute_child hp, ht, pid, tid = _winapi.CreateProcess(executable, args, ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ FileNotFoundError: [WinError 2] 系统找不到指定的文件。
杭州街拍 主页采集失败:2026-09-17 14:10:58 MediaCrawler INFO (core.py:77) - [DouYinCrawler] 使用CDP模式启动浏览器 2026-09-17 14:10:58 MediaCrawler INFO (cdp_browser.py:152) - [CDPBrowserManager] Connecting to existing browser on port 9222... 2026-09-17 14:10:58 MediaCrawler INFO (cdp_browser.py:155) - [CDPBrowserManager] Make sure remote debugging is enabled in your browser: chrome://inspect/#remote-debugging 2026-09-17 14:10:58 MediaCrawler INFO (cdp_browser.py:163) - [CDPBrowserManager] Waiting up to 60s for browser CDP connection... 2026-09-17 14:10:58 MediaCrawler INFO (cdp_browser.py:237) - [CDPBrowserManager] CDP port 9222 is accessible 2026-09-17 14:10:59 MediaCrawler INFO (cdp_browser.py:301) - [CDPBrowserManager] Got browser WebSocket URL: ws://localhost:9222/devtools/browser/7c03ef21-ce48-4e92-88b7-8abe72aed2f3 2026-09-17 14:10:59 MediaCrawler INFO (cdp_browser.py:329) - [CDPBrowserManager] Connecting to existing browser via discovered CDP (attempt 1/3): ws://localhost:9222/devtools/browser/7c03ef21-ce48-4e92-88b7-8abe72aed2f3 2026-09-17 14:10:59 MediaCrawler INFO (cdp_browser.py:333) - [CDPBrowserManager] If Chrome asks whether to allow remote debugging, accept it in the already logged-in browser window 2026-09-17 14:10:59 MediaCrawler INFO (cdp_browser.py:364) - [CDPBrowserManager] Successfully connected to browser 2026-09-17 14:10:59 MediaCrawler INFO (cdp_browser.py:365) - [CDPBrowserManager] Browser contexts count: 1 2026-09-17 14:10:59 MediaCrawler INFO (cdp_browser.py:390) - [CDPBrowserManager] Using existing browser context 2026-09-17 14:10:59 MediaCrawler INFO (cdp_browser.py:194) - [CDPBrowserManager] Successfully connected to existing browser 2026-09-17 14:10:59 MediaCrawler INFO (cdp_browser.py:422) - [CDPBrowserManager] Added anti-detection script: libs/stealth.min.js 2026-09-17 14:10:59 MediaCrawler INFO (core.py:450) - [DouYinCrawler] CDP浏览器信息: {'version': '152.0.7977.83', 'contexts_count': 1, 'debug_port': 9222, 'is_connected': True} 2026-09-17 14:11:02 MediaCrawler INFO (core.py:293) - [DouYinCrawler.get_creators_and_videos] Begin get douyin creators 2026-09-17 14:11:02 MediaCrawler INFO (core.py:294) - [DouYinCrawler.get_creators_and_videos] Parsing creator URLs... 2026-09-17 14:11:02 MediaCrawler INFO (core.py:339) - [DouYinCrawler.get_creators_and_videos] Creator concurrency: 2 2026-09-17 14:11:02 MediaCrawler INFO (core.py:301) - [DouYinCrawler.get_creators_and_videos] Parsed sec_user_id: MS4wLjABAAAA-7FuZwMllEVyWnCU2M9GSHsA69DSN7I9RkQb0GNsqzI from MS4wLjABAAAA-7FuZwMllEVyWnCU2M9GSHsA69DSN7I9RkQb0GNsqzI 2026-09-17 14:11:02 MediaCrawler INFO (core.py:301) - [DouYinCrawler.get_creators_and_videos] Parsed sec_user_id: MS4wLjABAAAA0YAn2hW4EoLtfkx_MphhVCWsSz8mDxGjKbfp30eBi6w from MS4wLjABAAAA0YAn2hW4EoLtfkx_MphhVCWsSz8mDxGjKbfp30eBi6w 2026-09-17 14:11:02 MediaCrawler INFO (core.py:301) - [DouYinCrawler.get_creators_and_videos] Parsed sec_user_id: MS4wLjABAAAAc5o31_ktyjVcEvUgmjFOzjCf9Rk50xNE8qeXlgICr0I from MS4wLjABAAAAc5o31_ktyjVcEvUgmjFOzjCf9Rk50xNE8qeXlgICr0I 2026-09-17 14:11:02 MediaCrawler INFO (cdp_browser.py:490) - [CDPBrowserManager] Browser connection disconnected 2026-09-17 14:11:02 MediaCrawler INFO (cdp_browser.py:507) - [CDPBrowserManager] Connected to existing browser, skipping process cleanup 2026-09-17 14:11:02 MediaCrawler INFO (core.py:301) - [DouYinCrawler.get_creators_and_videos] Parsed sec_user_id: MS4wLjABAAAACI9fWKcbtZlbkEtZ3yOvKhtn5vMjEKSezARi3rqRny_diF1fqCXIbeQs0C1qhrbH from MS4wLjABAAAACI9fWKcbtZlbkEtZ3yOvKhtn5vMjEKSezARi3rqRny_diF1fqCXIbeQs0C1qhrbH 2026-09-17 14:11:02 MediaCrawler INFO (core.py:301) - [DouYinCrawler.get_creators_and_videos] Parsed sec_user_id: MS4wLjABAAAAvpAxdIKMcaXNk6he8H1FOSCjOXe23oonwL2lr64C_h8 from MS4wLjABAAAAvpAxdIKMcaXNk6he8H1FOSCjOXe23oonwL2lr64C_h8 Traceback (most recent call last): File "C:\Users\EDY\Documents\流程\kol-crm-next\scripts\run-mediacrawler.py", line 21, in <module> runpy.run_path(os.path.join(crawler_root, "main.py"), run_name="__main__") File "<frozen runpy>", line 291, in run_path File "<frozen runpy>", line 98, in _run_module_code File "<frozen runpy>", line 88, in _run_code File "C:\Users\EDY\Desktop\达人采集助手-portable-v3\达人采集助手-portable-v3\app\MediaCrawler-main\main.py", line 174, in <module> run(main, async_cleanup, cleanup_timeout_seconds=15.0, on_first_interrupt=_force_stop) File "C:\Users\EDY\Desktop\达人采集助手-portable-v3\达人采集助手-portable-v3\app\MediaCrawler-main\tools\app_runner.py", line 109, in run asyncio.run(_runner()) File "C:\Users\EDY\Desktop\达人采集助手-portable-v3\达人采集助手-portable-v3\app\runtime\python\Lib\asyncio\runners.py", line 190, in run return runner.run(main) ^^^^^^^^^^^^^^^^ File "C:\Users\EDY\Desktop\达人采集助手-portable-v3\达人采集助手-portable-v3\app\runtime\python\Lib\asyncio\runners.py", line 118, in run return self._loop.run_until_complete(task) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "C:\Users\EDY\Desktop\达人采集助手-portable-v3\达人采集助手-portable-v3\app\runtime\python\Lib\asyncio\base_events.py", line 654, in run_until_complete return future.result() ^^^^^^^^^^^^^^^ File "C:\Users\EDY\Desktop\达人采集助手-portable-v3\达人采集助手-portable-v3\app\MediaCrawler-main\tools\app_runner.py", line 96, in _runner await app_main() File "C:\Users\EDY\Desktop\达人采集助手-portable-v3\达人采集助手-portable-v3\app\MediaCrawler-main\main.py", line 114, in main await crawler.start() File "C:\Users\EDY\Desktop\达人采集助手-portable-v3\达人采集助手-portable-v3\app\MediaCrawler-main\media_platform\douyin\core.py", line 141, in start await self.get_creators_and_videos() File "C:\Users\EDY\Desktop\达人采集助手-portable-v3\达人采集助手-portable-v3\app\MediaCrawler-main\media_platform\douyin\core.py", line 342, in get_creators_and_videos creator_work_counts = await asyncio.gather( ^^^^^^^^^^^^^^^^^^^^^ File "C:\Users\EDY\Desktop\达人采集助手-portable-v3\达人采集助手-portable-v3\app\MediaCrawler-main\media_platform\douyin\core.py", line 306, in fetch_one_creator creator_info: Dict = await self.dy_client.get_user_info(user_id) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "C:\Users\EDY\Desktop\达人采集助手-portable-v3\达人采集助手-portable-v3\app\MediaCrawler-main\media_platform\douyin\client.py", line 319, in get_user_info return await self.get(uri, params) ^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "C:\Users\EDY\Desktop\达人采集助手-portable-v3\达人采集助手-portable-v3\app\MediaCrawler-main\media_platform\douyin\client.py", line 141, in get await self.__process_req_params(uri, params, headers) File "C:\Users\EDY\Desktop\达人采集助手-portable-v3\达人采集助手-portable-v3\app\MediaCrawler-main\media_platform\douyin\client.py", line 120, in __process_req_params a_bogus = await get_a_bogus(uri, query_string, post_data, headers["User-Agent"], self.playwright_page) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "C:\Users\EDY\Desktop\达人采集助手-portable-v3\达人采集助手-portable-v3\app\MediaCrawler-main\media_platform\douyin\help.py", line 81, in get_a_bogus return get_a_bogus_from_js(url, params, user_agent) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "C:\Users\EDY\Desktop\达人采集助手-portable-v3\达人采集助手-portable-v3\app\MediaCrawler-main\media_platform\douyin\help.py", line 100, in get_a_bogus_from_js result = subprocess.run( ^^^^^^^^^^^^^^^ File "C:\Users\EDY\Desktop\达人采集助手-portable-v3\达人采集助手-portable-v3\app\runtime\python\Lib\subprocess.py", line 548, in run with Popen(*popenargs, **kwargs) as process: ^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "C:\Users\EDY\Desktop\达人采集助手-portable-v3\达人采集助手-portable-v3\app\runtime\python\Lib\subprocess.py", line 1026, in __init__ self._execute_child(args, executable, preexec_fn, close_fds, File "C:\Users\EDY\Desktop\达人采集助手-portable-v3\达人采集助手-portable-v3\app\runtime\python\Lib\subprocess.py", line 1538, in _execute_child hp, ht, pid, tid = _winapi.CreateProcess(executable, args, ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ FileNotFoundError: [WinError 2] 系统找不到指定的文件。
主页样本已补齐:最近3条作品中近1个月有更新;AI作品画像:maybe,主页仅3条样本,其中2条含警校生/藏蓝青春线索(毕业照、少年感文案),可推测作者本人为警校生,但样本量过少、身份稳定性不足,且另有一条汉服古风内容偏离主线,无法确认持续分享警校/公安日常,建议补采后人工确认。;存在目标身份线索,但 AI 证据不足:有真实在职辅警、基层公安民警、警校生或公安院校在读学生个人账号相关身份/场景线索,非精选时仍保留到待选库;规则提示:蜀黍家·警校/公安达人模板精选至少需要查看 6 条主页作品;当前样本不足,只能进入待选。;画像证据不足,等待补采或人工确认;出现点赞超过2000的作品;主页样本平均点赞 8764,中位点赞 1700,最高点赞 24562;近1个月未发现爆款;数据指标已记录,精选阶段不再重复打开主页
小羊不难过 主页采集失败:2026-09-17 14:10:58 MediaCrawler INFO (core.py:77) - [DouYinCrawler] 使用CDP模式启动浏览器 2026-09-17 14:10:58 MediaCrawler INFO (cdp_browser.py:152) - [CDPBrowserManager] Connecting to existing browser on port 9222... 2026-09-17 14:10:58 MediaCrawler INFO (cdp_browser.py:155) - [CDPBrowserManager] Make sure remote debugging is enabled in your browser: chrome://inspect/#remote-debugging 2026-09-17 14:10:58 MediaCrawler INFO (cdp_browser.py:163) - [CDPBrowserManager] Waiting up to 60s for browser CDP connection... 2026-09-17 14:10:58 MediaCrawler INFO (cdp_browser.py:237) - [CDPBrowserManager] CDP port 9222 is accessible 2026-09-17 14:10:59 MediaCrawler INFO (cdp_browser.py:301) - [CDPBrowserManager] Got browser WebSocket URL: ws://localhost:9222/devtools/browser/7c03ef21-ce48-4e92-88b7-8abe72aed2f3 2026-09-17 14:10:59 MediaCrawler INFO (cdp_browser.py:329) - [CDPBrowserManager] Connecting to existing browser via discovered CDP (attempt 1/3): ws://localhost:9222/devtools/browser/7c03ef21-ce48-4e92-88b7-8abe72aed2f3 2026-09-17 14:10:59 MediaCrawler INFO (cdp_browser.py:333) - [CDPBrowserManager] If Chrome asks whether to allow remote debugging, accept it in the already logged-in browser window 2026-09-17 14:10:59 MediaCrawler INFO (cdp_browser.py:364) - [CDPBrowserManager] Successfully connected to browser 2026-09-17 14:10:59 MediaCrawler INFO (cdp_browser.py:365) - [CDPBrowserManager] Browser contexts count: 1 2026-09-17 14:10:59 MediaCrawler INFO (cdp_browser.py:390) - [CDPBrowserManager] Using existing browser context 2026-09-17 14:10:59 MediaCrawler INFO (cdp_browser.py:194) - [CDPBrowserManager] Successfully connected to existing browser 2026-09-17 14:10:59 MediaCrawler INFO (cdp_browser.py:422) - [CDPBrowserManager] Added anti-detection script: libs/stealth.min.js 2026-09-17 14:10:59 MediaCrawler INFO (core.py:450) - [DouYinCrawler] CDP浏览器信息: {'version': '152.0.7977.83', 'contexts_count': 1, 'debug_port': 9222, 'is_connected': True} 2026-09-17 14:11:02 MediaCrawler INFO (core.py:293) - [DouYinCrawler.get_creators_and_videos] Begin get douyin creators 2026-09-17 14:11:02 MediaCrawler INFO (core.py:294) - [DouYinCrawler.get_creators_and_videos] Parsing creator URLs... 2026-09-17 14:11:02 MediaCrawler INFO (core.py:339) - [DouYinCrawler.get_creators_and_videos] Creator concurrency: 2 2026-09-17 14:11:02 MediaCrawler INFO (core.py:301) - [DouYinCrawler.get_creators_and_videos] Parsed sec_user_id: MS4wLjABAAAA-7FuZwMllEVyWnCU2M9GSHsA69DSN7I9RkQb0GNsqzI from MS4wLjABAAAA-7FuZwMllEVyWnCU2M9GSHsA69DSN7I9RkQb0GNsqzI 2026-09-17 14:11:02 MediaCrawler INFO (core.py:301) - [DouYinCrawler.get_creators_and_videos] Parsed sec_user_id: MS4wLjABAAAA0YAn2hW4EoLtfkx_MphhVCWsSz8mDxGjKbfp30eBi6w from MS4wLjABAAAA0YAn2hW4EoLtfkx_MphhVCWsSz8mDxGjKbfp30eBi6w 2026-09-17 14:11:02 MediaCrawler INFO (core.py:301) - [DouYinCrawler.get_creators_and_videos] Parsed sec_user_id: MS4wLjABAAAAc5o31_ktyjVcEvUgmjFOzjCf9Rk50xNE8qeXlgICr0I from MS4wLjABAAAAc5o31_ktyjVcEvUgmjFOzjCf9Rk50xNE8qeXlgICr0I 2026-09-17 14:11:02 MediaCrawler INFO (cdp_browser.py:490) - [CDPBrowserManager] Browser connection disconnected 2026-09-17 14:11:02 MediaCrawler INFO (cdp_browser.py:507) - [CDPBrowserManager] Connected to existing browser, skipping process cleanup 2026-09-17 14:11:02 MediaCrawler INFO (core.py:301) - [DouYinCrawler.get_creators_and_videos] Parsed sec_user_id: MS4wLjABAAAACI9fWKcbtZlbkEtZ3yOvKhtn5vMjEKSezARi3rqRny_diF1fqCXIbeQs0C1qhrbH from MS4wLjABAAAACI9fWKcbtZlbkEtZ3yOvKhtn5vMjEKSezARi3rqRny_diF1fqCXIbeQs0C1qhrbH 2026-09-17 14:11:02 MediaCrawler INFO (core.py:301) - [DouYinCrawler.get_creators_and_videos] Parsed sec_user_id: MS4wLjABAAAAvpAxdIKMcaXNk6he8H1FOSCjOXe23oonwL2lr64C_h8 from MS4wLjABAAAAvpAxdIKMcaXNk6he8H1FOSCjOXe23oonwL2lr64C_h8 Traceback (most recent call last): File "C:\Users\EDY\Documents\流程\kol-crm-next\scripts\run-mediacrawler.py", line 21, in <module> runpy.run_path(os.path.join(crawler_root, "main.py"), run_name="__main__") File "<frozen runpy>", line 291, in run_path File "<frozen runpy>", line 98, in _run_module_code File "<frozen runpy>", line 88, in _run_code File "C:\Users\EDY\Desktop\达人采集助手-portable-v3\达人采集助手-portable-v3\app\MediaCrawler-main\main.py", line 174, in <module> run(main, async_cleanup, cleanup_timeout_seconds=15.0, on_first_interrupt=_force_stop) File "C:\Users\EDY\Desktop\达人采集助手-portable-v3\达人采集助手-portable-v3\app\MediaCrawler-main\tools\app_runner.py", line 109, in run asyncio.run(_runner()) File "C:\Users\EDY\Desktop\达人采集助手-portable-v3\达人采集助手-portable-v3\app\runtime\python\Lib\asyncio\runners.py", line 190, in run return runner.run(main) ^^^^^^^^^^^^^^^^ File "C:\Users\EDY\Desktop\达人采集助手-portable-v3\达人采集助手-portable-v3\app\runtime\python\Lib\asyncio\runners.py", line 118, in run return self._loop.run_until_complete(task) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "C:\Users\EDY\Desktop\达人采集助手-portable-v3\达人采集助手-portable-v3\app\runtime\python\Lib\asyncio\base_events.py", line 654, in run_until_complete return future.result() ^^^^^^^^^^^^^^^ File "C:\Users\EDY\Desktop\达人采集助手-portable-v3\达人采集助手-portable-v3\app\MediaCrawler-main\tools\app_runner.py", line 96, in _runner await app_main() File "C:\Users\EDY\Desktop\达人采集助手-portable-v3\达人采集助手-portable-v3\app\MediaCrawler-main\main.py", line 114, in main await crawler.start() File "C:\Users\EDY\Desktop\达人采集助手-portable-v3\达人采集助手-portable-v3\app\MediaCrawler-main\media_platform\douyin\core.py", line 141, in start await self.get_creators_and_videos() File "C:\Users\EDY\Desktop\达人采集助手-portable-v3\达人采集助手-portable-v3\app\MediaCrawler-main\media_platform\douyin\core.py", line 342, in get_creators_and_videos creator_work_counts = await asyncio.gather( ^^^^^^^^^^^^^^^^^^^^^ File "C:\Users\EDY\Desktop\达人采集助手-portable-v3\达人采集助手-portable-v3\app\MediaCrawler-main\media_platform\douyin\core.py", line 306, in fetch_one_creator creator_info: Dict = await self.dy_client.get_user_info(user_id) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "C:\Users\EDY\Desktop\达人采集助手-portable-v3\达人采集助手-portable-v3\app\MediaCrawler-main\media_platform\douyin\client.py", line 319, in get_user_info return await self.get(uri, params) ^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "C:\Users\EDY\Desktop\达人采集助手-portable-v3\达人采集助手-portable-v3\app\MediaCrawler-main\media_platform\douyin\client.py", line 141, in get await self.__process_req_params(uri, params, headers) File "C:\Users\EDY\Desktop\达人采集助手-portable-v3\达人采集助手-portable-v3\app\MediaCrawler-main\media_platform\douyin\client.py", line 120, in __process_req_params a_bogus = await get_a_bogus(uri, query_string, post_data, headers["User-Agent"], self.playwright_page) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "C:\Users\EDY\Desktop\达人采集助手-portable-v3\达人采集助手-portable-v3\app\MediaCrawler-main\media_platform\douyin\help.py", line 81, in get_a_bogus return get_a_bogus_from_js(url, params, user_agent) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "C:\Users\EDY\Desktop\达人采集助手-portable-v3\达人采集助手-portable-v3\app\MediaCrawler-main\media_platform\douyin\help.py", line 100, in get_a_bogus_from_js result = subprocess.run( ^^^^^^^^^^^^^^^ File "C:\Users\EDY\Desktop\达人采集助手-portable-v3\达人采集助手-portable-v3\app\runtime\python\Lib\subprocess.py", line 548, in run with Popen(*popenargs, **kwargs) as process: ^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "C:\Users\EDY\Desktop\达人采集助手-portable-v3\达人采集助手-portable-v3\app\runtime\python\Lib\subprocess.py", line 1026, in __init__ self._execute_child(args, executable, preexec_fn, close_fds, File "C:\Users\EDY\Desktop\达人采集助手-portable-v3\达人采集助手-portable-v3\app\runtime\python\Lib\subprocess.py", line 1538, in _execute_child hp, ht, pid, tid = _winapi.CreateProcess(executable, args, ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ FileNotFoundError: [WinError 2] 系统找不到指定的文件。
Leo‘ 主页采集失败:2026-09-17 16:17:49 MediaCrawler INFO (core.py:77) - [DouYinCrawler] 使用CDP模式启动浏览器 2026-09-17 16:17:49 MediaCrawler INFO (cdp_browser.py:152) - [CDPBrowserManager] Connecting to existing browser on port 9222... 2026-09-17 16:17:49 MediaCrawler INFO (cdp_browser.py:155) - [CDPBrowserManager] Make sure remote debugging is enabled in your browser: chrome://inspect/#remote-debugging 2026-09-17 16:17:49 MediaCrawler INFO (cdp_browser.py:163) - [CDPBrowserManager] Waiting up to 60s for browser CDP connection... 2026-09-17 16:17:49 MediaCrawler INFO (cdp_browser.py:237) - [CDPBrowserManager] CDP port 9222 is accessible 2026-09-17 16:17:50 MediaCrawler INFO (cdp_browser.py:301) - [CDPBrowserManager] Got browser WebSocket URL: ws://localhost:9222/devtools/browser/b6166241-0447-4b83-98ca-78fdbeb71daf 2026-09-17 16:17:50 MediaCrawler INFO (cdp_browser.py:329) - [CDPBrowserManager] Connecting to existing browser via discovered CDP (attempt 1/3): ws://localhost:9222/devtools/browser/b6166241-0447-4b83-98ca-78fdbeb71daf 2026-09-17 16:17:50 MediaCrawler INFO (cdp_browser.py:333) - [CDPBrowserManager] If Chrome asks whether to allow remote debugging, accept it in the already logged-in browser window 2026-09-17 16:17:50 MediaCrawler INFO (cdp_browser.py:364) - [CDPBrowserManager] Successfully connected to browser 2026-09-17 16:17:50 MediaCrawler INFO (cdp_browser.py:365) - [CDPBrowserManager] Browser contexts count: 1 2026-09-17 16:17:50 MediaCrawler INFO (cdp_browser.py:390) - [CDPBrowserManager] Using existing browser context 2026-09-17 16:17:50 MediaCrawler INFO (cdp_browser.py:194) - [CDPBrowserManager] Successfully connected to existing browser 2026-09-17 16:17:51 MediaCrawler INFO (cdp_browser.py:422) - [CDPBrowserManager] Added anti-detection script: libs/stealth.min.js 2026-09-17 16:17:51 MediaCrawler INFO (core.py:450) - [DouYinCrawler] CDP浏览器信息: {'version': '152.0.7977.83', 'contexts_count': 1, 'debug_port': 9222, 'is_connected': True} 2026-09-17 16:17:54 MediaCrawler INFO (core.py:293) - [DouYinCrawler.get_creators_and_videos] Begin get douyin creators 2026-09-17 16:17:54 MediaCrawler INFO (core.py:294) - [DouYinCrawler.get_creators_and_videos] Parsing creator URLs... 2026-09-17 16:17:54 MediaCrawler INFO (core.py:339) - [DouYinCrawler.get_creators_and_videos] Creator concurrency: 2 2026-09-17 16:17:54 MediaCrawler INFO (core.py:301) - [DouYinCrawler.get_creators_and_videos] Parsed sec_user_id: MS4wLjABAAAA18r2rGm6-Fy4pWOBsuMKjiyaL00HVb8OXByyIJQefEjT2SSeRkCjNE9sUUiD5-QW from MS4wLjABAAAA18r2rGm6-Fy4pWOBsuMKjiyaL00HVb8OXByyIJQefEjT2SSeRkCjNE9sUUiD5-QW 2026-09-17 16:17:54 MediaCrawler INFO (core.py:301) - [DouYinCrawler.get_creators_and_videos] Parsed sec_user_id: MS4wLjABAAAA6yTSKg65reefWJZ1z9Ru9Fp2WheNP5ASIWlxJs4IYu3ZuatbcbNtImRNFQsZQkbV from MS4wLjABAAAA6yTSKg65reefWJZ1z9Ru9Fp2WheNP5ASIWlxJs4IYu3ZuatbcbNtImRNFQsZQkbV 2026-09-17 16:17:54 MediaCrawler INFO (core.py:301) - [DouYinCrawler.get_creators_and_videos] Parsed sec_user_id: MS4wLjABAAAAp2_PotlQmQPekOddQvZmlyk6ViEmyjlEwWyJqX9piNhSSD9e8LQHfXWneOZFZvPX from MS4wLjABAAAAp2_PotlQmQPekOddQvZmlyk6ViEmyjlEwWyJqX9piNhSSD9e8LQHfXWneOZFZvPX 2026-09-17 16:17:54 MediaCrawler INFO (cdp_browser.py:490) - [CDPBrowserManager] Browser connection disconnected 2026-09-17 16:17:54 MediaCrawler INFO (cdp_browser.py:507) - [CDPBrowserManager] Connected to existing browser, skipping process cleanup 2026-09-17 16:17:54 MediaCrawler INFO (core.py:301) - [DouYinCrawler.get_creators_and_videos] Parsed sec_user_id: MS4wLjABAAAAtGmbhJG4JeO_tTYOltQxkIrgfMmzZaTuVQeofYJ_V0M from MS4wLjABAAAAtGmbhJG4JeO_tTYOltQxkIrgfMmzZaTuVQeofYJ_V0M Traceback (most recent call last): File "C:\Users\EDY\Desktop\达人采集助手-portable-v2\app\scripts\run-mediacrawler.py", line 21, in <module> runpy.run_path(os.path.join(crawler_root, "main.py"), run_name="__main__") File "<frozen runpy>", line 291, in run_path File "<frozen runpy>", line 98, in _run_module_code File "<frozen runpy>", line 88, in _run_code File "C:\Users\EDY\Desktop\达人采集助手-portable-v2\app\MediaCrawler-main\main.py", line 174, in <module> run(main, async_cleanup, cleanup_timeout_seconds=15.0, on_first_interrupt=_force_stop) File "C:\Users\EDY\Desktop\达人采集助手-portable-v2\app\MediaCrawler-main\tools\app_runner.py", line 109, in run asyncio.run(_runner()) File "C:\Users\EDY\Desktop\达人采集助手-portable-v2\app\runtime\python\Lib\asyncio\runners.py", line 190, in run return runner.run(main) ^^^^^^^^^^^^^^^^ File "C:\Users\EDY\Desktop\达人采集助手-portable-v2\app\runtime\python\Lib\asyncio\runners.py", line 118, in run return self._loop.run_until_complete(task) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "C:\Users\EDY\Desktop\达人采集助手-portable-v2\app\runtime\python\Lib\asyncio\base_events.py", line 654, in run_until_complete return future.result() ^^^^^^^^^^^^^^^ File "C:\Users\EDY\Desktop\达人采集助手-portable-v2\app\MediaCrawler-main\tools\app_runner.py", line 96, in _runner await app_main() File "C:\Users\EDY\Desktop\达人采集助手-portable-v2\app\MediaCrawler-main\main.py", line 114, in main await crawler.start() File "C:\Users\EDY\Desktop\达人采集助手-portable-v2\app\MediaCrawler-main\media_platform\douyin\core.py", line 141, in start await self.get_creators_and_videos() File "C:\Users\EDY\Desktop\达人采集助手-portable-v2\app\MediaCrawler-main\media_platform\douyin\core.py", line 342, in get_creators_and_videos creator_work_counts = await asyncio.gather( ^^^^^^^^^^^^^^^^^^^^^ File "C:\Users\EDY\Desktop\达人采集助手-portable-v2\app\MediaCrawler-main\media_platform\douyin\core.py", line 306, in fetch_one_creator creator_info: Dict = await self.dy_client.get_user_info(user_id) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "C:\Users\EDY\Desktop\达人采集助手-portable-v2\app\MediaCrawler-main\media_platform\douyin\client.py", line 319, in get_user_info return await self.get(uri, params) ^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "C:\Users\EDY\Desktop\达人采集助手-portable-v2\app\MediaCrawler-main\media_platform\douyin\client.py", line 141, in get await self.__process_req_params(uri, params, headers) File "C:\Users\EDY\Desktop\达人采集助手-portable-v2\app\MediaCrawler-main\media_platform\douyin\client.py", line 120, in __process_req_params a_bogus = await get_a_bogus(uri, query_string, post_data, headers["User-Agent"], self.playwright_page) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "C:\Users\EDY\Desktop\达人采集助手-portable-v2\app\MediaCrawler-main\media_platform\douyin\help.py", line 81, in get_a_bogus return get_a_bogus_from_js(url, params, user_agent) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "C:\Users\EDY\Desktop\达人采集助手-portable-v2\app\MediaCrawler-main\media_platform\douyin\help.py", line 100, in get_a_bogus_from_js result = subprocess.run( ^^^^^^^^^^^^^^^ File "C:\Users\EDY\Desktop\达人采集助手-portable-v2\app\runtime\python\Lib\subprocess.py", line 548, in run with Popen(*popenargs, **kwargs) as process: ^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "C:\Users\EDY\Desktop\达人采集助手-portable-v2\app\runtime\python\Lib\subprocess.py", line 1026, in __init__ self._execute_child(args, executable, preexec_fn, close_fds, File "C:\Users\EDY\Desktop\达人采集助手-portable-v2\app\runtime\python\Lib\subprocess.py", line 1538, in _execute_child hp, ht, pid, tid = _winapi.CreateProcess(executable, args, ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ FileNotFoundError: [WinError 2] 系统找不到指定的文件。
慢慢刷 主页采集失败:2026-09-17 16:32:06 MediaCrawler INFO (core.py:77) - [DouYinCrawler] 使用CDP模式启动浏览器 2026-09-17 16:32:06 MediaCrawler INFO (cdp_browser.py:152) - [CDPBrowserManager] Connecting to existing browser on port 9222... 2026-09-17 16:32:06 MediaCrawler INFO (cdp_browser.py:155) - [CDPBrowserManager] Make sure remote debugging is enabled in your browser: chrome://inspect/#remote-debugging 2026-09-17 16:32:06 MediaCrawler INFO (cdp_browser.py:163) - [CDPBrowserManager] Waiting up to 60s for browser CDP connection... 2026-09-17 16:32:06 MediaCrawler INFO (cdp_browser.py:237) - [CDPBrowserManager] CDP port 9222 is accessible 2026-09-17 16:32:07 MediaCrawler INFO (cdp_browser.py:301) - [CDPBrowserManager] Got browser WebSocket URL: ws://localhost:9222/devtools/browser/b6166241-0447-4b83-98ca-78fdbeb71daf 2026-09-17 16:32:07 MediaCrawler INFO (cdp_browser.py:329) - [CDPBrowserManager] Connecting to existing browser via discovered CDP (attempt 1/3): ws://localhost:9222/devtools/browser/b6166241-0447-4b83-98ca-78fdbeb71daf 2026-09-17 16:32:07 MediaCrawler INFO (cdp_browser.py:333) - [CDPBrowserManager] If Chrome asks whether to allow remote debugging, accept it in the already logged-in browser window 2026-09-17 16:32:08 MediaCrawler INFO (cdp_browser.py:364) - [CDPBrowserManager] Successfully connected to browser 2026-09-17 16:32:08 MediaCrawler INFO (cdp_browser.py:365) - [CDPBrowserManager] Browser contexts count: 1 2026-09-17 16:32:08 MediaCrawler INFO (cdp_browser.py:390) - [CDPBrowserManager] Using existing browser context 2026-09-17 16:32:08 MediaCrawler INFO (cdp_browser.py:194) - [CDPBrowserManager] Successfully connected to existing browser 2026-09-17 16:32:08 MediaCrawler INFO (cdp_browser.py:422) - [CDPBrowserManager] Added anti-detection script: libs/stealth.min.js 2026-09-17 16:32:08 MediaCrawler INFO (core.py:450) - [DouYinCrawler] CDP浏览器信息: {'version': '152.0.7977.83', 'contexts_count': 1, 'debug_port': 9222, 'is_connected': True} 2026-09-17 16:32:09 MediaCrawler INFO (core.py:293) - [DouYinCrawler.get_creators_and_videos] Begin get douyin creators 2026-09-17 16:32:09 MediaCrawler INFO (core.py:294) - [DouYinCrawler.get_creators_and_videos] Parsing creator URLs... 2026-09-17 16:32:09 MediaCrawler INFO (core.py:339) - [DouYinCrawler.get_creators_and_videos] Creator concurrency: 2 2026-09-17 16:32:09 MediaCrawler INFO (core.py:301) - [DouYinCrawler.get_creators_and_videos] Parsed sec_user_id: MS4wLjABAAAABkqrnqUzQnYv9Bvc8H2B6CZYc7SQMjDxScMpw3d18KA_554bLTOHgm2LpbMX8JWI from MS4wLjABAAAABkqrnqUzQnYv9Bvc8H2B6CZYc7SQMjDxScMpw3d18KA_554bLTOHgm2LpbMX8JWI 2026-09-17 16:32:09 MediaCrawler INFO (core.py:301) - [DouYinCrawler.get_creators_and_videos] Parsed sec_user_id: MS4wLjABAAAAexFpM7HqDksih6OlKdppTTEcyvdXFPDNOZyNRAatvKA from MS4wLjABAAAAexFpM7HqDksih6OlKdppTTEcyvdXFPDNOZyNRAatvKA 2026-09-17 16:32:09 MediaCrawler INFO (core.py:301) - [DouYinCrawler.get_creators_and_videos] Parsed sec_user_id: MS4wLjABAAAAFsF3Anolfk5DcVAWJrXZbyxwgqi4vZ4xJy4UtuG6vMX1-pezz0oJm2BeC1QxvMzv from MS4wLjABAAAAFsF3Anolfk5DcVAWJrXZbyxwgqi4vZ4xJy4UtuG6vMX1-pezz0oJm2BeC1QxvMzv 2026-09-17 16:32:09 MediaCrawler INFO (cdp_browser.py:490) - [CDPBrowserManager] Browser connection disconnected 2026-09-17 16:32:09 MediaCrawler INFO (cdp_browser.py:507) - [CDPBrowserManager] Connected to existing browser, skipping process cleanup 2026-09-17 16:32:09 MediaCrawler INFO (core.py:301) - [DouYinCrawler.get_creators_and_videos] Parsed sec_user_id: MS4wLjABAAAAI3Q32U3Y-_VBcSYDbhYk6hzup9SytpGZHe50rncdOB0 from MS4wLjABAAAAI3Q32U3Y-_VBcSYDbhYk6hzup9SytpGZHe50rncdOB0 2026-09-17 16:32:09 MediaCrawler INFO (core.py:301) - [DouYinCrawler.get_creators_and_videos] Parsed sec_user_id: MS4wLjABAAAAJ1hIJ93r2PJqj9aQEtYxb59XpFCQU2KK_Wi2ZybDQ08 from MS4wLjABAAAAJ1hIJ93r2PJqj9aQEtYxb59XpFCQU2KK_Wi2ZybDQ08 Traceback (most recent call last): File "C:\Users\EDY\Desktop\达人采集助手-portable-v2\app\scripts\run-mediacrawler.py", line 21, in <module> runpy.run_path(os.path.join(crawler_root, "main.py"), run_name="__main__") File "<frozen runpy>", line 291, in run_path File "<frozen runpy>", line 98, in _run_module_code File "<frozen runpy>", line 88, in _run_code File "C:\Users\EDY\Desktop\达人采集助手-portable-v2\app\MediaCrawler-main\main.py", line 174, in <module> run(main, async_cleanup, cleanup_timeout_seconds=15.0, on_first_interrupt=_force_stop) File "C:\Users\EDY\Desktop\达人采集助手-portable-v2\app\MediaCrawler-main\tools\app_runner.py", line 109, in run asyncio.run(_runner()) File "C:\Users\EDY\Desktop\达人采集助手-portable-v2\app\runtime\python\Lib\asyncio\runners.py", line 190, in run return runner.run(main) ^^^^^^^^^^^^^^^^ File "C:\Users\EDY\Desktop\达人采集助手-portable-v2\app\runtime\python\Lib\asyncio\runners.py", line 118, in run return self._loop.run_until_complete(task) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "C:\Users\EDY\Desktop\达人采集助手-portable-v2\app\runtime\python\Lib\asyncio\base_events.py", line 654, in run_until_complete return future.result() ^^^^^^^^^^^^^^^ File "C:\Users\EDY\Desktop\达人采集助手-portable-v2\app\MediaCrawler-main\tools\app_runner.py", line 96, in _runner await app_main() File "C:\Users\EDY\Desktop\达人采集助手-portable-v2\app\MediaCrawler-main\main.py", line 114, in main await crawler.start() File "C:\Users\EDY\Desktop\达人采集助手-portable-v2\app\MediaCrawler-main\media_platform\douyin\core.py", line 141, in start await self.get_creators_and_videos() File "C:\Users\EDY\Desktop\达人采集助手-portable-v2\app\MediaCrawler-main\media_platform\douyin\core.py", line 342, in get_creators_and_videos creator_work_counts = await asyncio.gather( ^^^^^^^^^^^^^^^^^^^^^ File "C:\Users\EDY\Desktop\达人采集助手-portable-v2\app\MediaCrawler-main\media_platform\douyin\core.py", line 306, in fetch_one_creator creator_info: Dict = await self.dy_client.get_user_info(user_id) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "C:\Users\EDY\Desktop\达人采集助手-portable-v2\app\MediaCrawler-main\media_platform\douyin\client.py", line 319, in get_user_info return await self.get(uri, params) ^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "C:\Users\EDY\Desktop\达人采集助手-portable-v2\app\MediaCrawler-main\media_platform\douyin\client.py", line 141, in get await self.__process_req_params(uri, params, headers) File "C:\Users\EDY\Desktop\达人采集助手-portable-v2\app\MediaCrawler-main\media_platform\douyin\client.py", line 120, in __process_req_params a_bogus = await get_a_bogus(uri, query_string, post_data, headers["User-Agent"], self.playwright_page) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "C:\Users\EDY\Desktop\达人采集助手-portable-v2\app\MediaCrawler-main\media_platform\douyin\help.py", line 81, in get_a_bogus return get_a_bogus_from_js(url, params, user_agent) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "C:\Users\EDY\Desktop\达人采集助手-portable-v2\app\MediaCrawler-main\media_platform\douyin\help.py", line 100, in get_a_bogus_from_js result = subprocess.run( ^^^^^^^^^^^^^^^ File "C:\Users\EDY\Desktop\达人采集助手-portable-v2\app\runtime\python\Lib\subprocess.py", line 548, in run with Popen(*popenargs, **kwargs) as process: ^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "C:\Users\EDY\Desktop\达人采集助手-portable-v2\app\runtime\python\Lib\subprocess.py", line 1026, in __init__ self._execute_child(args, executable, preexec_fn, close_fds, File "C:\Users\EDY\Desktop\达人采集助手-portable-v2\app\runtime\python\Lib\subprocess.py", line 1538, in _execute_child hp, ht, pid, tid = _winapi.CreateProcess(executable, args, ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ FileNotFoundError: [WinError 2] 系统找不到指定的文件。
火仔正在拍 主页采集失败:2026-09-17 16:31:53 MediaCrawler INFO (core.py:77) - [DouYinCrawler] 使用CDP模式启动浏览器 2026-09-17 16:31:53 MediaCrawler INFO (cdp_browser.py:152) - [CDPBrowserManager] Connecting to existing browser on port 9222... 2026-09-17 16:31:53 MediaCrawler INFO (cdp_browser.py:155) - [CDPBrowserManager] Make sure remote debugging is enabled in your browser: chrome://inspect/#remote-debugging 2026-09-17 16:31:53 MediaCrawler INFO (cdp_browser.py:163) - [CDPBrowserManager] Waiting up to 60s for browser CDP connection... 2026-09-17 16:31:53 MediaCrawler INFO (cdp_browser.py:237) - [CDPBrowserManager] CDP port 9222 is accessible 2026-09-17 16:31:53 MediaCrawler INFO (cdp_browser.py:301) - [CDPBrowserManager] Got browser WebSocket URL: ws://localhost:9222/devtools/browser/b6166241-0447-4b83-98ca-78fdbeb71daf 2026-09-17 16:31:53 MediaCrawler INFO (cdp_browser.py:329) - [CDPBrowserManager] Connecting to existing browser via discovered CDP (attempt 1/3): ws://localhost:9222/devtools/browser/b6166241-0447-4b83-98ca-78fdbeb71daf 2026-09-17 16:31:53 MediaCrawler INFO (cdp_browser.py:333) - [CDPBrowserManager] If Chrome asks whether to allow remote debugging, accept it in the already logged-in browser window 2026-09-17 16:31:54 MediaCrawler INFO (cdp_browser.py:364) - [CDPBrowserManager] Successfully connected to browser 2026-09-17 16:31:54 MediaCrawler INFO (cdp_browser.py:365) - [CDPBrowserManager] Browser contexts count: 1 2026-09-17 16:31:54 MediaCrawler INFO (cdp_browser.py:390) - [CDPBrowserManager] Using existing browser context 2026-09-17 16:31:54 MediaCrawler INFO (cdp_browser.py:194) - [CDPBrowserManager] Successfully connected to existing browser 2026-09-17 16:31:54 MediaCrawler INFO (cdp_browser.py:422) - [CDPBrowserManager] Added anti-detection script: libs/stealth.min.js 2026-09-17 16:31:54 MediaCrawler INFO (core.py:450) - [DouYinCrawler] CDP浏览器信息: {'version': '152.0.7977.83', 'contexts_count': 1, 'debug_port': 9222, 'is_connected': True} 2026-09-17 16:31:55 MediaCrawler INFO (core.py:293) - [DouYinCrawler.get_creators_and_videos] Begin get douyin creators 2026-09-17 16:31:55 MediaCrawler INFO (core.py:294) - [DouYinCrawler.get_creators_and_videos] Parsing creator URLs... 2026-09-17 16:31:55 MediaCrawler INFO (core.py:339) - [DouYinCrawler.get_creators_and_videos] Creator concurrency: 2 2026-09-17 16:31:55 MediaCrawler INFO (core.py:301) - [DouYinCrawler.get_creators_and_videos] Parsed sec_user_id: MS4wLjABAAAA7Dv4Pfbq-BlpMpZ7_yBpNEq2BNCBNCMnS7rmaR78NpuJ2aS-8QhwZGhneEKhljEW from MS4wLjABAAAA7Dv4Pfbq-BlpMpZ7_yBpNEq2BNCBNCMnS7rmaR78NpuJ2aS-8QhwZGhneEKhljEW 2026-09-17 16:31:55 MediaCrawler INFO (core.py:301) - [DouYinCrawler.get_creators_and_videos] Parsed sec_user_id: MS4wLjABAAAAj4jCfgYculNXkB9VnC-aG-hvfteBhOuyLPOtqIoDWxBgWSUfhfbL-wVH5plAyLNO from MS4wLjABAAAAj4jCfgYculNXkB9VnC-aG-hvfteBhOuyLPOtqIoDWxBgWSUfhfbL-wVH5plAyLNO 2026-09-17 16:31:56 MediaCrawler INFO (core.py:301) - [DouYinCrawler.get_creators_and_videos] Parsed sec_user_id: MS4wLjABAAAAPJ4PEF3IYjZVVIpdLpXvaha7KN4plh9IVqlCCg22kRg from MS4wLjABAAAAPJ4PEF3IYjZVVIpdLpXvaha7KN4plh9IVqlCCg22kRg 2026-09-17 16:31:56 MediaCrawler INFO (cdp_browser.py:490) - [CDPBrowserManager] Browser connection disconnected 2026-09-17 16:31:56 MediaCrawler INFO (cdp_browser.py:507) - [CDPBrowserManager] Connected to existing browser, skipping process cleanup 2026-09-17 16:31:56 MediaCrawler INFO (core.py:301) - [DouYinCrawler.get_creators_and_videos] Parsed sec_user_id: MS4wLjABAAAAyWYKxw_oNK_teavPvEOU5pEy3cCHKoDdbM_tMeXDaKM from MS4wLjABAAAAyWYKxw_oNK_teavPvEOU5pEy3cCHKoDdbM_tMeXDaKM 2026-09-17 16:31:56 MediaCrawler INFO (core.py:301) - [DouYinCrawler.get_creators_and_videos] Parsed sec_user_id: MS4wLjABAAAAZN4FZfAK6hB4K0zWbg5ZT8Rjy3a6UEfUQUs8-WB1TdE from MS4wLjABAAAAZN4FZfAK6hB4K0zWbg5ZT8Rjy3a6UEfUQUs8-WB1TdE Traceback (most recent call last): File "C:\Users\EDY\Desktop\达人采集助手-portable-v2\app\scripts\run-mediacrawler.py", line 21, in <module> runpy.run_path(os.path.join(crawler_root, "main.py"), run_name="__main__") File "<frozen runpy>", line 291, in run_path File "<frozen runpy>", line 98, in _run_module_code File "<frozen runpy>", line 88, in _run_code File "C:\Users\EDY\Desktop\达人采集助手-portable-v2\app\MediaCrawler-main\main.py", line 174, in <module> run(main, async_cleanup, cleanup_timeout_seconds=15.0, on_first_interrupt=_force_stop) File "C:\Users\EDY\Desktop\达人采集助手-portable-v2\app\MediaCrawler-main\tools\app_runner.py", line 109, in run asyncio.run(_runner()) File "C:\Users\EDY\Desktop\达人采集助手-portable-v2\app\runtime\python\Lib\asyncio\runners.py", line 190, in run return runner.run(main) ^^^^^^^^^^^^^^^^ File "C:\Users\EDY\Desktop\达人采集助手-portable-v2\app\runtime\python\Lib\asyncio\runners.py", line 118, in run return self._loop.run_until_complete(task) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "C:\Users\EDY\Desktop\达人采集助手-portable-v2\app\runtime\python\Lib\asyncio\base_events.py", line 654, in run_until_complete return future.result() ^^^^^^^^^^^^^^^ File "C:\Users\EDY\Desktop\达人采集助手-portable-v2\app\MediaCrawler-main\tools\app_runner.py", line 96, in _runner await app_main() File "C:\Users\EDY\Desktop\达人采集助手-portable-v2\app\MediaCrawler-main\main.py", line 114, in main await crawler.start() File "C:\Users\EDY\Desktop\达人采集助手-portable-v2\app\MediaCrawler-main\media_platform\douyin\core.py", line 141, in start await self.get_creators_and_videos() File "C:\Users\EDY\Desktop\达人采集助手-portable-v2\app\MediaCrawler-main\media_platform\douyin\core.py", line 342, in get_creators_and_videos creator_work_counts = await asyncio.gather( ^^^^^^^^^^^^^^^^^^^^^ File "C:\Users\EDY\Desktop\达人采集助手-portable-v2\app\MediaCrawler-main\media_platform\douyin\core.py", line 306, in fetch_one_creator creator_info: Dict = await self.dy_client.get_user_info(user_id) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "C:\Users\EDY\Desktop\达人采集助手-portable-v2\app\MediaCrawler-main\media_platform\douyin\client.py", line 319, in get_user_info return await self.get(uri, params) ^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "C:\Users\EDY\Desktop\达人采集助手-portable-v2\app\MediaCrawler-main\media_platform\douyin\client.py", line 141, in get await self.__process_req_params(uri, params, headers) File "C:\Users\EDY\Desktop\达人采集助手-portable-v2\app\MediaCrawler-main\media_platform\douyin\client.py", line 120, in __process_req_params a_bogus = await get_a_bogus(uri, query_string, post_data, headers["User-Agent"], self.playwright_page) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "C:\Users\EDY\Desktop\达人采集助手-portable-v2\app\MediaCrawler-main\media_platform\douyin\help.py", line 81, in get_a_bogus return get_a_bogus_from_js(url, params, user_agent) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "C:\Users\EDY\Desktop\达人采集助手-portable-v2\app\MediaCrawler-main\media_platform\douyin\help.py", line 100, in get_a_bogus_from_js result = subprocess.run( ^^^^^^^^^^^^^^^ File "C:\Users\EDY\Desktop\达人采集助手-portable-v2\app\runtime\python\Lib\subprocess.py", line 548, in run with Popen(*popenargs, **kwargs) as process: ^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "C:\Users\EDY\Desktop\达人采集助手-portable-v2\app\runtime\python\Lib\subprocess.py", line 1026, in __init__ self._execute_child(args, executable, preexec_fn, close_fds, File "C:\Users\EDY\Desktop\达人采集助手-portable-v2\app\runtime\python\Lib\subprocess.py", line 1538, in _execute_child hp, ht, pid, tid = _winapi.CreateProcess(executable, args, ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ FileNotFoundError: [WinError 2] 系统找不到指定的文件。
楠丁格尔 主页采集失败:2026-09-17 16:31:53 MediaCrawler INFO (core.py:77) - [DouYinCrawler] 使用CDP模式启动浏览器 2026-09-17 16:31:53 MediaCrawler INFO (cdp_browser.py:152) - [CDPBrowserManager] Connecting to existing browser on port 9222... 2026-09-17 16:31:53 MediaCrawler INFO (cdp_browser.py:155) - [CDPBrowserManager] Make sure remote debugging is enabled in your browser: chrome://inspect/#remote-debugging 2026-09-17 16:31:53 MediaCrawler INFO (cdp_browser.py:163) - [CDPBrowserManager] Waiting up to 60s for browser CDP connection... 2026-09-17 16:31:53 MediaCrawler INFO (cdp_browser.py:237) - [CDPBrowserManager] CDP port 9222 is accessible 2026-09-17 16:31:53 MediaCrawler INFO (cdp_browser.py:301) - [CDPBrowserManager] Got browser WebSocket URL: ws://localhost:9222/devtools/browser/b6166241-0447-4b83-98ca-78fdbeb71daf 2026-09-17 16:31:53 MediaCrawler INFO (cdp_browser.py:329) - [CDPBrowserManager] Connecting to existing browser via discovered CDP (attempt 1/3): ws://localhost:9222/devtools/browser/b6166241-0447-4b83-98ca-78fdbeb71daf 2026-09-17 16:31:53 MediaCrawler INFO (cdp_browser.py:333) - [CDPBrowserManager] If Chrome asks whether to allow remote debugging, accept it in the already logged-in browser window 2026-09-17 16:31:54 MediaCrawler INFO (cdp_browser.py:364) - [CDPBrowserManager] Successfully connected to browser 2026-09-17 16:31:54 MediaCrawler INFO (cdp_browser.py:365) - [CDPBrowserManager] Browser contexts count: 1 2026-09-17 16:31:54 MediaCrawler INFO (cdp_browser.py:390) - [CDPBrowserManager] Using existing browser context 2026-09-17 16:31:54 MediaCrawler INFO (cdp_browser.py:194) - [CDPBrowserManager] Successfully connected to existing browser 2026-09-17 16:31:54 MediaCrawler INFO (cdp_browser.py:422) - [CDPBrowserManager] Added anti-detection script: libs/stealth.min.js 2026-09-17 16:31:54 MediaCrawler INFO (core.py:450) - [DouYinCrawler] CDP浏览器信息: {'version': '152.0.7977.83', 'contexts_count': 1, 'debug_port': 9222, 'is_connected': True} 2026-09-17 16:31:55 MediaCrawler INFO (core.py:293) - [DouYinCrawler.get_creators_and_videos] Begin get douyin creators 2026-09-17 16:31:55 MediaCrawler INFO (core.py:294) - [DouYinCrawler.get_creators_and_videos] Parsing creator URLs... 2026-09-17 16:31:55 MediaCrawler INFO (core.py:339) - [DouYinCrawler.get_creators_and_videos] Creator concurrency: 2 2026-09-17 16:31:55 MediaCrawler INFO (core.py:301) - [DouYinCrawler.get_creators_and_videos] Parsed sec_user_id: MS4wLjABAAAA7Dv4Pfbq-BlpMpZ7_yBpNEq2BNCBNCMnS7rmaR78NpuJ2aS-8QhwZGhneEKhljEW from MS4wLjABAAAA7Dv4Pfbq-BlpMpZ7_yBpNEq2BNCBNCMnS7rmaR78NpuJ2aS-8QhwZGhneEKhljEW 2026-09-17 16:31:55 MediaCrawler INFO (core.py:301) - [DouYinCrawler.get_creators_and_videos] Parsed sec_user_id: MS4wLjABAAAAj4jCfgYculNXkB9VnC-aG-hvfteBhOuyLPOtqIoDWxBgWSUfhfbL-wVH5plAyLNO from MS4wLjABAAAAj4jCfgYculNXkB9VnC-aG-hvfteBhOuyLPOtqIoDWxBgWSUfhfbL-wVH5plAyLNO 2026-09-17 16:31:56 MediaCrawler INFO (core.py:301) - [DouYinCrawler.get_creators_and_videos] Parsed sec_user_id: MS4wLjABAAAAPJ4PEF3IYjZVVIpdLpXvaha7KN4plh9IVqlCCg22kRg from MS4wLjABAAAAPJ4PEF3IYjZVVIpdLpXvaha7KN4plh9IVqlCCg22kRg 2026-09-17 16:31:56 MediaCrawler INFO (cdp_browser.py:490) - [CDPBrowserManager] Browser connection disconnected 2026-09-17 16:31:56 MediaCrawler INFO (cdp_browser.py:507) - [CDPBrowserManager] Connected to existing browser, skipping process cleanup 2026-09-17 16:31:56 MediaCrawler INFO (core.py:301) - [DouYinCrawler.get_creators_and_videos] Parsed sec_user_id: MS4wLjABAAAAyWYKxw_oNK_teavPvEOU5pEy3cCHKoDdbM_tMeXDaKM from MS4wLjABAAAAyWYKxw_oNK_teavPvEOU5pEy3cCHKoDdbM_tMeXDaKM 2026-09-17 16:31:56 MediaCrawler INFO (core.py:301) - [DouYinCrawler.get_creators_and_videos] Parsed sec_user_id: MS4wLjABAAAAZN4FZfAK6hB4K0zWbg5ZT8Rjy3a6UEfUQUs8-WB1TdE from MS4wLjABAAAAZN4FZfAK6hB4K0zWbg5ZT8Rjy3a6UEfUQUs8-WB1TdE Traceback (most recent call last): File "C:\Users\EDY\Desktop\达人采集助手-portable-v2\app\scripts\run-mediacrawler.py", line 21, in <module> runpy.run_path(os.path.join(crawler_root, "main.py"), run_name="__main__") File "<frozen runpy>", line 291, in run_path File "<frozen runpy>", line 98, in _run_module_code File "<frozen runpy>", line 88, in _run_code File "C:\Users\EDY\Desktop\达人采集助手-portable-v2\app\MediaCrawler-main\main.py", line 174, in <module> run(main, async_cleanup, cleanup_timeout_seconds=15.0, on_first_interrupt=_force_stop) File "C:\Users\EDY\Desktop\达人采集助手-portable-v2\app\MediaCrawler-main\tools\app_runner.py", line 109, in run asyncio.run(_runner()) File "C:\Users\EDY\Desktop\达人采集助手-portable-v2\app\runtime\python\Lib\asyncio\runners.py", line 190, in run return runner.run(main) ^^^^^^^^^^^^^^^^ File "C:\Users\EDY\Desktop\达人采集助手-portable-v2\app\runtime\python\Lib\asyncio\runners.py", line 118, in run return self._loop.run_until_complete(task) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "C:\Users\EDY\Desktop\达人采集助手-portable-v2\app\runtime\python\Lib\asyncio\base_events.py", line 654, in run_until_complete return future.result() ^^^^^^^^^^^^^^^ File "C:\Users\EDY\Desktop\达人采集助手-portable-v2\app\MediaCrawler-main\tools\app_runner.py", line 96, in _runner await app_main() File "C:\Users\EDY\Desktop\达人采集助手-portable-v2\app\MediaCrawler-main\main.py", line 114, in main await crawler.start() File "C:\Users\EDY\Desktop\达人采集助手-portable-v2\app\MediaCrawler-main\media_platform\douyin\core.py", line 141, in start await self.get_creators_and_videos() File "C:\Users\EDY\Desktop\达人采集助手-portable-v2\app\MediaCrawler-main\media_platform\douyin\core.py", line 342, in get_creators_and_videos creator_work_counts = await asyncio.gather( ^^^^^^^^^^^^^^^^^^^^^ File "C:\Users\EDY\Desktop\达人采集助手-portable-v2\app\MediaCrawler-main\media_platform\douyin\core.py", line 306, in fetch_one_creator creator_info: Dict = await self.dy_client.get_user_info(user_id) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "C:\Users\EDY\Desktop\达人采集助手-portable-v2\app\MediaCrawler-main\media_platform\douyin\client.py", line 319, in get_user_info return await self.get(uri, params) ^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "C:\Users\EDY\Desktop\达人采集助手-portable-v2\app\MediaCrawler-main\media_platform\douyin\client.py", line 141, in get await self.__process_req_params(uri, params, headers) File "C:\Users\EDY\Desktop\达人采集助手-portable-v2\app\MediaCrawler-main\media_platform\douyin\client.py", line 120, in __process_req_params a_bogus = await get_a_bogus(uri, query_string, post_data, headers["User-Agent"], self.playwright_page) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "C:\Users\EDY\Desktop\达人采集助手-portable-v2\app\MediaCrawler-main\media_platform\douyin\help.py", line 81, in get_a_bogus return get_a_bogus_from_js(url, params, user_agent) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "C:\Users\EDY\Desktop\达人采集助手-portable-v2\app\MediaCrawler-main\media_platform\douyin\help.py", line 100, in get_a_bogus_from_js result = subprocess.run( ^^^^^^^^^^^^^^^ File "C:\Users\EDY\Desktop\达人采集助手-portable-v2\app\runtime\python\Lib\subprocess.py", line 548, in run with Popen(*popenargs, **kwargs) as process: ^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "C:\Users\EDY\Desktop\达人采集助手-portable-v2\app\runtime\python\Lib\subprocess.py", line 1026, in __init__ self._execute_child(args, executable, preexec_fn, close_fds, File "C:\Users\EDY\Desktop\达人采集助手-portable-v2\app\runtime\python\Lib\subprocess.py", line 1538, in _execute_child hp, ht, pid, tid = _winapi.CreateProcess(executable, args, ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ FileNotFoundError: [WinError 2] 系统找不到指定的文件。
紫玲✨ 主页采集失败:2026-09-17 16:31:53 MediaCrawler INFO (core.py:77) - [DouYinCrawler] 使用CDP模式启动浏览器 2026-09-17 16:31:53 MediaCrawler INFO (cdp_browser.py:152) - [CDPBrowserManager] Connecting to existing browser on port 9222... 2026-09-17 16:31:53 MediaCrawler INFO (cdp_browser.py:155) - [CDPBrowserManager] Make sure remote debugging is enabled in your browser: chrome://inspect/#remote-debugging 2026-09-17 16:31:53 MediaCrawler INFO (cdp_browser.py:163) - [CDPBrowserManager] Waiting up to 60s for browser CDP connection... 2026-09-17 16:31:53 MediaCrawler INFO (cdp_browser.py:237) - [CDPBrowserManager] CDP port 9222 is accessible 2026-09-17 16:31:53 MediaCrawler INFO (cdp_browser.py:301) - [CDPBrowserManager] Got browser WebSocket URL: ws://localhost:9222/devtools/browser/b6166241-0447-4b83-98ca-78fdbeb71daf 2026-09-17 16:31:53 MediaCrawler INFO (cdp_browser.py:329) - [CDPBrowserManager] Connecting to existing browser via discovered CDP (attempt 1/3): ws://localhost:9222/devtools/browser/b6166241-0447-4b83-98ca-78fdbeb71daf 2026-09-17 16:31:53 MediaCrawler INFO (cdp_browser.py:333) - [CDPBrowserManager] If Chrome asks whether to allow remote debugging, accept it in the already logged-in browser window 2026-09-17 16:31:54 MediaCrawler INFO (cdp_browser.py:364) - [CDPBrowserManager] Successfully connected to browser 2026-09-17 16:31:54 MediaCrawler INFO (cdp_browser.py:365) - [CDPBrowserManager] Browser contexts count: 1 2026-09-17 16:31:54 MediaCrawler INFO (cdp_browser.py:390) - [CDPBrowserManager] Using existing browser context 2026-09-17 16:31:54 MediaCrawler INFO (cdp_browser.py:194) - [CDPBrowserManager] Successfully connected to existing browser 2026-09-17 16:31:54 MediaCrawler INFO (cdp_browser.py:422) - [CDPBrowserManager] Added anti-detection script: libs/stealth.min.js 2026-09-17 16:31:54 MediaCrawler INFO (core.py:450) - [DouYinCrawler] CDP浏览器信息: {'version': '152.0.7977.83', 'contexts_count': 1, 'debug_port': 9222, 'is_connected': True} 2026-09-17 16:31:55 MediaCrawler INFO (core.py:293) - [DouYinCrawler.get_creators_and_videos] Begin get douyin creators 2026-09-17 16:31:55 MediaCrawler INFO (core.py:294) - [DouYinCrawler.get_creators_and_videos] Parsing creator URLs... 2026-09-17 16:31:55 MediaCrawler INFO (core.py:339) - [DouYinCrawler.get_creators_and_videos] Creator concurrency: 2 2026-09-17 16:31:55 MediaCrawler INFO (core.py:301) - [DouYinCrawler.get_creators_and_videos] Parsed sec_user_id: MS4wLjABAAAA7Dv4Pfbq-BlpMpZ7_yBpNEq2BNCBNCMnS7rmaR78NpuJ2aS-8QhwZGhneEKhljEW from MS4wLjABAAAA7Dv4Pfbq-BlpMpZ7_yBpNEq2BNCBNCMnS7rmaR78NpuJ2aS-8QhwZGhneEKhljEW 2026-09-17 16:31:55 MediaCrawler INFO (core.py:301) - [DouYinCrawler.get_creators_and_videos] Parsed sec_user_id: MS4wLjABAAAAj4jCfgYculNXkB9VnC-aG-hvfteBhOuyLPOtqIoDWxBgWSUfhfbL-wVH5plAyLNO from MS4wLjABAAAAj4jCfgYculNXkB9VnC-aG-hvfteBhOuyLPOtqIoDWxBgWSUfhfbL-wVH5plAyLNO 2026-09-17 16:31:56 MediaCrawler INFO (core.py:301) - [DouYinCrawler.get_creators_and_videos] Parsed sec_user_id: MS4wLjABAAAAPJ4PEF3IYjZVVIpdLpXvaha7KN4plh9IVqlCCg22kRg from MS4wLjABAAAAPJ4PEF3IYjZVVIpdLpXvaha7KN4plh9IVqlCCg22kRg 2026-09-17 16:31:56 MediaCrawler INFO (cdp_browser.py:490) - [CDPBrowserManager] Browser connection disconnected 2026-09-17 16:31:56 MediaCrawler INFO (cdp_browser.py:507) - [CDPBrowserManager] Connected to existing browser, skipping process cleanup 2026-09-17 16:31:56 MediaCrawler INFO (core.py:301) - [DouYinCrawler.get_creators_and_videos] Parsed sec_user_id: MS4wLjABAAAAyWYKxw_oNK_teavPvEOU5pEy3cCHKoDdbM_tMeXDaKM from MS4wLjABAAAAyWYKxw_oNK_teavPvEOU5pEy3cCHKoDdbM_tMeXDaKM 2026-09-17 16:31:56 MediaCrawler INFO (core.py:301) - [DouYinCrawler.get_creators_and_videos] Parsed sec_user_id: MS4wLjABAAAAZN4FZfAK6hB4K0zWbg5ZT8Rjy3a6UEfUQUs8-WB1TdE from MS4wLjABAAAAZN4FZfAK6hB4K0zWbg5ZT8Rjy3a6UEfUQUs8-WB1TdE Traceback (most recent call last): File "C:\Users\EDY\Desktop\达人采集助手-portable-v2\app\scripts\run-mediacrawler.py", line 21, in <module> runpy.run_path(os.path.join(crawler_root, "main.py"), run_name="__main__") File "<frozen runpy>", line 291, in run_path File "<frozen runpy>", line 98, in _run_module_code File "<frozen runpy>", line 88, in _run_code File "C:\Users\EDY\Desktop\达人采集助手-portable-v2\app\MediaCrawler-main\main.py", line 174, in <module> run(main, async_cleanup, cleanup_timeout_seconds=15.0, on_first_interrupt=_force_stop) File "C:\Users\EDY\Desktop\达人采集助手-portable-v2\app\MediaCrawler-main\tools\app_runner.py", line 109, in run asyncio.run(_runner()) File "C:\Users\EDY\Desktop\达人采集助手-portable-v2\app\runtime\python\Lib\asyncio\runners.py", line 190, in run return runner.run(main) ^^^^^^^^^^^^^^^^ File "C:\Users\EDY\Desktop\达人采集助手-portable-v2\app\runtime\python\Lib\asyncio\runners.py", line 118, in run return self._loop.run_until_complete(task) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "C:\Users\EDY\Desktop\达人采集助手-portable-v2\app\runtime\python\Lib\asyncio\base_events.py", line 654, in run_until_complete return future.result() ^^^^^^^^^^^^^^^ File "C:\Users\EDY\Desktop\达人采集助手-portable-v2\app\MediaCrawler-main\tools\app_runner.py", line 96, in _runner await app_main() File "C:\Users\EDY\Desktop\达人采集助手-portable-v2\app\MediaCrawler-main\main.py", line 114, in main await crawler.start() File "C:\Users\EDY\Desktop\达人采集助手-portable-v2\app\MediaCrawler-main\media_platform\douyin\core.py", line 141, in start await self.get_creators_and_videos() File "C:\Users\EDY\Desktop\达人采集助手-portable-v2\app\MediaCrawler-main\media_platform\douyin\core.py", line 342, in get_creators_and_videos creator_work_counts = await asyncio.gather( ^^^^^^^^^^^^^^^^^^^^^ File "C:\Users\EDY\Desktop\达人采集助手-portable-v2\app\MediaCrawler-main\media_platform\douyin\core.py", line 306, in fetch_one_creator creator_info: Dict = await self.dy_client.get_user_info(user_id) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "C:\Users\EDY\Desktop\达人采集助手-portable-v2\app\MediaCrawler-main\media_platform\douyin\client.py", line 319, in get_user_info return await self.get(uri, params) ^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "C:\Users\EDY\Desktop\达人采集助手-portable-v2\app\MediaCrawler-main\media_platform\douyin\client.py", line 141, in get await self.__process_req_params(uri, params, headers) File "C:\Users\EDY\Desktop\达人采集助手-portable-v2\app\MediaCrawler-main\media_platform\douyin\client.py", line 120, in __process_req_params a_bogus = await get_a_bogus(uri, query_string, post_data, headers["User-Agent"], self.playwright_page) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "C:\Users\EDY\Desktop\达人采集助手-portable-v2\app\MediaCrawler-main\media_platform\douyin\help.py", line 81, in get_a_bogus return get_a_bogus_from_js(url, params, user_agent) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "C:\Users\EDY\Desktop\达人采集助手-portable-v2\app\MediaCrawler-main\media_platform\douyin\help.py", line 100, in get_a_bogus_from_js result = subprocess.run( ^^^^^^^^^^^^^^^ File "C:\Users\EDY\Desktop\达人采集助手-portable-v2\app\runtime\python\Lib\subprocess.py", line 548, in run with Popen(*popenargs, **kwargs) as process: ^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "C:\Users\EDY\Desktop\达人采集助手-portable-v2\app\runtime\python\Lib\subprocess.py", line 1026, in __init__ self._execute_child(args, executable, preexec_fn, close_fds, File "C:\Users\EDY\Desktop\达人采集助手-portable-v2\app\runtime\python\Lib\subprocess.py", line 1538, in _execute_child hp, ht, pid, tid = _winapi.CreateProcess(executable, args, ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ FileNotFoundError: [WinError 2] 系统找不到指定的文件。
𝙅𝙖𝙨𝙚𝙣 主页采集失败:2026-09-17 16:32:21 MediaCrawler INFO (core.py:77) - [DouYinCrawler] 使用CDP模式启动浏览器 2026-09-17 16:32:21 MediaCrawler INFO (cdp_browser.py:152) - [CDPBrowserManager] Connecting to existing browser on port 9222... 2026-09-17 16:32:21 MediaCrawler INFO (cdp_browser.py:155) - [CDPBrowserManager] Make sure remote debugging is enabled in your browser: chrome://inspect/#remote-debugging 2026-09-17 16:32:21 MediaCrawler INFO (cdp_browser.py:163) - [CDPBrowserManager] Waiting up to 60s for browser CDP connection... 2026-09-17 16:32:21 MediaCrawler INFO (cdp_browser.py:237) - [CDPBrowserManager] CDP port 9222 is accessible 2026-09-17 16:32:21 MediaCrawler INFO (cdp_browser.py:301) - [CDPBrowserManager] Got browser WebSocket URL: ws://localhost:9222/devtools/browser/b6166241-0447-4b83-98ca-78fdbeb71daf 2026-09-17 16:32:21 MediaCrawler INFO (cdp_browser.py:329) - [CDPBrowserManager] Connecting to existing browser via discovered CDP (attempt 1/3): ws://localhost:9222/devtools/browser/b6166241-0447-4b83-98ca-78fdbeb71daf 2026-09-17 16:32:21 MediaCrawler INFO (cdp_browser.py:333) - [CDPBrowserManager] If Chrome asks whether to allow remote debugging, accept it in the already logged-in browser window 2026-09-17 16:32:24 MediaCrawler INFO (cdp_browser.py:364) - [CDPBrowserManager] Successfully connected to browser 2026-09-17 16:32:24 MediaCrawler INFO (cdp_browser.py:365) - [CDPBrowserManager] Browser contexts count: 1 2026-09-17 16:32:24 MediaCrawler INFO (cdp_browser.py:390) - [CDPBrowserManager] Using existing browser context 2026-09-17 16:32:24 MediaCrawler INFO (cdp_browser.py:194) - [CDPBrowserManager] Successfully connected to existing browser 2026-09-17 16:32:24 MediaCrawler INFO (cdp_browser.py:422) - [CDPBrowserManager] Added anti-detection script: libs/stealth.min.js 2026-09-17 16:32:24 MediaCrawler INFO (core.py:450) - [DouYinCrawler] CDP浏览器信息: {'version': '152.0.7977.83', 'contexts_count': 1, 'debug_port': 9222, 'is_connected': True} 2026-09-17 16:32:27 MediaCrawler INFO (core.py:293) - [DouYinCrawler.get_creators_and_videos] Begin get douyin creators 2026-09-17 16:32:27 MediaCrawler INFO (core.py:294) - [DouYinCrawler.get_creators_and_videos] Parsing creator URLs... 2026-09-17 16:32:27 MediaCrawler INFO (core.py:339) - [DouYinCrawler.get_creators_and_videos] Creator concurrency: 2 2026-09-17 16:32:27 MediaCrawler INFO (core.py:301) - [DouYinCrawler.get_creators_and_videos] Parsed sec_user_id: MS4wLjABAAAA-lrSCRUoQrZ3T90QjJW3gK4NunZk2NiwozoW6cgIjXk from MS4wLjABAAAA-lrSCRUoQrZ3T90QjJW3gK4NunZk2NiwozoW6cgIjXk 2026-09-17 16:32:27 MediaCrawler INFO (core.py:301) - [DouYinCrawler.get_creators_and_videos] Parsed sec_user_id: MS4wLjABAAAAaUCQ_gwp7gjbk7sn3X1c9wHG3pZbZOoVYl1moKnPUFE from MS4wLjABAAAAaUCQ_gwp7gjbk7sn3X1c9wHG3pZbZOoVYl1moKnPUFE 2026-09-17 16:32:27 MediaCrawler INFO (core.py:301) - [DouYinCrawler.get_creators_and_videos] Parsed sec_user_id: MS4wLjABAAAADZejdQI5YhjZ1QeUKxivOtGsf6AhGeE4zDwmR5kV-dA from MS4wLjABAAAADZejdQI5YhjZ1QeUKxivOtGsf6AhGeE4zDwmR5kV-dA 2026-09-17 16:32:28 MediaCrawler INFO (cdp_browser.py:490) - [CDPBrowserManager] Browser connection disconnected 2026-09-17 16:32:28 MediaCrawler INFO (cdp_browser.py:507) - [CDPBrowserManager] Connected to existing browser, skipping process cleanup 2026-09-17 16:32:28 MediaCrawler INFO (core.py:301) - [DouYinCrawler.get_creators_and_videos] Parsed sec_user_id: MS4wLjABAAAAPehcz5UItwBKHRUS91h52oDNA9gIZEGFD_GWmVoJwT__BGgBpgVbyrjErpzLEpZS from MS4wLjABAAAAPehcz5UItwBKHRUS91h52oDNA9gIZEGFD_GWmVoJwT__BGgBpgVbyrjErpzLEpZS 2026-09-17 16:32:28 MediaCrawler INFO (core.py:301) - [DouYinCrawler.get_creators_and_videos] Parsed sec_user_id: MS4wLjABAAAAptZpQBCAT2dBWpLYcYQqHINRueD9_pUH5Dvq1qAwhNA from MS4wLjABAAAAptZpQBCAT2dBWpLYcYQqHINRueD9_pUH5Dvq1qAwhNA Traceback (most recent call last): File "C:\Users\EDY\Desktop\达人采集助手-portable-v2\app\scripts\run-mediacrawler.py", line 21, in <module> runpy.run_path(os.path.join(crawler_root, "main.py"), run_name="__main__") File "<frozen runpy>", line 291, in run_path File "<frozen runpy>", line 98, in _run_module_code File "<frozen runpy>", line 88, in _run_code File "C:\Users\EDY\Desktop\达人采集助手-portable-v2\app\MediaCrawler-main\main.py", line 174, in <module> run(main, async_cleanup, cleanup_timeout_seconds=15.0, on_first_interrupt=_force_stop) File "C:\Users\EDY\Desktop\达人采集助手-portable-v2\app\MediaCrawler-main\tools\app_runner.py", line 109, in run asyncio.run(_runner()) File "C:\Users\EDY\Desktop\达人采集助手-portable-v2\app\runtime\python\Lib\asyncio\runners.py", line 190, in run return runner.run(main) ^^^^^^^^^^^^^^^^ File "C:\Users\EDY\Desktop\达人采集助手-portable-v2\app\runtime\python\Lib\asyncio\runners.py", line 118, in run return self._loop.run_until_complete(task) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "C:\Users\EDY\Desktop\达人采集助手-portable-v2\app\runtime\python\Lib\asyncio\base_events.py", line 654, in run_until_complete return future.result() ^^^^^^^^^^^^^^^ File "C:\Users\EDY\Desktop\达人采集助手-portable-v2\app\MediaCrawler-main\tools\app_runner.py", line 96, in _runner await app_main() File "C:\Users\EDY\Desktop\达人采集助手-portable-v2\app\MediaCrawler-main\main.py", line 114, in main await crawler.start() File "C:\Users\EDY\Desktop\达人采集助手-portable-v2\app\MediaCrawler-main\media_platform\douyin\core.py", line 141, in start await self.get_creators_and_videos() File "C:\Users\EDY\Desktop\达人采集助手-portable-v2\app\MediaCrawler-main\media_platform\douyin\core.py", line 342, in get_creators_and_videos creator_work_counts = await asyncio.gather( ^^^^^^^^^^^^^^^^^^^^^ File "C:\Users\EDY\Desktop\达人采集助手-portable-v2\app\MediaCrawler-main\media_platform\douyin\core.py", line 306, in fetch_one_creator creator_info: Dict = await self.dy_client.get_user_info(user_id) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "C:\Users\EDY\Desktop\达人采集助手-portable-v2\app\MediaCrawler-main\media_platform\douyin\client.py", line 319, in get_user_info return await self.get(uri, params) ^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "C:\Users\EDY\Desktop\达人采集助手-portable-v2\app\MediaCrawler-main\media_platform\douyin\client.py", line 141, in get await self.__process_req_params(uri, params, headers) File "C:\Users\EDY\Desktop\达人采集助手-portable-v2\app\MediaCrawler-main\media_platform\douyin\client.py", line 120, in __process_req_params a_bogus = await get_a_bogus(uri, query_string, post_data, headers["User-Agent"], self.playwright_page) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "C:\Users\EDY\Desktop\达人采集助手-portable-v2\app\MediaCrawler-main\media_platform\douyin\help.py", line 81, in get_a_bogus return get_a_bogus_from_js(url, params, user_agent) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "C:\Users\EDY\Desktop\达人采集助手-portable-v2\app\MediaCrawler-main\media_platform\douyin\help.py", line 100, in get_a_bogus_from_js result = subprocess.run( ^^^^^^^^^^^^^^^ File "C:\Users\EDY\Desktop\达人采集助手-portable-v2\app\runtime\python\Lib\subprocess.py", line 548, in run with Popen(*popenargs, **kwargs) as process: ^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "C:\Users\EDY\Desktop\达人采集助手-portable-v2\app\runtime\python\Lib\subprocess.py", line 1026, in __init__ self._execute_child(args, executable, preexec_fn, close_fds, File "C:\Users\EDY\Desktop\达人采集助手-portable-v2\app\runtime\python\Lib\subprocess.py", line 1538, in _execute_child hp, ht, pid, tid = _winapi.CreateProcess(executable, args, ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ FileNotFoundError: [WinError 2] 系统找不到指定的文件。
主持人颢鑫 主页采集失败:2026-09-17 16:16:08 MediaCrawler INFO (core.py:77) - [DouYinCrawler] 使用CDP模式启动浏览器 2026-09-17 16:16:08 MediaCrawler INFO (cdp_browser.py:152) - [CDPBrowserManager] Connecting to existing browser on port 9222... 2026-09-17 16:16:08 MediaCrawler INFO (cdp_browser.py:155) - [CDPBrowserManager] Make sure remote debugging is enabled in your browser: chrome://inspect/#remote-debugging 2026-09-17 16:16:08 MediaCrawler INFO (cdp_browser.py:163) - [CDPBrowserManager] Waiting up to 60s for browser CDP connection... 2026-09-17 16:16:08 MediaCrawler INFO (cdp_browser.py:237) - [CDPBrowserManager] CDP port 9222 is accessible 2026-09-17 16:16:09 MediaCrawler INFO (cdp_browser.py:301) - [CDPBrowserManager] Got browser WebSocket URL: ws://localhost:9222/devtools/browser/e796ab07-a99a-42fa-8efa-c7e137271037 2026-09-17 16:16:09 MediaCrawler INFO (cdp_browser.py:329) - [CDPBrowserManager] Connecting to existing browser via discovered CDP (attempt 1/3): ws://localhost:9222/devtools/browser/e796ab07-a99a-42fa-8efa-c7e137271037 2026-09-17 16:16:09 MediaCrawler INFO (cdp_browser.py:333) - [CDPBrowserManager] If Chrome asks whether to allow remote debugging, accept it in the already logged-in browser window 2026-09-17 16:16:09 MediaCrawler INFO (cdp_browser.py:364) - [CDPBrowserManager] Successfully connected to browser 2026-09-17 16:16:09 MediaCrawler INFO (cdp_browser.py:365) - [CDPBrowserManager] Browser contexts count: 1 2026-09-17 16:16:09 MediaCrawler INFO (cdp_browser.py:390) - [CDPBrowserManager] Using existing browser context 2026-09-17 16:16:09 MediaCrawler INFO (cdp_browser.py:194) - [CDPBrowserManager] Successfully connected to existing browser 2026-09-17 16:16:09 MediaCrawler INFO (cdp_browser.py:422) - [CDPBrowserManager] Added anti-detection script: libs/stealth.min.js 2026-09-17 16:16:09 MediaCrawler INFO (core.py:450) - [DouYinCrawler] CDP浏览器信息: {'version': '152.0.7977.83', 'contexts_count': 1, 'debug_port': 9222, 'is_connected': True} 2026-09-17 16:16:11 MediaCrawler INFO (core.py:293) - [DouYinCrawler.get_creators_and_videos] Begin get douyin creators 2026-09-17 16:16:11 MediaCrawler INFO (core.py:294) - [DouYinCrawler.get_creators_and_videos] Parsing creator URLs... 2026-09-17 16:16:11 MediaCrawler INFO (core.py:339) - [DouYinCrawler.get_creators_and_videos] Creator concurrency: 2 2026-09-17 16:16:11 MediaCrawler INFO (core.py:301) - [DouYinCrawler.get_creators_and_videos] Parsed sec_user_id: MS4wLjABAAAAHfC77BDXPOuxyBk0zSObig0tfC5V1xjHEEH3T2kEMd4OD3ZFe_pMUDqsAj9P5n90 from MS4wLjABAAAAHfC77BDXPOuxyBk0zSObig0tfC5V1xjHEEH3T2kEMd4OD3ZFe_pMUDqsAj9P5n90 2026-09-17 16:16:11 MediaCrawler INFO (core.py:301) - [DouYinCrawler.get_creators_and_videos] Parsed sec_user_id: MS4wLjABAAAAhKV9O3uHtuxI2fpIyM970jZfWPpVAwVKM8rDmAJRSK-QbjvBjZPIkSXdz7PzehWh from MS4wLjABAAAAhKV9O3uHtuxI2fpIyM970jZfWPpVAwVKM8rDmAJRSK-QbjvBjZPIkSXdz7PzehWh 2026-09-17 16:16:11 MediaCrawler INFO (core.py:301) - [DouYinCrawler.get_creators_and_videos] Parsed sec_user_id: MS4wLjABAAAAJ3bK1EqCNdOvi_BQycwgSxMqM1bECeJcOn7WKzDnIn2Qp47ia7SFaZwSSEIHVY9b from MS4wLjABAAAAJ3bK1EqCNdOvi_BQycwgSxMqM1bECeJcOn7WKzDnIn2Qp47ia7SFaZwSSEIHVY9b 2026-09-17 16:16:11 MediaCrawler INFO (cdp_browser.py:490) - [CDPBrowserManager] Browser connection disconnected 2026-09-17 16:16:11 MediaCrawler INFO (cdp_browser.py:507) - [CDPBrowserManager] Connected to existing browser, skipping process cleanup 2026-09-17 16:16:11 MediaCrawler INFO (core.py:301) - [DouYinCrawler.get_creators_and_videos] Parsed sec_user_id: MS4wLjABAAAAr5oeZ6Qq-dxRZqUuMl5_km-5L7iQD73ATwXeOzR20wE from MS4wLjABAAAAr5oeZ6Qq-dxRZqUuMl5_km-5L7iQD73ATwXeOzR20wE 2026-09-17 16:16:11 MediaCrawler INFO (core.py:301) - [DouYinCrawler.get_creators_and_videos] Parsed sec_user_id: MS4wLjABAAAAVpXiRoVi3mPmcvg7BQh5cVQn_GTgSz1rWDs-w0vC_rwAjJhQebWSC5GlxJ8e9HpA from MS4wLjABAAAAVpXiRoVi3mPmcvg7BQh5cVQn_GTgSz1rWDs-w0vC_rwAjJhQebWSC5GlxJ8e9HpA Traceback (most recent call last): File "C:\Users\EDY\Desktop\达人采集助手-portable-v2\app\scripts\run-mediacrawler.py", line 21, in <module> runpy.run_path(os.path.join(crawler_root, "main.py"), run_name="__main__") File "<frozen runpy>", line 291, in run_path File "<frozen runpy>", line 98, in _run_module_code File "<frozen runpy>", line 88, in _run_code File "C:\Users\EDY\Desktop\达人采集助手-portable-v2\app\MediaCrawler-main\main.py", line 174, in <module> run(main, async_cleanup, cleanup_timeout_seconds=15.0, on_first_interrupt=_force_stop) File "C:\Users\EDY\Desktop\达人采集助手-portable-v2\app\MediaCrawler-main\tools\app_runner.py", line 109, in run asyncio.run(_runner()) File "C:\Users\EDY\Desktop\达人采集助手-portable-v2\app\runtime\python\Lib\asyncio\runners.py", line 190, in run return runner.run(main) ^^^^^^^^^^^^^^^^ File "C:\Users\EDY\Desktop\达人采集助手-portable-v2\app\runtime\python\Lib\asyncio\runners.py", line 118, in run return self._loop.run_until_complete(task) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "C:\Users\EDY\Desktop\达人采集助手-portable-v2\app\runtime\python\Lib\asyncio\base_events.py", line 654, in run_until_complete return future.result() ^^^^^^^^^^^^^^^ File "C:\Users\EDY\Desktop\达人采集助手-portable-v2\app\MediaCrawler-main\tools\app_runner.py", line 96, in _runner await app_main() File "C:\Users\EDY\Desktop\达人采集助手-portable-v2\app\MediaCrawler-main\main.py", line 114, in main await crawler.start() File "C:\Users\EDY\Desktop\达人采集助手-portable-v2\app\MediaCrawler-main\media_platform\douyin\core.py", line 141, in start await self.get_creators_and_videos() File "C:\Users\EDY\Desktop\达人采集助手-portable-v2\app\MediaCrawler-main\media_platform\douyin\core.py", line 342, in get_creators_and_videos creator_work_counts = await asyncio.gather( ^^^^^^^^^^^^^^^^^^^^^ File "C:\Users\EDY\Desktop\达人采集助手-portable-v2\app\MediaCrawler-main\media_platform\douyin\core.py", line 306, in fetch_one_creator creator_info: Dict = await self.dy_client.get_user_info(user_id) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "C:\Users\EDY\Desktop\达人采集助手-portable-v2\app\MediaCrawler-main\media_platform\douyin\client.py", line 319, in get_user_info return await self.get(uri, params) ^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "C:\Users\EDY\Desktop\达人采集助手-portable-v2\app\MediaCrawler-main\media_platform\douyin\client.py", line 141, in get await self.__process_req_params(uri, params, headers) File "C:\Users\EDY\Desktop\达人采集助手-portable-v2\app\MediaCrawler-main\media_platform\douyin\client.py", line 120, in __process_req_params a_bogus = await get_a_bogus(uri, query_string, post_data, headers["User-Agent"], self.playwright_page) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "C:\Users\EDY\Desktop\达人采集助手-portable-v2\app\MediaCrawler-main\media_platform\douyin\help.py", line 81, in get_a_bogus return get_a_bogus_from_js(url, params, user_agent) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "C:\Users\EDY\Desktop\达人采集助手-portable-v2\app\MediaCrawler-main\media_platform\douyin\help.py", line 100, in get_a_bogus_from_js result = subprocess.run( ^^^^^^^^^^^^^^^ File "C:\Users\EDY\Desktop\达人采集助手-portable-v2\app\runtime\python\Lib\subprocess.py", line 548, in run with Popen(*popenargs, **kwargs) as process: ^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "C:\Users\EDY\Desktop\达人采集助手-portable-v2\app\runtime\python\Lib\subprocess.py", line 1026, in __init__ self._execute_child(args, executable, preexec_fn, close_fds, File "C:\Users\EDY\Desktop\达人采集助手-portable-v2\app\runtime\python\Lib\subprocess.py", line 1538, in _execute_child hp, ht, pid, tid = _winapi.CreateProcess(executable, args, ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ FileNotFoundError: [WinError 2] 系统找不到指定的文件。
杰瑞 主页采集失败:2026-09-17 14:22:42 MediaCrawler INFO (core.py:77) - [DouYinCrawler] 使用CDP模式启动浏览器 2026-09-17 14:22:42 MediaCrawler INFO (cdp_browser.py:152) - [CDPBrowserManager] Connecting to existing browser on port 9222... 2026-09-17 14:22:42 MediaCrawler INFO (cdp_browser.py:155) - [CDPBrowserManager] Make sure remote debugging is enabled in your browser: chrome://inspect/#remote-debugging 2026-09-17 14:22:42 MediaCrawler INFO (cdp_browser.py:163) - [CDPBrowserManager] Waiting up to 60s for browser CDP connection... 2026-09-17 14:22:42 MediaCrawler INFO (cdp_browser.py:237) - [CDPBrowserManager] CDP port 9222 is accessible 2026-09-17 14:22:42 MediaCrawler INFO (cdp_browser.py:301) - [CDPBrowserManager] Got browser WebSocket URL: ws://localhost:9222/devtools/browser/f079b23d-96c5-4a1d-989c-33629bf0f438 2026-09-17 14:22:42 MediaCrawler INFO (cdp_browser.py:329) - [CDPBrowserManager] Connecting to existing browser via discovered CDP (attempt 1/3): ws://localhost:9222/devtools/browser/f079b23d-96c5-4a1d-989c-33629bf0f438 2026-09-17 14:22:42 MediaCrawler INFO (cdp_browser.py:333) - [CDPBrowserManager] If Chrome asks whether to allow remote debugging, accept it in the already logged-in browser window 2026-09-17 14:22:43 MediaCrawler INFO (cdp_browser.py:364) - [CDPBrowserManager] Successfully connected to browser 2026-09-17 14:22:43 MediaCrawler INFO (cdp_browser.py:365) - [CDPBrowserManager] Browser contexts count: 1 2026-09-17 14:22:43 MediaCrawler INFO (cdp_browser.py:390) - [CDPBrowserManager] Using existing browser context 2026-09-17 14:22:43 MediaCrawler INFO (cdp_browser.py:194) - [CDPBrowserManager] Successfully connected to existing browser 2026-09-17 14:22:43 MediaCrawler INFO (cdp_browser.py:422) - [CDPBrowserManager] Added anti-detection script: libs/stealth.min.js 2026-09-17 14:22:43 MediaCrawler INFO (core.py:450) - [DouYinCrawler] CDP浏览器信息: {'version': '152.0.7977.83', 'contexts_count': 1, 'debug_port': 9222, 'is_connected': True} 2026-09-17 14:22:47 MediaCrawler INFO (core.py:293) - [DouYinCrawler.get_creators_and_videos] Begin get douyin creators 2026-09-17 14:22:47 MediaCrawler INFO (core.py:294) - [DouYinCrawler.get_creators_and_videos] Parsing creator URLs... 2026-09-17 14:22:47 MediaCrawler INFO (core.py:339) - [DouYinCrawler.get_creators_and_videos] Creator concurrency: 2 2026-09-17 14:22:47 MediaCrawler INFO (core.py:301) - [DouYinCrawler.get_creators_and_videos] Parsed sec_user_id: MS4wLjABAAAAcdV0gXMX-2NowbEBz6sIOitjtNkS6OrMFboOXglN_24 from MS4wLjABAAAAcdV0gXMX-2NowbEBz6sIOitjtNkS6OrMFboOXglN_24 2026-09-17 14:22:47 MediaCrawler INFO (core.py:301) - [DouYinCrawler.get_creators_and_videos] Parsed sec_user_id: MS4wLjABAAAAcoB7wwtHNv_SA37jK1z1FHvzg0PPR6G7C7ar3T5J0rE from MS4wLjABAAAAcoB7wwtHNv_SA37jK1z1FHvzg0PPR6G7C7ar3T5J0rE 2026-09-17 14:22:47 MediaCrawler INFO (core.py:301) - [DouYinCrawler.get_creators_and_videos] Parsed sec_user_id: MS4wLjABAAAAhPcICW7ccBHl3NXTO7YtlCBbDdnQpJINPc5qu4Dqj6he_-YeQ7G80iK_LFTVBZvc from MS4wLjABAAAAhPcICW7ccBHl3NXTO7YtlCBbDdnQpJINPc5qu4Dqj6he_-YeQ7G80iK_LFTVBZvc 2026-09-17 14:22:47 MediaCrawler INFO (cdp_browser.py:490) - [CDPBrowserManager] Browser connection disconnected 2026-09-17 14:22:47 MediaCrawler INFO (cdp_browser.py:507) - [CDPBrowserManager] Connected to existing browser, skipping process cleanup 2026-09-17 14:22:47 MediaCrawler INFO (core.py:301) - [DouYinCrawler.get_creators_and_videos] Parsed sec_user_id: MS4wLjABAAAAt0TXuTMnoUvY_UkXiXPdrR-f-SHqWcgN9mRYW_nsq-4 from MS4wLjABAAAAt0TXuTMnoUvY_UkXiXPdrR-f-SHqWcgN9mRYW_nsq-4 2026-09-17 14:22:47 MediaCrawler INFO (core.py:301) - [DouYinCrawler.get_creators_and_videos] Parsed sec_user_id: MS4wLjABAAAAxz6zLvaThtHTFH90gjHMDsA24teKLo77ks4IcrNMaeMzfDpFWDty7XPstW76-uI- from MS4wLjABAAAAxz6zLvaThtHTFH90gjHMDsA24teKLo77ks4IcrNMaeMzfDpFWDty7XPstW76-uI- Traceback (most recent call last): File "C:\Users\EDY\Documents\流程\kol-crm-next\scripts\run-mediacrawler.py", line 21, in <module> runpy.run_path(os.path.join(crawler_root, "main.py"), run_name="__main__") File "<frozen runpy>", line 291, in run_path File "<frozen runpy>", line 98, in _run_module_code File "<frozen runpy>", line 88, in _run_code File "C:\Users\EDY\Desktop\达人采集助手-portable-v3\达人采集助手-portable-v3\app\MediaCrawler-main\main.py", line 174, in <module> run(main, async_cleanup, cleanup_timeout_seconds=15.0, on_first_interrupt=_force_stop) File "C:\Users\EDY\Desktop\达人采集助手-portable-v3\达人采集助手-portable-v3\app\MediaCrawler-main\tools\app_runner.py", line 109, in run asyncio.run(_runner()) File "C:\Users\EDY\Desktop\达人采集助手-portable-v3\达人采集助手-portable-v3\app\runtime\python\Lib\asyncio\runners.py", line 190, in run return runner.run(main) ^^^^^^^^^^^^^^^^ File "C:\Users\EDY\Desktop\达人采集助手-portable-v3\达人采集助手-portable-v3\app\runtime\python\Lib\asyncio\runners.py", line 118, in run return self._loop.run_until_complete(task) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "C:\Users\EDY\Desktop\达人采集助手-portable-v3\达人采集助手-portable-v3\app\runtime\python\Lib\asyncio\base_events.py", line 654, in run_until_complete return future.result() ^^^^^^^^^^^^^^^ File "C:\Users\EDY\Desktop\达人采集助手-portable-v3\达人采集助手-portable-v3\app\MediaCrawler-main\tools\app_runner.py", line 96, in _runner await app_main() File "C:\Users\EDY\Desktop\达人采集助手-portable-v3\达人采集助手-portable-v3\app\MediaCrawler-main\main.py", line 114, in main await crawler.start() File "C:\Users\EDY\Desktop\达人采集助手-portable-v3\达人采集助手-portable-v3\app\MediaCrawler-main\media_platform\douyin\core.py", line 141, in start await self.get_creators_and_videos() File "C:\Users\EDY\Desktop\达人采集助手-portable-v3\达人采集助手-portable-v3\app\MediaCrawler-main\media_platform\douyin\core.py", line 342, in get_creators_and_videos creator_work_counts = await asyncio.gather( ^^^^^^^^^^^^^^^^^^^^^ File "C:\Users\EDY\Desktop\达人采集助手-portable-v3\达人采集助手-portable-v3\app\MediaCrawler-main\media_platform\douyin\core.py", line 306, in fetch_one_creator creator_info: Dict = await self.dy_client.get_user_info(user_id) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "C:\Users\EDY\Desktop\达人采集助手-portable-v3\达人采集助手-portable-v3\app\MediaCrawler-main\media_platform\douyin\client.py", line 319, in get_user_info return await self.get(uri, params) ^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "C:\Users\EDY\Desktop\达人采集助手-portable-v3\达人采集助手-portable-v3\app\MediaCrawler-main\media_platform\douyin\client.py", line 141, in get await self.__process_req_params(uri, params, headers) File "C:\Users\EDY\Desktop\达人采集助手-portable-v3\达人采集助手-portable-v3\app\MediaCrawler-main\media_platform\douyin\client.py", line 120, in __process_req_params a_bogus = await get_a_bogus(uri, query_string, post_data, headers["User-Agent"], self.playwright_page) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "C:\Users\EDY\Desktop\达人采集助手-portable-v3\达人采集助手-portable-v3\app\MediaCrawler-main\media_platform\douyin\help.py", line 81, in get_a_bogus return get_a_bogus_from_js(url, params, user_agent) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "C:\Users\EDY\Desktop\达人采集助手-portable-v3\达人采集助手-portable-v3\app\MediaCrawler-main\media_platform\douyin\help.py", line 100, in get_a_bogus_from_js result = subprocess.run( ^^^^^^^^^^^^^^^ File "C:\Users\EDY\Desktop\达人采集助手-portable-v3\达人采集助手-portable-v3\app\runtime\python\Lib\subprocess.py", line 548, in run with Popen(*popenargs, **kwargs) as process: ^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "C:\Users\EDY\Desktop\达人采集助手-portable-v3\达人采集助手-portable-v3\app\runtime\python\Lib\subprocess.py", line 1026, in __init__ self._execute_child(args, executable, preexec_fn, close_fds, File "C:\Users\EDY\Desktop\达人采集助手-portable-v3\达人采集助手-portable-v3\app\runtime\python\Lib\subprocess.py", line 1538, in _execute_child hp, ht, pid, tid = _winapi.CreateProcess(executable, args, ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ FileNotFoundError: [WinError 2] 系统找不到指定的文件。
南京下小雪 主页采集失败:2026-09-17 16:17:13 MediaCrawler INFO (core.py:77) - [DouYinCrawler] 使用CDP模式启动浏览器 2026-09-17 16:17:13 MediaCrawler INFO (cdp_browser.py:152) - [CDPBrowserManager] Connecting to existing browser on port 9222... 2026-09-17 16:17:13 MediaCrawler INFO (cdp_browser.py:155) - [CDPBrowserManager] Make sure remote debugging is enabled in your browser: chrome://inspect/#remote-debugging 2026-09-17 16:17:13 MediaCrawler INFO (cdp_browser.py:163) - [CDPBrowserManager] Waiting up to 60s for browser CDP connection... 2026-09-17 16:17:14 MediaCrawler INFO (cdp_browser.py:237) - [CDPBrowserManager] CDP port 9222 is accessible 2026-09-17 16:17:14 MediaCrawler INFO (cdp_browser.py:301) - [CDPBrowserManager] Got browser WebSocket URL: ws://localhost:9222/devtools/browser/b6166241-0447-4b83-98ca-78fdbeb71daf 2026-09-17 16:17:14 MediaCrawler INFO (cdp_browser.py:329) - [CDPBrowserManager] Connecting to existing browser via discovered CDP (attempt 1/3): ws://localhost:9222/devtools/browser/b6166241-0447-4b83-98ca-78fdbeb71daf 2026-09-17 16:17:14 MediaCrawler INFO (cdp_browser.py:333) - [CDPBrowserManager] If Chrome asks whether to allow remote debugging, accept it in the already logged-in browser window 2026-09-17 16:17:14 MediaCrawler INFO (cdp_browser.py:364) - [CDPBrowserManager] Successfully connected to browser 2026-09-17 16:17:14 MediaCrawler INFO (cdp_browser.py:365) - [CDPBrowserManager] Browser contexts count: 1 2026-09-17 16:17:14 MediaCrawler INFO (cdp_browser.py:390) - [CDPBrowserManager] Using existing browser context 2026-09-17 16:17:14 MediaCrawler INFO (cdp_browser.py:194) - [CDPBrowserManager] Successfully connected to existing browser 2026-09-17 16:17:14 MediaCrawler INFO (cdp_browser.py:422) - [CDPBrowserManager] Added anti-detection script: libs/stealth.min.js 2026-09-17 16:17:14 MediaCrawler INFO (core.py:450) - [DouYinCrawler] CDP浏览器信息: {'version': '152.0.7977.83', 'contexts_count': 1, 'debug_port': 9222, 'is_connected': True} 2026-09-17 16:17:18 MediaCrawler INFO (core.py:293) - [DouYinCrawler.get_creators_and_videos] Begin get douyin creators 2026-09-17 16:17:18 MediaCrawler INFO (core.py:294) - [DouYinCrawler.get_creators_and_videos] Parsing creator URLs... 2026-09-17 16:17:18 MediaCrawler INFO (core.py:339) - [DouYinCrawler.get_creators_and_videos] Creator concurrency: 2 2026-09-17 16:17:18 MediaCrawler INFO (core.py:301) - [DouYinCrawler.get_creators_and_videos] Parsed sec_user_id: MS4wLjABAAAAGnlBtD4-AsC8Ezxp9dgKUyV1GiM2RiMihANay61ZmUs from MS4wLjABAAAAGnlBtD4-AsC8Ezxp9dgKUyV1GiM2RiMihANay61ZmUs 2026-09-17 16:17:18 MediaCrawler INFO (core.py:301) - [DouYinCrawler.get_creators_and_videos] Parsed sec_user_id: MS4wLjABAAAAi0_jiOyKGmyXvRlgE9mqEIMaU2W9s5fbNmyzbOUeqGY from MS4wLjABAAAAi0_jiOyKGmyXvRlgE9mqEIMaU2W9s5fbNmyzbOUeqGY 2026-09-17 16:17:18 MediaCrawler INFO (core.py:301) - [DouYinCrawler.get_creators_and_videos] Parsed sec_user_id: MS4wLjABAAAAmaMNwqGz64X_iW0WLCQn204vTjM41tex3s990hacBPg from MS4wLjABAAAAmaMNwqGz64X_iW0WLCQn204vTjM41tex3s990hacBPg 2026-09-17 16:17:18 MediaCrawler INFO (cdp_browser.py:490) - [CDPBrowserManager] Browser connection disconnected 2026-09-17 16:17:18 MediaCrawler INFO (cdp_browser.py:507) - [CDPBrowserManager] Connected to existing browser, skipping process cleanup 2026-09-17 16:17:18 MediaCrawler INFO (core.py:301) - [DouYinCrawler.get_creators_and_videos] Parsed sec_user_id: MS4wLjABAAAAw-pkFR8XUgai9LX22iR33Ybn_glmy2IFgPFbQEr32gmG_sDF6WB6bAVWljgzRY5- from MS4wLjABAAAAw-pkFR8XUgai9LX22iR33Ybn_glmy2IFgPFbQEr32gmG_sDF6WB6bAVWljgzRY5- 2026-09-17 16:17:18 MediaCrawler INFO (core.py:301) - [DouYinCrawler.get_creators_and_videos] Parsed sec_user_id: MS4wLjABAAAAYX8rlU8_TmzMyvkYTwk9XGCVvU9rwDa46hZgTUOZJ-UpFsP52mOYE_gJ9FSLkNW9 from MS4wLjABAAAAYX8rlU8_TmzMyvkYTwk9XGCVvU9rwDa46hZgTUOZJ-UpFsP52mOYE_gJ9FSLkNW9 Traceback (most recent call last): File "C:\Users\EDY\Desktop\达人采集助手-portable-v2\app\scripts\run-mediacrawler.py", line 21, in <module> runpy.run_path(os.path.join(crawler_root, "main.py"), run_name="__main__") File "<frozen runpy>", line 291, in run_path File "<frozen runpy>", line 98, in _run_module_code File "<frozen runpy>", line 88, in _run_code File "C:\Users\EDY\Desktop\达人采集助手-portable-v2\app\MediaCrawler-main\main.py", line 174, in <module> run(main, async_cleanup, cleanup_timeout_seconds=15.0, on_first_interrupt=_force_stop) File "C:\Users\EDY\Desktop\达人采集助手-portable-v2\app\MediaCrawler-main\tools\app_runner.py", line 109, in run asyncio.run(_runner()) File "C:\Users\EDY\Desktop\达人采集助手-portable-v2\app\runtime\python\Lib\asyncio\runners.py", line 190, in run return runner.run(main) ^^^^^^^^^^^^^^^^ File "C:\Users\EDY\Desktop\达人采集助手-portable-v2\app\runtime\python\Lib\asyncio\runners.py", line 118, in run return self._loop.run_until_complete(task) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "C:\Users\EDY\Desktop\达人采集助手-portable-v2\app\runtime\python\Lib\asyncio\base_events.py", line 654, in run_until_complete return future.result() ^^^^^^^^^^^^^^^ File "C:\Users\EDY\Desktop\达人采集助手-portable-v2\app\MediaCrawler-main\tools\app_runner.py", line 96, in _runner await app_main() File "C:\Users\EDY\Desktop\达人采集助手-portable-v2\app\MediaCrawler-main\main.py", line 114, in main await crawler.start() File "C:\Users\EDY\Desktop\达人采集助手-portable-v2\app\MediaCrawler-main\media_platform\douyin\core.py", line 141, in start await self.get_creators_and_videos() File "C:\Users\EDY\Desktop\达人采集助手-portable-v2\app\MediaCrawler-main\media_platform\douyin\core.py", line 342, in get_creators_and_videos creator_work_counts = await asyncio.gather( ^^^^^^^^^^^^^^^^^^^^^ File "C:\Users\EDY\Desktop\达人采集助手-portable-v2\app\MediaCrawler-main\media_platform\douyin\core.py", line 306, in fetch_one_creator creator_info: Dict = await self.dy_client.get_user_info(user_id) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "C:\Users\EDY\Desktop\达人采集助手-portable-v2\app\MediaCrawler-main\media_platform\douyin\client.py", line 319, in get_user_info return await self.get(uri, params) ^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "C:\Users\EDY\Desktop\达人采集助手-portable-v2\app\MediaCrawler-main\media_platform\douyin\client.py", line 141, in get await self.__process_req_params(uri, params, headers) File "C:\Users\EDY\Desktop\达人采集助手-portable-v2\app\MediaCrawler-main\media_platform\douyin\client.py", line 120, in __process_req_params a_bogus = await get_a_bogus(uri, query_string, post_data, headers["User-Agent"], self.playwright_page) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "C:\Users\EDY\Desktop\达人采集助手-portable-v2\app\MediaCrawler-main\media_platform\douyin\help.py", line 81, in get_a_bogus return get_a_bogus_from_js(url, params, user_agent) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "C:\Users\EDY\Desktop\达人采集助手-portable-v2\app\MediaCrawler-main\media_platform\douyin\help.py", line 100, in get_a_bogus_from_js result = subprocess.run( ^^^^^^^^^^^^^^^ File "C:\Users\EDY\Desktop\达人采集助手-portable-v2\app\runtime\python\Lib\subprocess.py", line 548, in run with Popen(*popenargs, **kwargs) as process: ^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "C:\Users\EDY\Desktop\达人采集助手-portable-v2\app\runtime\python\Lib\subprocess.py", line 1026, in __init__ self._execute_child(args, executable, preexec_fn, close_fds, File "C:\Users\EDY\Desktop\达人采集助手-portable-v2\app\runtime\python\Lib\subprocess.py", line 1538, in _execute_child hp, ht, pid, tid = _winapi.CreateProcess(executable, args, ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ FileNotFoundError: [WinError 2] 系统找不到指定的文件。
主页样本已补齐:最近4条作品中近1个月有更新;AI作品画像:maybe,账号仅有4条主页样本,其中1条明确标注警校生日常,另有校园生活、开学等学生场景线索,可推测为警校在读学生个人账号;但其余作品为汉服古风、情绪化文案,身份线索不够稳定,样本量不足6条,无法确认持续分享警校/公安日常,按规则只能进入待选库。;存在目标身份线索,但 AI 证据不足:有真实在职辅警、基层公安民警、警校生或公安院校在读学生个人账号相关身份/场景线索,非精选时仍保留到待选库;规则提示:蜀黍家·警校/公安达人模板精选至少需要查看 6 条主页作品;当前样本不足,只能进入待选。;画像证据不足,等待补采或人工确认;出现点赞超过2000的作品;主页样本平均点赞 2300,中位点赞 416,最高点赞 8313;近1个月未发现爆款;数据指标已记录,精选阶段不再重复打开主页
挚旗教育~灿灿老师 主页采集失败:2026-09-17 16:35:26 MediaCrawler INFO (core.py:77) - [DouYinCrawler] 使用CDP模式启动浏览器 2026-09-17 16:35:26 MediaCrawler INFO (cdp_browser.py:152) - [CDPBrowserManager] Connecting to existing browser on port 9222... 2026-09-17 16:35:26 MediaCrawler INFO (cdp_browser.py:155) - [CDPBrowserManager] Make sure remote debugging is enabled in your browser: chrome://inspect/#remote-debugging 2026-09-17 16:35:26 MediaCrawler INFO (cdp_browser.py:163) - [CDPBrowserManager] Waiting up to 60s for browser CDP connection... 2026-09-17 16:35:26 MediaCrawler INFO (cdp_browser.py:237) - [CDPBrowserManager] CDP port 9222 is accessible 2026-09-17 16:35:26 MediaCrawler INFO (cdp_browser.py:301) - [CDPBrowserManager] Got browser WebSocket URL: ws://localhost:9222/devtools/browser/1f01f4e1-6d62-4fe4-8f4a-fda9567ef10b 2026-09-17 16:35:26 MediaCrawler INFO (cdp_browser.py:329) - [CDPBrowserManager] Connecting to existing browser via discovered CDP (attempt 1/3): ws://localhost:9222/devtools/browser/1f01f4e1-6d62-4fe4-8f4a-fda9567ef10b 2026-09-17 16:35:26 MediaCrawler INFO (cdp_browser.py:333) - [CDPBrowserManager] If Chrome asks whether to allow remote debugging, accept it in the already logged-in browser window 2026-09-17 16:35:27 MediaCrawler INFO (cdp_browser.py:364) - [CDPBrowserManager] Successfully connected to browser 2026-09-17 16:35:27 MediaCrawler INFO (cdp_browser.py:365) - [CDPBrowserManager] Browser contexts count: 1 2026-09-17 16:35:27 MediaCrawler INFO (cdp_browser.py:390) - [CDPBrowserManager] Using existing browser context 2026-09-17 16:35:27 MediaCrawler INFO (cdp_browser.py:194) - [CDPBrowserManager] Successfully connected to existing browser 2026-09-17 16:35:27 MediaCrawler INFO (cdp_browser.py:422) - [CDPBrowserManager] Added anti-detection script: libs/stealth.min.js 2026-09-17 16:35:27 MediaCrawler INFO (core.py:450) - [DouYinCrawler] CDP浏览器信息: {'version': '152.0.7977.83', 'contexts_count': 1, 'debug_port': 9222, 'is_connected': True} 2026-09-17 16:35:28 MediaCrawler INFO (core.py:293) - [DouYinCrawler.get_creators_and_videos] Begin get douyin creators 2026-09-17 16:35:28 MediaCrawler INFO (core.py:294) - [DouYinCrawler.get_creators_and_videos] Parsing creator URLs... 2026-09-17 16:35:28 MediaCrawler INFO (core.py:339) - [DouYinCrawler.get_creators_and_videos] Creator concurrency: 2 2026-09-17 16:35:28 MediaCrawler INFO (core.py:301) - [DouYinCrawler.get_creators_and_videos] Parsed sec_user_id: MS4wLjABAAAAoejIm4CdbmzyuZEaVDCUSkP0X3jJFkZ99Nnbk_1LG3EM3xezwxiaW0zl5fbsv7jr from MS4wLjABAAAAoejIm4CdbmzyuZEaVDCUSkP0X3jJFkZ99Nnbk_1LG3EM3xezwxiaW0zl5fbsv7jr 2026-09-17 16:35:28 MediaCrawler INFO (core.py:301) - [DouYinCrawler.get_creators_and_videos] Parsed sec_user_id: MS4wLjABAAAAR4NRDTIB_tn8SzL7RgUXtW1LDUA1AnIykQx16tQfQ2yGG2by_MhHdFxdQI0oxiES from MS4wLjABAAAAR4NRDTIB_tn8SzL7RgUXtW1LDUA1AnIykQx16tQfQ2yGG2by_MhHdFxdQI0oxiES 2026-09-17 16:35:28 MediaCrawler INFO (cdp_browser.py:490) - [CDPBrowserManager] Browser connection disconnected 2026-09-17 16:35:28 MediaCrawler INFO (cdp_browser.py:507) - [CDPBrowserManager] Connected to existing browser, skipping process cleanup Traceback (most recent call last): File "C:\Users\EDY\Desktop\达人采集助手-portable-v2\app\scripts\run-mediacrawler.py", line 21, in <module> runpy.run_path(os.path.join(crawler_root, "main.py"), run_name="__main__") File "<frozen runpy>", line 291, in run_path File "<frozen runpy>", line 98, in _run_module_code File "<frozen runpy>", line 88, in _run_code File "C:\Users\EDY\Desktop\达人采集助手-portable-v2\app\MediaCrawler-main\main.py", line 174, in <module> run(main, async_cleanup, cleanup_timeout_seconds=15.0, on_first_interrupt=_force_stop) File "C:\Users\EDY\Desktop\达人采集助手-portable-v2\app\MediaCrawler-main\tools\app_runner.py", line 109, in run asyncio.run(_runner()) File "C:\Users\EDY\Desktop\达人采集助手-portable-v2\app\runtime\python\Lib\asyncio\runners.py", line 190, in run return runner.run(main) ^^^^^^^^^^^^^^^^ File "C:\Users\EDY\Desktop\达人采集助手-portable-v2\app\runtime\python\Lib\asyncio\runners.py", line 118, in run return self._loop.run_until_complete(task) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "C:\Users\EDY\Desktop\达人采集助手-portable-v2\app\runtime\python\Lib\asyncio\base_events.py", line 654, in run_until_complete return future.result() ^^^^^^^^^^^^^^^ File "C:\Users\EDY\Desktop\达人采集助手-portable-v2\app\MediaCrawler-main\tools\app_runner.py", line 96, in _runner await app_main() File "C:\Users\EDY\Desktop\达人采集助手-portable-v2\app\MediaCrawler-main\main.py", line 114, in main await crawler.start() File "C:\Users\EDY\Desktop\达人采集助手-portable-v2\app\MediaCrawler-main\media_platform\douyin\core.py", line 141, in start await self.get_creators_and_videos() File "C:\Users\EDY\Desktop\达人采集助手-portable-v2\app\MediaCrawler-main\media_platform\douyin\core.py", line 342, in get_creators_and_videos creator_work_counts = await asyncio.gather( ^^^^^^^^^^^^^^^^^^^^^ File "C:\Users\EDY\Desktop\达人采集助手-portable-v2\app\MediaCrawler-main\media_platform\douyin\core.py", line 306, in fetch_one_creator creator_info: Dict = await self.dy_client.get_user_info(user_id) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "C:\Users\EDY\Desktop\达人采集助手-portable-v2\app\MediaCrawler-main\media_platform\douyin\client.py", line 319, in get_user_info return await self.get(uri, params) ^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "C:\Users\EDY\Desktop\达人采集助手-portable-v2\app\MediaCrawler-main\media_platform\douyin\client.py", line 141, in get await self.__process_req_params(uri, params, headers) File "C:\Users\EDY\Desktop\达人采集助手-portable-v2\app\MediaCrawler-main\media_platform\douyin\client.py", line 120, in __process_req_params a_bogus = await get_a_bogus(uri, query_string, post_data, headers["User-Agent"], self.playwright_page) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "C:\Users\EDY\Desktop\达人采集助手-portable-v2\app\MediaCrawler-main\media_platform\douyin\help.py", line 81, in get_a_bogus return get_a_bogus_from_js(url, params, user_agent) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "C:\Users\EDY\Desktop\达人采集助手-portable-v2\app\MediaCrawler-main\media_platform\douyin\help.py", line 100, in get_a_bogus_from_js result = subprocess.run( ^^^^^^^^^^^^^^^ File "C:\Users\EDY\Desktop\达人采集助手-portable-v2\app\runtime\python\Lib\subprocess.py", line 548, in run with Popen(*popenargs, **kwargs) as process: ^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "C:\Users\EDY\Desktop\达人采集助手-portable-v2\app\runtime\python\Lib\subprocess.py", line 1026, in __init__ self._execute_child(args, executable, preexec_fn, close_fds, File "C:\Users\EDY\Desktop\达人采集助手-portable-v2\app\runtime\python\Lib\subprocess.py", line 1538, in _execute_child hp, ht, pid, tid = _winapi.CreateProcess(executable, args, ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ FileNotFoundError: [WinError 2] 系统找不到指定的文件。
归乡拾暖♥栖于故土 主页采集失败:2026-09-17 16:32:21 MediaCrawler INFO (core.py:77) - [DouYinCrawler] 使用CDP模式启动浏览器 2026-09-17 16:32:21 MediaCrawler INFO (cdp_browser.py:152) - [CDPBrowserManager] Connecting to existing browser on port 9222... 2026-09-17 16:32:21 MediaCrawler INFO (cdp_browser.py:155) - [CDPBrowserManager] Make sure remote debugging is enabled in your browser: chrome://inspect/#remote-debugging 2026-09-17 16:32:21 MediaCrawler INFO (cdp_browser.py:163) - [CDPBrowserManager] Waiting up to 60s for browser CDP connection... 2026-09-17 16:32:21 MediaCrawler INFO (cdp_browser.py:237) - [CDPBrowserManager] CDP port 9222 is accessible 2026-09-17 16:32:21 MediaCrawler INFO (cdp_browser.py:301) - [CDPBrowserManager] Got browser WebSocket URL: ws://localhost:9222/devtools/browser/b6166241-0447-4b83-98ca-78fdbeb71daf 2026-09-17 16:32:21 MediaCrawler INFO (cdp_browser.py:329) - [CDPBrowserManager] Connecting to existing browser via discovered CDP (attempt 1/3): ws://localhost:9222/devtools/browser/b6166241-0447-4b83-98ca-78fdbeb71daf 2026-09-17 16:32:21 MediaCrawler INFO (cdp_browser.py:333) - [CDPBrowserManager] If Chrome asks whether to allow remote debugging, accept it in the already logged-in browser window 2026-09-17 16:32:24 MediaCrawler INFO (cdp_browser.py:364) - [CDPBrowserManager] Successfully connected to browser 2026-09-17 16:32:24 MediaCrawler INFO (cdp_browser.py:365) - [CDPBrowserManager] Browser contexts count: 1 2026-09-17 16:32:24 MediaCrawler INFO (cdp_browser.py:390) - [CDPBrowserManager] Using existing browser context 2026-09-17 16:32:24 MediaCrawler INFO (cdp_browser.py:194) - [CDPBrowserManager] Successfully connected to existing browser 2026-09-17 16:32:24 MediaCrawler INFO (cdp_browser.py:422) - [CDPBrowserManager] Added anti-detection script: libs/stealth.min.js 2026-09-17 16:32:24 MediaCrawler INFO (core.py:450) - [DouYinCrawler] CDP浏览器信息: {'version': '152.0.7977.83', 'contexts_count': 1, 'debug_port': 9222, 'is_connected': True} 2026-09-17 16:32:27 MediaCrawler INFO (core.py:293) - [DouYinCrawler.get_creators_and_videos] Begin get douyin creators 2026-09-17 16:32:27 MediaCrawler INFO (core.py:294) - [DouYinCrawler.get_creators_and_videos] Parsing creator URLs... 2026-09-17 16:32:27 MediaCrawler INFO (core.py:339) - [DouYinCrawler.get_creators_and_videos] Creator concurrency: 2 2026-09-17 16:32:27 MediaCrawler INFO (core.py:301) - [DouYinCrawler.get_creators_and_videos] Parsed sec_user_id: MS4wLjABAAAA-lrSCRUoQrZ3T90QjJW3gK4NunZk2NiwozoW6cgIjXk from MS4wLjABAAAA-lrSCRUoQrZ3T90QjJW3gK4NunZk2NiwozoW6cgIjXk 2026-09-17 16:32:27 MediaCrawler INFO (core.py:301) - [DouYinCrawler.get_creators_and_videos] Parsed sec_user_id: MS4wLjABAAAAaUCQ_gwp7gjbk7sn3X1c9wHG3pZbZOoVYl1moKnPUFE from MS4wLjABAAAAaUCQ_gwp7gjbk7sn3X1c9wHG3pZbZOoVYl1moKnPUFE 2026-09-17 16:32:27 MediaCrawler INFO (core.py:301) - [DouYinCrawler.get_creators_and_videos] Parsed sec_user_id: MS4wLjABAAAADZejdQI5YhjZ1QeUKxivOtGsf6AhGeE4zDwmR5kV-dA from MS4wLjABAAAADZejdQI5YhjZ1QeUKxivOtGsf6AhGeE4zDwmR5kV-dA 2026-09-17 16:32:28 MediaCrawler INFO (cdp_browser.py:490) - [CDPBrowserManager] Browser connection disconnected 2026-09-17 16:32:28 MediaCrawler INFO (cdp_browser.py:507) - [CDPBrowserManager] Connected to existing browser, skipping process cleanup 2026-09-17 16:32:28 MediaCrawler INFO (core.py:301) - [DouYinCrawler.get_creators_and_videos] Parsed sec_user_id: MS4wLjABAAAAPehcz5UItwBKHRUS91h52oDNA9gIZEGFD_GWmVoJwT__BGgBpgVbyrjErpzLEpZS from MS4wLjABAAAAPehcz5UItwBKHRUS91h52oDNA9gIZEGFD_GWmVoJwT__BGgBpgVbyrjErpzLEpZS 2026-09-17 16:32:28 MediaCrawler INFO (core.py:301) - [DouYinCrawler.get_creators_and_videos] Parsed sec_user_id: MS4wLjABAAAAptZpQBCAT2dBWpLYcYQqHINRueD9_pUH5Dvq1qAwhNA from MS4wLjABAAAAptZpQBCAT2dBWpLYcYQqHINRueD9_pUH5Dvq1qAwhNA Traceback (most recent call last): File "C:\Users\EDY\Desktop\达人采集助手-portable-v2\app\scripts\run-mediacrawler.py", line 21, in <module> runpy.run_path(os.path.join(crawler_root, "main.py"), run_name="__main__") File "<frozen runpy>", line 291, in run_path File "<frozen runpy>", line 98, in _run_module_code File "<frozen runpy>", line 88, in _run_code File "C:\Users\EDY\Desktop\达人采集助手-portable-v2\app\MediaCrawler-main\main.py", line 174, in <module> run(main, async_cleanup, cleanup_timeout_seconds=15.0, on_first_interrupt=_force_stop) File "C:\Users\EDY\Desktop\达人采集助手-portable-v2\app\MediaCrawler-main\tools\app_runner.py", line 109, in run asyncio.run(_runner()) File "C:\Users\EDY\Desktop\达人采集助手-portable-v2\app\runtime\python\Lib\asyncio\runners.py", line 190, in run return runner.run(main) ^^^^^^^^^^^^^^^^ File "C:\Users\EDY\Desktop\达人采集助手-portable-v2\app\runtime\python\Lib\asyncio\runners.py", line 118, in run return self._loop.run_until_complete(task) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "C:\Users\EDY\Desktop\达人采集助手-portable-v2\app\runtime\python\Lib\asyncio\base_events.py", line 654, in run_until_complete return future.result() ^^^^^^^^^^^^^^^ File "C:\Users\EDY\Desktop\达人采集助手-portable-v2\app\MediaCrawler-main\tools\app_runner.py", line 96, in _runner await app_main() File "C:\Users\EDY\Desktop\达人采集助手-portable-v2\app\MediaCrawler-main\main.py", line 114, in main await crawler.start() File "C:\Users\EDY\Desktop\达人采集助手-portable-v2\app\MediaCrawler-main\media_platform\douyin\core.py", line 141, in start await self.get_creators_and_videos() File "C:\Users\EDY\Desktop\达人采集助手-portable-v2\app\MediaCrawler-main\media_platform\douyin\core.py", line 342, in get_creators_and_videos creator_work_counts = await asyncio.gather( ^^^^^^^^^^^^^^^^^^^^^ File "C:\Users\EDY\Desktop\达人采集助手-portable-v2\app\MediaCrawler-main\media_platform\douyin\core.py", line 306, in fetch_one_creator creator_info: Dict = await self.dy_client.get_user_info(user_id) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "C:\Users\EDY\Desktop\达人采集助手-portable-v2\app\MediaCrawler-main\media_platform\douyin\client.py", line 319, in get_user_info return await self.get(uri, params) ^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "C:\Users\EDY\Desktop\达人采集助手-portable-v2\app\MediaCrawler-main\media_platform\douyin\client.py", line 141, in get await self.__process_req_params(uri, params, headers) File "C:\Users\EDY\Desktop\达人采集助手-portable-v2\app\MediaCrawler-main\media_platform\douyin\client.py", line 120, in __process_req_params a_bogus = await get_a_bogus(uri, query_string, post_data, headers["User-Agent"], self.playwright_page) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "C:\Users\EDY\Desktop\达人采集助手-portable-v2\app\MediaCrawler-main\media_platform\douyin\help.py", line 81, in get_a_bogus return get_a_bogus_from_js(url, params, user_agent) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "C:\Users\EDY\Desktop\达人采集助手-portable-v2\app\MediaCrawler-main\media_platform\douyin\help.py", line 100, in get_a_bogus_from_js result = subprocess.run( ^^^^^^^^^^^^^^^ File "C:\Users\EDY\Desktop\达人采集助手-portable-v2\app\runtime\python\Lib\subprocess.py", line 548, in run with Popen(*popenargs, **kwargs) as process: ^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "C:\Users\EDY\Desktop\达人采集助手-portable-v2\app\runtime\python\Lib\subprocess.py", line 1026, in __init__ self._execute_child(args, executable, preexec_fn, close_fds, File "C:\Users\EDY\Desktop\达人采集助手-portable-v2\app\runtime\python\Lib\subprocess.py", line 1538, in _execute_child hp, ht, pid, tid = _winapi.CreateProcess(executable, args, ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ FileNotFoundError: [WinError 2] 系统找不到指定的文件。
矮油不错哦 主页采集失败:2026-09-17 16:17:13 MediaCrawler INFO (core.py:77) - [DouYinCrawler] 使用CDP模式启动浏览器 2026-09-17 16:17:13 MediaCrawler INFO (cdp_browser.py:152) - [CDPBrowserManager] Connecting to existing browser on port 9222... 2026-09-17 16:17:13 MediaCrawler INFO (cdp_browser.py:155) - [CDPBrowserManager] Make sure remote debugging is enabled in your browser: chrome://inspect/#remote-debugging 2026-09-17 16:17:13 MediaCrawler INFO (cdp_browser.py:163) - [CDPBrowserManager] Waiting up to 60s for browser CDP connection... 2026-09-17 16:17:14 MediaCrawler INFO (cdp_browser.py:237) - [CDPBrowserManager] CDP port 9222 is accessible 2026-09-17 16:17:14 MediaCrawler INFO (cdp_browser.py:301) - [CDPBrowserManager] Got browser WebSocket URL: ws://localhost:9222/devtools/browser/b6166241-0447-4b83-98ca-78fdbeb71daf 2026-09-17 16:17:14 MediaCrawler INFO (cdp_browser.py:329) - [CDPBrowserManager] Connecting to existing browser via discovered CDP (attempt 1/3): ws://localhost:9222/devtools/browser/b6166241-0447-4b83-98ca-78fdbeb71daf 2026-09-17 16:17:14 MediaCrawler INFO (cdp_browser.py:333) - [CDPBrowserManager] If Chrome asks whether to allow remote debugging, accept it in the already logged-in browser window 2026-09-17 16:17:14 MediaCrawler INFO (cdp_browser.py:364) - [CDPBrowserManager] Successfully connected to browser 2026-09-17 16:17:14 MediaCrawler INFO (cdp_browser.py:365) - [CDPBrowserManager] Browser contexts count: 1 2026-09-17 16:17:14 MediaCrawler INFO (cdp_browser.py:390) - [CDPBrowserManager] Using existing browser context 2026-09-17 16:17:14 MediaCrawler INFO (cdp_browser.py:194) - [CDPBrowserManager] Successfully connected to existing browser 2026-09-17 16:17:14 MediaCrawler INFO (cdp_browser.py:422) - [CDPBrowserManager] Added anti-detection script: libs/stealth.min.js 2026-09-17 16:17:14 MediaCrawler INFO (core.py:450) - [DouYinCrawler] CDP浏览器信息: {'version': '152.0.7977.83', 'contexts_count': 1, 'debug_port': 9222, 'is_connected': True} 2026-09-17 16:17:18 MediaCrawler INFO (core.py:293) - [DouYinCrawler.get_creators_and_videos] Begin get douyin creators 2026-09-17 16:17:18 MediaCrawler INFO (core.py:294) - [DouYinCrawler.get_creators_and_videos] Parsing creator URLs... 2026-09-17 16:17:18 MediaCrawler INFO (core.py:339) - [DouYinCrawler.get_creators_and_videos] Creator concurrency: 2 2026-09-17 16:17:18 MediaCrawler INFO (core.py:301) - [DouYinCrawler.get_creators_and_videos] Parsed sec_user_id: MS4wLjABAAAAGnlBtD4-AsC8Ezxp9dgKUyV1GiM2RiMihANay61ZmUs from MS4wLjABAAAAGnlBtD4-AsC8Ezxp9dgKUyV1GiM2RiMihANay61ZmUs 2026-09-17 16:17:18 MediaCrawler INFO (core.py:301) - [DouYinCrawler.get_creators_and_videos] Parsed sec_user_id: MS4wLjABAAAAi0_jiOyKGmyXvRlgE9mqEIMaU2W9s5fbNmyzbOUeqGY from MS4wLjABAAAAi0_jiOyKGmyXvRlgE9mqEIMaU2W9s5fbNmyzbOUeqGY 2026-09-17 16:17:18 MediaCrawler INFO (core.py:301) - [DouYinCrawler.get_creators_and_videos] Parsed sec_user_id: MS4wLjABAAAAmaMNwqGz64X_iW0WLCQn204vTjM41tex3s990hacBPg from MS4wLjABAAAAmaMNwqGz64X_iW0WLCQn204vTjM41tex3s990hacBPg 2026-09-17 16:17:18 MediaCrawler INFO (cdp_browser.py:490) - [CDPBrowserManager] Browser connection disconnected 2026-09-17 16:17:18 MediaCrawler INFO (cdp_browser.py:507) - [CDPBrowserManager] Connected to existing browser, skipping process cleanup 2026-09-17 16:17:18 MediaCrawler INFO (core.py:301) - [DouYinCrawler.get_creators_and_videos] Parsed sec_user_id: MS4wLjABAAAAw-pkFR8XUgai9LX22iR33Ybn_glmy2IFgPFbQEr32gmG_sDF6WB6bAVWljgzRY5- from MS4wLjABAAAAw-pkFR8XUgai9LX22iR33Ybn_glmy2IFgPFbQEr32gmG_sDF6WB6bAVWljgzRY5- 2026-09-17 16:17:18 MediaCrawler INFO (core.py:301) - [DouYinCrawler.get_creators_and_videos] Parsed sec_user_id: MS4wLjABAAAAYX8rlU8_TmzMyvkYTwk9XGCVvU9rwDa46hZgTUOZJ-UpFsP52mOYE_gJ9FSLkNW9 from MS4wLjABAAAAYX8rlU8_TmzMyvkYTwk9XGCVvU9rwDa46hZgTUOZJ-UpFsP52mOYE_gJ9FSLkNW9 Traceback (most recent call last): File "C:\Users\EDY\Desktop\达人采集助手-portable-v2\app\scripts\run-mediacrawler.py", line 21, in <module> runpy.run_path(os.path.join(crawler_root, "main.py"), run_name="__main__") File "<frozen runpy>", line 291, in run_path File "<frozen runpy>", line 98, in _run_module_code File "<frozen runpy>", line 88, in _run_code File "C:\Users\EDY\Desktop\达人采集助手-portable-v2\app\MediaCrawler-main\main.py", line 174, in <module> run(main, async_cleanup, cleanup_timeout_seconds=15.0, on_first_interrupt=_force_stop) File "C:\Users\EDY\Desktop\达人采集助手-portable-v2\app\MediaCrawler-main\tools\app_runner.py", line 109, in run asyncio.run(_runner()) File "C:\Users\EDY\Desktop\达人采集助手-portable-v2\app\runtime\python\Lib\asyncio\runners.py", line 190, in run return runner.run(main) ^^^^^^^^^^^^^^^^ File "C:\Users\EDY\Desktop\达人采集助手-portable-v2\app\runtime\python\Lib\asyncio\runners.py", line 118, in run return self._loop.run_until_complete(task) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "C:\Users\EDY\Desktop\达人采集助手-portable-v2\app\runtime\python\Lib\asyncio\base_events.py", line 654, in run_until_complete return future.result() ^^^^^^^^^^^^^^^ File "C:\Users\EDY\Desktop\达人采集助手-portable-v2\app\MediaCrawler-main\tools\app_runner.py", line 96, in _runner await app_main() File "C:\Users\EDY\Desktop\达人采集助手-portable-v2\app\MediaCrawler-main\main.py", line 114, in main await crawler.start() File "C:\Users\EDY\Desktop\达人采集助手-portable-v2\app\MediaCrawler-main\media_platform\douyin\core.py", line 141, in start await self.get_creators_and_videos() File "C:\Users\EDY\Desktop\达人采集助手-portable-v2\app\MediaCrawler-main\media_platform\douyin\core.py", line 342, in get_creators_and_videos creator_work_counts = await asyncio.gather( ^^^^^^^^^^^^^^^^^^^^^ File "C:\Users\EDY\Desktop\达人采集助手-portable-v2\app\MediaCrawler-main\media_platform\douyin\core.py", line 306, in fetch_one_creator creator_info: Dict = await self.dy_client.get_user_info(user_id) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "C:\Users\EDY\Desktop\达人采集助手-portable-v2\app\MediaCrawler-main\media_platform\douyin\client.py", line 319, in get_user_info return await self.get(uri, params) ^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "C:\Users\EDY\Desktop\达人采集助手-portable-v2\app\MediaCrawler-main\media_platform\douyin\client.py", line 141, in get await self.__process_req_params(uri, params, headers) File "C:\Users\EDY\Desktop\达人采集助手-portable-v2\app\MediaCrawler-main\media_platform\douyin\client.py", line 120, in __process_req_params a_bogus = await get_a_bogus(uri, query_string, post_data, headers["User-Agent"], self.playwright_page) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "C:\Users\EDY\Desktop\达人采集助手-portable-v2\app\MediaCrawler-main\media_platform\douyin\help.py", line 81, in get_a_bogus return get_a_bogus_from_js(url, params, user_agent) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "C:\Users\EDY\Desktop\达人采集助手-portable-v2\app\MediaCrawler-main\media_platform\douyin\help.py", line 100, in get_a_bogus_from_js result = subprocess.run( ^^^^^^^^^^^^^^^ File "C:\Users\EDY\Desktop\达人采集助手-portable-v2\app\runtime\python\Lib\subprocess.py", line 548, in run with Popen(*popenargs, **kwargs) as process: ^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "C:\Users\EDY\Desktop\达人采集助手-portable-v2\app\runtime\python\Lib\subprocess.py", line 1026, in __init__ self._execute_child(args, executable, preexec_fn, close_fds, File "C:\Users\EDY\Desktop\达人采集助手-portable-v2\app\runtime\python\Lib\subprocess.py", line 1538, in _execute_child hp, ht, pid, tid = _winapi.CreateProcess(executable, args, ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ FileNotFoundError: [WinError 2] 系统找不到指定的文件。
ma 主页采集失败:2026-09-17 16:32:06 MediaCrawler INFO (core.py:77) - [DouYinCrawler] 使用CDP模式启动浏览器 2026-09-17 16:32:06 MediaCrawler INFO (cdp_browser.py:152) - [CDPBrowserManager] Connecting to existing browser on port 9222... 2026-09-17 16:32:06 MediaCrawler INFO (cdp_browser.py:155) - [CDPBrowserManager] Make sure remote debugging is enabled in your browser: chrome://inspect/#remote-debugging 2026-09-17 16:32:06 MediaCrawler INFO (cdp_browser.py:163) - [CDPBrowserManager] Waiting up to 60s for browser CDP connection... 2026-09-17 16:32:06 MediaCrawler INFO (cdp_browser.py:237) - [CDPBrowserManager] CDP port 9222 is accessible 2026-09-17 16:32:07 MediaCrawler INFO (cdp_browser.py:301) - [CDPBrowserManager] Got browser WebSocket URL: ws://localhost:9222/devtools/browser/b6166241-0447-4b83-98ca-78fdbeb71daf 2026-09-17 16:32:07 MediaCrawler INFO (cdp_browser.py:329) - [CDPBrowserManager] Connecting to existing browser via discovered CDP (attempt 1/3): ws://localhost:9222/devtools/browser/b6166241-0447-4b83-98ca-78fdbeb71daf 2026-09-17 16:32:07 MediaCrawler INFO (cdp_browser.py:333) - [CDPBrowserManager] If Chrome asks whether to allow remote debugging, accept it in the already logged-in browser window 2026-09-17 16:32:08 MediaCrawler INFO (cdp_browser.py:364) - [CDPBrowserManager] Successfully connected to browser 2026-09-17 16:32:08 MediaCrawler INFO (cdp_browser.py:365) - [CDPBrowserManager] Browser contexts count: 1 2026-09-17 16:32:08 MediaCrawler INFO (cdp_browser.py:390) - [CDPBrowserManager] Using existing browser context 2026-09-17 16:32:08 MediaCrawler INFO (cdp_browser.py:194) - [CDPBrowserManager] Successfully connected to existing browser 2026-09-17 16:32:08 MediaCrawler INFO (cdp_browser.py:422) - [CDPBrowserManager] Added anti-detection script: libs/stealth.min.js 2026-09-17 16:32:08 MediaCrawler INFO (core.py:450) - [DouYinCrawler] CDP浏览器信息: {'version': '152.0.7977.83', 'contexts_count': 1, 'debug_port': 9222, 'is_connected': True} 2026-09-17 16:32:09 MediaCrawler INFO (core.py:293) - [DouYinCrawler.get_creators_and_videos] Begin get douyin creators 2026-09-17 16:32:09 MediaCrawler INFO (core.py:294) - [DouYinCrawler.get_creators_and_videos] Parsing creator URLs... 2026-09-17 16:32:09 MediaCrawler INFO (core.py:339) - [DouYinCrawler.get_creators_and_videos] Creator concurrency: 2 2026-09-17 16:32:09 MediaCrawler INFO (core.py:301) - [DouYinCrawler.get_creators_and_videos] Parsed sec_user_id: MS4wLjABAAAABkqrnqUzQnYv9Bvc8H2B6CZYc7SQMjDxScMpw3d18KA_554bLTOHgm2LpbMX8JWI from MS4wLjABAAAABkqrnqUzQnYv9Bvc8H2B6CZYc7SQMjDxScMpw3d18KA_554bLTOHgm2LpbMX8JWI 2026-09-17 16:32:09 MediaCrawler INFO (core.py:301) - [DouYinCrawler.get_creators_and_videos] Parsed sec_user_id: MS4wLjABAAAAexFpM7HqDksih6OlKdppTTEcyvdXFPDNOZyNRAatvKA from MS4wLjABAAAAexFpM7HqDksih6OlKdppTTEcyvdXFPDNOZyNRAatvKA 2026-09-17 16:32:09 MediaCrawler INFO (core.py:301) - [DouYinCrawler.get_creators_and_videos] Parsed sec_user_id: MS4wLjABAAAAFsF3Anolfk5DcVAWJrXZbyxwgqi4vZ4xJy4UtuG6vMX1-pezz0oJm2BeC1QxvMzv from MS4wLjABAAAAFsF3Anolfk5DcVAWJrXZbyxwgqi4vZ4xJy4UtuG6vMX1-pezz0oJm2BeC1QxvMzv 2026-09-17 16:32:09 MediaCrawler INFO (cdp_browser.py:490) - [CDPBrowserManager] Browser connection disconnected 2026-09-17 16:32:09 MediaCrawler INFO (cdp_browser.py:507) - [CDPBrowserManager] Connected to existing browser, skipping process cleanup 2026-09-17 16:32:09 MediaCrawler INFO (core.py:301) - [DouYinCrawler.get_creators_and_videos] Parsed sec_user_id: MS4wLjABAAAAI3Q32U3Y-_VBcSYDbhYk6hzup9SytpGZHe50rncdOB0 from MS4wLjABAAAAI3Q32U3Y-_VBcSYDbhYk6hzup9SytpGZHe50rncdOB0 2026-09-17 16:32:09 MediaCrawler INFO (core.py:301) - [DouYinCrawler.get_creators_and_videos] Parsed sec_user_id: MS4wLjABAAAAJ1hIJ93r2PJqj9aQEtYxb59XpFCQU2KK_Wi2ZybDQ08 from MS4wLjABAAAAJ1hIJ93r2PJqj9aQEtYxb59XpFCQU2KK_Wi2ZybDQ08 Traceback (most recent call last): File "C:\Users\EDY\Desktop\达人采集助手-portable-v2\app\scripts\run-mediacrawler.py", line 21, in <module> runpy.run_path(os.path.join(crawler_root, "main.py"), run_name="__main__") File "<frozen runpy>", line 291, in run_path File "<frozen runpy>", line 98, in _run_module_code File "<frozen runpy>", line 88, in _run_code File "C:\Users\EDY\Desktop\达人采集助手-portable-v2\app\MediaCrawler-main\main.py", line 174, in <module> run(main, async_cleanup, cleanup_timeout_seconds=15.0, on_first_interrupt=_force_stop) File "C:\Users\EDY\Desktop\达人采集助手-portable-v2\app\MediaCrawler-main\tools\app_runner.py", line 109, in run asyncio.run(_runner()) File "C:\Users\EDY\Desktop\达人采集助手-portable-v2\app\runtime\python\Lib\asyncio\runners.py", line 190, in run return runner.run(main) ^^^^^^^^^^^^^^^^ File "C:\Users\EDY\Desktop\达人采集助手-portable-v2\app\runtime\python\Lib\asyncio\runners.py", line 118, in run return self._loop.run_until_complete(task) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "C:\Users\EDY\Desktop\达人采集助手-portable-v2\app\runtime\python\Lib\asyncio\base_events.py", line 654, in run_until_complete return future.result() ^^^^^^^^^^^^^^^ File "C:\Users\EDY\Desktop\达人采集助手-portable-v2\app\MediaCrawler-main\tools\app_runner.py", line 96, in _runner await app_main() File "C:\Users\EDY\Desktop\达人采集助手-portable-v2\app\MediaCrawler-main\main.py", line 114, in main await crawler.start() File "C:\Users\EDY\Desktop\达人采集助手-portable-v2\app\MediaCrawler-main\media_platform\douyin\core.py", line 141, in start await self.get_creators_and_videos() File "C:\Users\EDY\Desktop\达人采集助手-portable-v2\app\MediaCrawler-main\media_platform\douyin\core.py", line 342, in get_creators_and_videos creator_work_counts = await asyncio.gather( ^^^^^^^^^^^^^^^^^^^^^ File "C:\Users\EDY\Desktop\达人采集助手-portable-v2\app\MediaCrawler-main\media_platform\douyin\core.py", line 306, in fetch_one_creator creator_info: Dict = await self.dy_client.get_user_info(user_id) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "C:\Users\EDY\Desktop\达人采集助手-portable-v2\app\MediaCrawler-main\media_platform\douyin\client.py", line 319, in get_user_info return await self.get(uri, params) ^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "C:\Users\EDY\Desktop\达人采集助手-portable-v2\app\MediaCrawler-main\media_platform\douyin\client.py", line 141, in get await self.__process_req_params(uri, params, headers) File "C:\Users\EDY\Desktop\达人采集助手-portable-v2\app\MediaCrawler-main\media_platform\douyin\client.py", line 120, in __process_req_params a_bogus = await get_a_bogus(uri, query_string, post_data, headers["User-Agent"], self.playwright_page) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "C:\Users\EDY\Desktop\达人采集助手-portable-v2\app\MediaCrawler-main\media_platform\douyin\help.py", line 81, in get_a_bogus return get_a_bogus_from_js(url, params, user_agent) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "C:\Users\EDY\Desktop\达人采集助手-portable-v2\app\MediaCrawler-main\media_platform\douyin\help.py", line 100, in get_a_bogus_from_js result = subprocess.run( ^^^^^^^^^^^^^^^ File "C:\Users\EDY\Desktop\达人采集助手-portable-v2\app\runtime\python\Lib\subprocess.py", line 548, in run with Popen(*popenargs, **kwargs) as process: ^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "C:\Users\EDY\Desktop\达人采集助手-portable-v2\app\runtime\python\Lib\subprocess.py", line 1026, in __init__ self._execute_child(args, executable, preexec_fn, close_fds, File "C:\Users\EDY\Desktop\达人采集助手-portable-v2\app\runtime\python\Lib\subprocess.py", line 1538, in _execute_child hp, ht, pid, tid = _winapi.CreateProcess(executable, args, ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ FileNotFoundError: [WinError 2] 系统找不到指定的文件。
静雅 主页采集失败:2026-09-17 16:34:28 MediaCrawler INFO (core.py:77) - [DouYinCrawler] 使用CDP模式启动浏览器 2026-09-17 16:34:28 MediaCrawler INFO (cdp_browser.py:152) - [CDPBrowserManager] Connecting to existing browser on port 9222... 2026-09-17 16:34:28 MediaCrawler INFO (cdp_browser.py:155) - [CDPBrowserManager] Make sure remote debugging is enabled in your browser: chrome://inspect/#remote-debugging 2026-09-17 16:34:28 MediaCrawler INFO (cdp_browser.py:163) - [CDPBrowserManager] Waiting up to 60s for browser CDP connection... 2026-09-17 16:34:28 MediaCrawler INFO (cdp_browser.py:237) - [CDPBrowserManager] CDP port 9222 is accessible 2026-09-17 16:34:28 MediaCrawler INFO (cdp_browser.py:301) - [CDPBrowserManager] Got browser WebSocket URL: ws://localhost:9222/devtools/browser/53c8b36c-7017-453a-996c-e22b078eb53d 2026-09-17 16:34:28 MediaCrawler INFO (cdp_browser.py:329) - [CDPBrowserManager] Connecting to existing browser via discovered CDP (attempt 1/3): ws://localhost:9222/devtools/browser/53c8b36c-7017-453a-996c-e22b078eb53d 2026-09-17 16:34:28 MediaCrawler INFO (cdp_browser.py:333) - [CDPBrowserManager] If Chrome asks whether to allow remote debugging, accept it in the already logged-in browser window 2026-09-17 16:34:28 MediaCrawler INFO (cdp_browser.py:364) - [CDPBrowserManager] Successfully connected to browser 2026-09-17 16:34:28 MediaCrawler INFO (cdp_browser.py:365) - [CDPBrowserManager] Browser contexts count: 1 2026-09-17 16:34:28 MediaCrawler INFO (cdp_browser.py:390) - [CDPBrowserManager] Using existing browser context 2026-09-17 16:34:28 MediaCrawler INFO (cdp_browser.py:194) - [CDPBrowserManager] Successfully connected to existing browser 2026-09-17 16:34:29 MediaCrawler INFO (cdp_browser.py:422) - [CDPBrowserManager] Added anti-detection script: libs/stealth.min.js 2026-09-17 16:34:29 MediaCrawler INFO (core.py:450) - [DouYinCrawler] CDP浏览器信息: {'version': '152.0.7977.83', 'contexts_count': 1, 'debug_port': 9222, 'is_connected': True} 2026-09-17 16:34:30 MediaCrawler INFO (core.py:293) - [DouYinCrawler.get_creators_and_videos] Begin get douyin creators 2026-09-17 16:34:30 MediaCrawler INFO (core.py:294) - [DouYinCrawler.get_creators_and_videos] Parsing creator URLs... 2026-09-17 16:34:30 MediaCrawler INFO (core.py:339) - [DouYinCrawler.get_creators_and_videos] Creator concurrency: 2 2026-09-17 16:34:30 MediaCrawler INFO (core.py:301) - [DouYinCrawler.get_creators_and_videos] Parsed sec_user_id: MS4wLjABAAAA5gA59x6FUCiI1n5NoVtbXOeZu5QRW2tYcrwY5meKWVU from MS4wLjABAAAA5gA59x6FUCiI1n5NoVtbXOeZu5QRW2tYcrwY5meKWVU 2026-09-17 16:34:30 MediaCrawler INFO (core.py:301) - [DouYinCrawler.get_creators_and_videos] Parsed sec_user_id: MS4wLjABAAAAftBwvA2SGUePfeyw1S1RxJE-wORR_wZm-qrnhgWYZYNTL7CeQG3HxsjlONW8dwcp from MS4wLjABAAAAftBwvA2SGUePfeyw1S1RxJE-wORR_wZm-qrnhgWYZYNTL7CeQG3HxsjlONW8dwcp 2026-09-17 16:34:30 MediaCrawler INFO (cdp_browser.py:490) - [CDPBrowserManager] Browser connection disconnected 2026-09-17 16:34:30 MediaCrawler INFO (cdp_browser.py:507) - [CDPBrowserManager] Connected to existing browser, skipping process cleanup Traceback (most recent call last): File "C:\Users\EDY\Desktop\达人采集助手-portable-v2\app\scripts\run-mediacrawler.py", line 21, in <module> runpy.run_path(os.path.join(crawler_root, "main.py"), run_name="__main__") File "<frozen runpy>", line 291, in run_path File "<frozen runpy>", line 98, in _run_module_code File "<frozen runpy>", line 88, in _run_code File "C:\Users\EDY\Desktop\达人采集助手-portable-v2\app\MediaCrawler-main\main.py", line 174, in <module> run(main, async_cleanup, cleanup_timeout_seconds=15.0, on_first_interrupt=_force_stop) File "C:\Users\EDY\Desktop\达人采集助手-portable-v2\app\MediaCrawler-main\tools\app_runner.py", line 109, in run asyncio.run(_runner()) File "C:\Users\EDY\Desktop\达人采集助手-portable-v2\app\runtime\python\Lib\asyncio\runners.py", line 190, in run return runner.run(main) ^^^^^^^^^^^^^^^^ File "C:\Users\EDY\Desktop\达人采集助手-portable-v2\app\runtime\python\Lib\asyncio\runners.py", line 118, in run return self._loop.run_until_complete(task) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "C:\Users\EDY\Desktop\达人采集助手-portable-v2\app\runtime\python\Lib\asyncio\base_events.py", line 654, in run_until_complete return future.result() ^^^^^^^^^^^^^^^ File "C:\Users\EDY\Desktop\达人采集助手-portable-v2\app\MediaCrawler-main\tools\app_runner.py", line 96, in _runner await app_main() File "C:\Users\EDY\Desktop\达人采集助手-portable-v2\app\MediaCrawler-main\main.py", line 114, in main await crawler.start() File "C:\Users\EDY\Desktop\达人采集助手-portable-v2\app\MediaCrawler-main\media_platform\douyin\core.py", line 141, in start await self.get_creators_and_videos() File "C:\Users\EDY\Desktop\达人采集助手-portable-v2\app\MediaCrawler-main\media_platform\douyin\core.py", line 342, in get_creators_and_videos creator_work_counts = await asyncio.gather( ^^^^^^^^^^^^^^^^^^^^^ File "C:\Users\EDY\Desktop\达人采集助手-portable-v2\app\MediaCrawler-main\media_platform\douyin\core.py", line 306, in fetch_one_creator creator_info: Dict = await self.dy_client.get_user_info(user_id) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "C:\Users\EDY\Desktop\达人采集助手-portable-v2\app\MediaCrawler-main\media_platform\douyin\client.py", line 319, in get_user_info return await self.get(uri, params) ^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "C:\Users\EDY\Desktop\达人采集助手-portable-v2\app\MediaCrawler-main\media_platform\douyin\client.py", line 141, in get await self.__process_req_params(uri, params, headers) File "C:\Users\EDY\Desktop\达人采集助手-portable-v2\app\MediaCrawler-main\media_platform\douyin\client.py", line 120, in __process_req_params a_bogus = await get_a_bogus(uri, query_string, post_data, headers["User-Agent"], self.playwright_page) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "C:\Users\EDY\Desktop\达人采集助手-portable-v2\app\MediaCrawler-main\media_platform\douyin\help.py", line 81, in get_a_bogus return get_a_bogus_from_js(url, params, user_agent) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "C:\Users\EDY\Desktop\达人采集助手-portable-v2\app\MediaCrawler-main\media_platform\douyin\help.py", line 100, in get_a_bogus_from_js result = subprocess.run( ^^^^^^^^^^^^^^^ File "C:\Users\EDY\Desktop\达人采集助手-portable-v2\app\runtime\python\Lib\subprocess.py", line 548, in run with Popen(*popenargs, **kwargs) as process: ^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "C:\Users\EDY\Desktop\达人采集助手-portable-v2\app\runtime\python\Lib\subprocess.py", line 1026, in __init__ self._execute_child(args, executable, preexec_fn, close_fds, File "C:\Users\EDY\Desktop\达人采集助手-portable-v2\app\runtime\python\Lib\subprocess.py", line 1538, in _execute_child hp, ht, pid, tid = _winapi.CreateProcess(executable, args, ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ FileNotFoundError: [WinError 2] 系统找不到指定的文件。
小蛋儿 主页采集失败:2026-09-17 16:16:08 MediaCrawler INFO (core.py:77) - [DouYinCrawler] 使用CDP模式启动浏览器 2026-09-17 16:16:08 MediaCrawler INFO (cdp_browser.py:152) - [CDPBrowserManager] Connecting to existing browser on port 9222... 2026-09-17 16:16:08 MediaCrawler INFO (cdp_browser.py:155) - [CDPBrowserManager] Make sure remote debugging is enabled in your browser: chrome://inspect/#remote-debugging 2026-09-17 16:16:08 MediaCrawler INFO (cdp_browser.py:163) - [CDPBrowserManager] Waiting up to 60s for browser CDP connection... 2026-09-17 16:16:08 MediaCrawler INFO (cdp_browser.py:237) - [CDPBrowserManager] CDP port 9222 is accessible 2026-09-17 16:16:09 MediaCrawler INFO (cdp_browser.py:301) - [CDPBrowserManager] Got browser WebSocket URL: ws://localhost:9222/devtools/browser/e796ab07-a99a-42fa-8efa-c7e137271037 2026-09-17 16:16:09 MediaCrawler INFO (cdp_browser.py:329) - [CDPBrowserManager] Connecting to existing browser via discovered CDP (attempt 1/3): ws://localhost:9222/devtools/browser/e796ab07-a99a-42fa-8efa-c7e137271037 2026-09-17 16:16:09 MediaCrawler INFO (cdp_browser.py:333) - [CDPBrowserManager] If Chrome asks whether to allow remote debugging, accept it in the already logged-in browser window 2026-09-17 16:16:09 MediaCrawler INFO (cdp_browser.py:364) - [CDPBrowserManager] Successfully connected to browser 2026-09-17 16:16:09 MediaCrawler INFO (cdp_browser.py:365) - [CDPBrowserManager] Browser contexts count: 1 2026-09-17 16:16:09 MediaCrawler INFO (cdp_browser.py:390) - [CDPBrowserManager] Using existing browser context 2026-09-17 16:16:09 MediaCrawler INFO (cdp_browser.py:194) - [CDPBrowserManager] Successfully connected to existing browser 2026-09-17 16:16:09 MediaCrawler INFO (cdp_browser.py:422) - [CDPBrowserManager] Added anti-detection script: libs/stealth.min.js 2026-09-17 16:16:09 MediaCrawler INFO (core.py:450) - [DouYinCrawler] CDP浏览器信息: {'version': '152.0.7977.83', 'contexts_count': 1, 'debug_port': 9222, 'is_connected': True} 2026-09-17 16:16:11 MediaCrawler INFO (core.py:293) - [DouYinCrawler.get_creators_and_videos] Begin get douyin creators 2026-09-17 16:16:11 MediaCrawler INFO (core.py:294) - [DouYinCrawler.get_creators_and_videos] Parsing creator URLs... 2026-09-17 16:16:11 MediaCrawler INFO (core.py:339) - [DouYinCrawler.get_creators_and_videos] Creator concurrency: 2 2026-09-17 16:16:11 MediaCrawler INFO (core.py:301) - [DouYinCrawler.get_creators_and_videos] Parsed sec_user_id: MS4wLjABAAAAHfC77BDXPOuxyBk0zSObig0tfC5V1xjHEEH3T2kEMd4OD3ZFe_pMUDqsAj9P5n90 from MS4wLjABAAAAHfC77BDXPOuxyBk0zSObig0tfC5V1xjHEEH3T2kEMd4OD3ZFe_pMUDqsAj9P5n90 2026-09-17 16:16:11 MediaCrawler INFO (core.py:301) - [DouYinCrawler.get_creators_and_videos] Parsed sec_user_id: MS4wLjABAAAAhKV9O3uHtuxI2fpIyM970jZfWPpVAwVKM8rDmAJRSK-QbjvBjZPIkSXdz7PzehWh from MS4wLjABAAAAhKV9O3uHtuxI2fpIyM970jZfWPpVAwVKM8rDmAJRSK-QbjvBjZPIkSXdz7PzehWh 2026-09-17 16:16:11 MediaCrawler INFO (core.py:301) - [DouYinCrawler.get_creators_and_videos] Parsed sec_user_id: MS4wLjABAAAAJ3bK1EqCNdOvi_BQycwgSxMqM1bECeJcOn7WKzDnIn2Qp47ia7SFaZwSSEIHVY9b from MS4wLjABAAAAJ3bK1EqCNdOvi_BQycwgSxMqM1bECeJcOn7WKzDnIn2Qp47ia7SFaZwSSEIHVY9b 2026-09-17 16:16:11 MediaCrawler INFO (cdp_browser.py:490) - [CDPBrowserManager] Browser connection disconnected 2026-09-17 16:16:11 MediaCrawler INFO (cdp_browser.py:507) - [CDPBrowserManager] Connected to existing browser, skipping process cleanup 2026-09-17 16:16:11 MediaCrawler INFO (core.py:301) - [DouYinCrawler.get_creators_and_videos] Parsed sec_user_id: MS4wLjABAAAAr5oeZ6Qq-dxRZqUuMl5_km-5L7iQD73ATwXeOzR20wE from MS4wLjABAAAAr5oeZ6Qq-dxRZqUuMl5_km-5L7iQD73ATwXeOzR20wE 2026-09-17 16:16:11 MediaCrawler INFO (core.py:301) - [DouYinCrawler.get_creators_and_videos] Parsed sec_user_id: MS4wLjABAAAAVpXiRoVi3mPmcvg7BQh5cVQn_GTgSz1rWDs-w0vC_rwAjJhQebWSC5GlxJ8e9HpA from MS4wLjABAAAAVpXiRoVi3mPmcvg7BQh5cVQn_GTgSz1rWDs-w0vC_rwAjJhQebWSC5GlxJ8e9HpA Traceback (most recent call last): File "C:\Users\EDY\Desktop\达人采集助手-portable-v2\app\scripts\run-mediacrawler.py", line 21, in <module> runpy.run_path(os.path.join(crawler_root, "main.py"), run_name="__main__") File "<frozen runpy>", line 291, in run_path File "<frozen runpy>", line 98, in _run_module_code File "<frozen runpy>", line 88, in _run_code File "C:\Users\EDY\Desktop\达人采集助手-portable-v2\app\MediaCrawler-main\main.py", line 174, in <module> run(main, async_cleanup, cleanup_timeout_seconds=15.0, on_first_interrupt=_force_stop) File "C:\Users\EDY\Desktop\达人采集助手-portable-v2\app\MediaCrawler-main\tools\app_runner.py", line 109, in run asyncio.run(_runner()) File "C:\Users\EDY\Desktop\达人采集助手-portable-v2\app\runtime\python\Lib\asyncio\runners.py", line 190, in run return runner.run(main) ^^^^^^^^^^^^^^^^ File "C:\Users\EDY\Desktop\达人采集助手-portable-v2\app\runtime\python\Lib\asyncio\runners.py", line 118, in run return self._loop.run_until_complete(task) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "C:\Users\EDY\Desktop\达人采集助手-portable-v2\app\runtime\python\Lib\asyncio\base_events.py", line 654, in run_until_complete return future.result() ^^^^^^^^^^^^^^^ File "C:\Users\EDY\Desktop\达人采集助手-portable-v2\app\MediaCrawler-main\tools\app_runner.py", line 96, in _runner await app_main() File "C:\Users\EDY\Desktop\达人采集助手-portable-v2\app\MediaCrawler-main\main.py", line 114, in main await crawler.start() File "C:\Users\EDY\Desktop\达人采集助手-portable-v2\app\MediaCrawler-main\media_platform\douyin\core.py", line 141, in start await self.get_creators_and_videos() File "C:\Users\EDY\Desktop\达人采集助手-portable-v2\app\MediaCrawler-main\media_platform\douyin\core.py", line 342, in get_creators_and_videos creator_work_counts = await asyncio.gather( ^^^^^^^^^^^^^^^^^^^^^ File "C:\Users\EDY\Desktop\达人采集助手-portable-v2\app\MediaCrawler-main\media_platform\douyin\core.py", line 306, in fetch_one_creator creator_info: Dict = await self.dy_client.get_user_info(user_id) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "C:\Users\EDY\Desktop\达人采集助手-portable-v2\app\MediaCrawler-main\media_platform\douyin\client.py", line 319, in get_user_info return await self.get(uri, params) ^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "C:\Users\EDY\Desktop\达人采集助手-portable-v2\app\MediaCrawler-main\media_platform\douyin\client.py", line 141, in get await self.__process_req_params(uri, params, headers) File "C:\Users\EDY\Desktop\达人采集助手-portable-v2\app\MediaCrawler-main\media_platform\douyin\client.py", line 120, in __process_req_params a_bogus = await get_a_bogus(uri, query_string, post_data, headers["User-Agent"], self.playwright_page) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "C:\Users\EDY\Desktop\达人采集助手-portable-v2\app\MediaCrawler-main\media_platform\douyin\help.py", line 81, in get_a_bogus return get_a_bogus_from_js(url, params, user_agent) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "C:\Users\EDY\Desktop\达人采集助手-portable-v2\app\MediaCrawler-main\media_platform\douyin\help.py", line 100, in get_a_bogus_from_js result = subprocess.run( ^^^^^^^^^^^^^^^ File "C:\Users\EDY\Desktop\达人采集助手-portable-v2\app\runtime\python\Lib\subprocess.py", line 548, in run with Popen(*popenargs, **kwargs) as process: ^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "C:\Users\EDY\Desktop\达人采集助手-portable-v2\app\runtime\python\Lib\subprocess.py", line 1026, in __init__ self._execute_child(args, executable, preexec_fn, close_fds, File "C:\Users\EDY\Desktop\达人采集助手-portable-v2\app\runtime\python\Lib\subprocess.py", line 1538, in _execute_child hp, ht, pid, tid = _winapi.CreateProcess(executable, args, ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ FileNotFoundError: [WinError 2] 系统找不到指定的文件。
习习# 主页采集失败:2026-09-17 14:25:19 MediaCrawler INFO (core.py:77) - [DouYinCrawler] 使用CDP模式启动浏览器 2026-09-17 14:25:19 MediaCrawler INFO (cdp_browser.py:152) - [CDPBrowserManager] Connecting to existing browser on port 9222... 2026-09-17 14:25:19 MediaCrawler INFO (cdp_browser.py:155) - [CDPBrowserManager] Make sure remote debugging is enabled in your browser: chrome://inspect/#remote-debugging 2026-09-17 14:25:19 MediaCrawler INFO (cdp_browser.py:163) - [CDPBrowserManager] Waiting up to 60s for browser CDP connection... 2026-09-17 14:25:19 MediaCrawler INFO (cdp_browser.py:237) - [CDPBrowserManager] CDP port 9222 is accessible 2026-09-17 14:25:19 MediaCrawler INFO (cdp_browser.py:301) - [CDPBrowserManager] Got browser WebSocket URL: ws://localhost:9222/devtools/browser/dd177f4d-bf6e-46f8-95b1-c136a2211654 2026-09-17 14:25:19 MediaCrawler INFO (cdp_browser.py:329) - [CDPBrowserManager] Connecting to existing browser via discovered CDP (attempt 1/3): ws://localhost:9222/devtools/browser/dd177f4d-bf6e-46f8-95b1-c136a2211654 2026-09-17 14:25:19 MediaCrawler INFO (cdp_browser.py:333) - [CDPBrowserManager] If Chrome asks whether to allow remote debugging, accept it in the already logged-in browser window 2026-09-17 14:25:22 MediaCrawler INFO (cdp_browser.py:364) - [CDPBrowserManager] Successfully connected to browser 2026-09-17 14:25:22 MediaCrawler INFO (cdp_browser.py:365) - [CDPBrowserManager] Browser contexts count: 1 2026-09-17 14:25:22 MediaCrawler INFO (cdp_browser.py:390) - [CDPBrowserManager] Using existing browser context 2026-09-17 14:25:22 MediaCrawler INFO (cdp_browser.py:194) - [CDPBrowserManager] Successfully connected to existing browser 2026-09-17 14:25:25 MediaCrawler INFO (cdp_browser.py:422) - [CDPBrowserManager] Added anti-detection script: libs/stealth.min.js 2026-09-17 14:25:25 MediaCrawler INFO (core.py:450) - [DouYinCrawler] CDP浏览器信息: {'version': '152.0.7977.83', 'contexts_count': 1, 'debug_port': 9222, 'is_connected': True} 2026-09-17 14:25:27 MediaCrawler INFO (core.py:293) - [DouYinCrawler.get_creators_and_videos] Begin get douyin creators 2026-09-17 14:25:27 MediaCrawler INFO (core.py:294) - [DouYinCrawler.get_creators_and_videos] Parsing creator URLs... 2026-09-17 14:25:27 MediaCrawler INFO (core.py:339) - [DouYinCrawler.get_creators_and_videos] Creator concurrency: 2 2026-09-17 14:25:27 MediaCrawler INFO (core.py:301) - [DouYinCrawler.get_creators_and_videos] Parsed sec_user_id: MS4wLjABAAAAHJn1n52sPggn_QNyNxunPk2-0t-oiuFO6aK8nVcO3HjlMosy-t_Hp8EursruwaMt from MS4wLjABAAAAHJn1n52sPggn_QNyNxunPk2-0t-oiuFO6aK8nVcO3HjlMosy-t_Hp8EursruwaMt 2026-09-17 14:25:27 MediaCrawler INFO (core.py:301) - [DouYinCrawler.get_creators_and_videos] Parsed sec_user_id: MS4wLjABAAAAKpfsUujf9V9ojHgB4JtAnHIlGiWoUey3U5fBnaqXGBI from MS4wLjABAAAAKpfsUujf9V9ojHgB4JtAnHIlGiWoUey3U5fBnaqXGBI 2026-09-17 14:25:28 MediaCrawler INFO (core.py:301) - [DouYinCrawler.get_creators_and_videos] Parsed sec_user_id: MS4wLjABAAAAOiyWd0V2y5S3dHfv_2-WHSf8J8Pd5OUWltcmC80LUM-1KLMBvvOK1F8Jaf0IZfcQ from MS4wLjABAAAAOiyWd0V2y5S3dHfv_2-WHSf8J8Pd5OUWltcmC80LUM-1KLMBvvOK1F8Jaf0IZfcQ 2026-09-17 14:25:28 MediaCrawler INFO (cdp_browser.py:490) - [CDPBrowserManager] Browser connection disconnected 2026-09-17 14:25:28 MediaCrawler INFO (cdp_browser.py:507) - [CDPBrowserManager] Connected to existing browser, skipping process cleanup 2026-09-17 14:25:28 MediaCrawler INFO (core.py:301) - [DouYinCrawler.get_creators_and_videos] Parsed sec_user_id: MS4wLjABAAAApoTVRwtjRkH9-71u8STF4XVp2FmcWObNTDSXlYCdwyY from MS4wLjABAAAApoTVRwtjRkH9-71u8STF4XVp2FmcWObNTDSXlYCdwyY 2026-09-17 14:25:28 MediaCrawler INFO (core.py:301) - [DouYinCrawler.get_creators_and_videos] Parsed sec_user_id: MS4wLjABAAAASR13xAfkF1Z3qSKPHxfPCGHzgxdl-1qthC_cxOzDGpSDcGCao8NkVraM15mJk2K_ from MS4wLjABAAAASR13xAfkF1Z3qSKPHxfPCGHzgxdl-1qthC_cxOzDGpSDcGCao8NkVraM15mJk2K_ Traceback (most recent call last): File "C:\Users\EDY\Documents\流程\kol-crm-next\scripts\run-mediacrawler.py", line 21, in <module> runpy.run_path(os.path.join(crawler_root, "main.py"), run_name="__main__") File "<frozen runpy>", line 291, in run_path File "<frozen runpy>", line 98, in _run_module_code File "<frozen runpy>", line 88, in _run_code File "C:\Users\EDY\Desktop\达人采集助手-portable-v3\达人采集助手-portable-v3\app\MediaCrawler-main\main.py", line 174, in <module> run(main, async_cleanup, cleanup_timeout_seconds=15.0, on_first_interrupt=_force_stop) File "C:\Users\EDY\Desktop\达人采集助手-portable-v3\达人采集助手-portable-v3\app\MediaCrawler-main\tools\app_runner.py", line 109, in run asyncio.run(_runner()) File "C:\Users\EDY\Desktop\达人采集助手-portable-v3\达人采集助手-portable-v3\app\runtime\python\Lib\asyncio\runners.py", line 190, in run return runner.run(main) ^^^^^^^^^^^^^^^^ File "C:\Users\EDY\Desktop\达人采集助手-portable-v3\达人采集助手-portable-v3\app\runtime\python\Lib\asyncio\runners.py", line 118, in run return self._loop.run_until_complete(task) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "C:\Users\EDY\Desktop\达人采集助手-portable-v3\达人采集助手-portable-v3\app\runtime\python\Lib\asyncio\base_events.py", line 654, in run_until_complete return future.result() ^^^^^^^^^^^^^^^ File "C:\Users\EDY\Desktop\达人采集助手-portable-v3\达人采集助手-portable-v3\app\MediaCrawler-main\tools\app_runner.py", line 96, in _runner await app_main() File "C:\Users\EDY\Desktop\达人采集助手-portable-v3\达人采集助手-portable-v3\app\MediaCrawler-main\main.py", line 114, in main await crawler.start() File "C:\Users\EDY\Desktop\达人采集助手-portable-v3\达人采集助手-portable-v3\app\MediaCrawler-main\media_platform\douyin\core.py", line 141, in start await self.get_creators_and_videos() File "C:\Users\EDY\Desktop\达人采集助手-portable-v3\达人采集助手-portable-v3\app\MediaCrawler-main\media_platform\douyin\core.py", line 342, in get_creators_and_videos creator_work_counts = await asyncio.gather( ^^^^^^^^^^^^^^^^^^^^^ File "C:\Users\EDY\Desktop\达人采集助手-portable-v3\达人采集助手-portable-v3\app\MediaCrawler-main\media_platform\douyin\core.py", line 306, in fetch_one_creator creator_info: Dict = await self.dy_client.get_user_info(user_id) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "C:\Users\EDY\Desktop\达人采集助手-portable-v3\达人采集助手-portable-v3\app\MediaCrawler-main\media_platform\douyin\client.py", line 319, in get_user_info return await self.get(uri, params) ^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "C:\Users\EDY\Desktop\达人采集助手-portable-v3\达人采集助手-portable-v3\app\MediaCrawler-main\media_platform\douyin\client.py", line 141, in get await self.__process_req_params(uri, params, headers) File "C:\Users\EDY\Desktop\达人采集助手-portable-v3\达人采集助手-portable-v3\app\MediaCrawler-main\media_platform\douyin\client.py", line 120, in __process_req_params a_bogus = await get_a_bogus(uri, query_string, post_data, headers["User-Agent"], self.playwright_page) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "C:\Users\EDY\Desktop\达人采集助手-portable-v3\达人采集助手-portable-v3\app\MediaCrawler-main\media_platform\douyin\help.py", line 81, in get_a_bogus return get_a_bogus_from_js(url, params, user_agent) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "C:\Users\EDY\Desktop\达人采集助手-portable-v3\达人采集助手-portable-v3\app\MediaCrawler-main\media_platform\douyin\help.py", line 100, in get_a_bogus_from_js result = subprocess.run( ^^^^^^^^^^^^^^^ File "C:\Users\EDY\Desktop\达人采集助手-portable-v3\达人采集助手-portable-v3\app\runtime\python\Lib\subprocess.py", line 548, in run with Popen(*popenargs, **kwargs) as process: ^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "C:\Users\EDY\Desktop\达人采集助手-portable-v3\达人采集助手-portable-v3\app\runtime\python\Lib\subprocess.py", line 1026, in __init__ self._execute_child(args, executable, preexec_fn, close_fds, File "C:\Users\EDY\Desktop\达人采集助手-portable-v3\达人采集助手-portable-v3\app\runtime\python\Lib\subprocess.py", line 1538, in _execute_child hp, ht, pid, tid = _winapi.CreateProcess(executable, args, ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ FileNotFoundError: [WinError 2] 系统找不到指定的文件。
itsw 主页采集失败:2026-09-17 14:23:08 MediaCrawler INFO (core.py:77) - [DouYinCrawler] 使用CDP模式启动浏览器 2026-09-17 14:23:08 MediaCrawler INFO (cdp_browser.py:152) - [CDPBrowserManager] Connecting to existing browser on port 9222... 2026-09-17 14:23:08 MediaCrawler INFO (cdp_browser.py:155) - [CDPBrowserManager] Make sure remote debugging is enabled in your browser: chrome://inspect/#remote-debugging 2026-09-17 14:23:08 MediaCrawler INFO (cdp_browser.py:163) - [CDPBrowserManager] Waiting up to 60s for browser CDP connection... 2026-09-17 14:23:08 MediaCrawler INFO (cdp_browser.py:237) - [CDPBrowserManager] CDP port 9222 is accessible 2026-09-17 14:23:09 MediaCrawler INFO (cdp_browser.py:301) - [CDPBrowserManager] Got browser WebSocket URL: ws://localhost:9222/devtools/browser/f079b23d-96c5-4a1d-989c-33629bf0f438 2026-09-17 14:23:09 MediaCrawler INFO (cdp_browser.py:329) - [CDPBrowserManager] Connecting to existing browser via discovered CDP (attempt 1/3): ws://localhost:9222/devtools/browser/f079b23d-96c5-4a1d-989c-33629bf0f438 2026-09-17 14:23:09 MediaCrawler INFO (cdp_browser.py:333) - [CDPBrowserManager] If Chrome asks whether to allow remote debugging, accept it in the already logged-in browser window 2026-09-17 14:23:15 MediaCrawler INFO (cdp_browser.py:364) - [CDPBrowserManager] Successfully connected to browser 2026-09-17 14:23:15 MediaCrawler INFO (cdp_browser.py:365) - [CDPBrowserManager] Browser contexts count: 1 2026-09-17 14:23:15 MediaCrawler INFO (cdp_browser.py:390) - [CDPBrowserManager] Using existing browser context 2026-09-17 14:23:15 MediaCrawler INFO (cdp_browser.py:194) - [CDPBrowserManager] Successfully connected to existing browser 2026-09-17 14:23:15 MediaCrawler INFO (cdp_browser.py:422) - [CDPBrowserManager] Added anti-detection script: libs/stealth.min.js 2026-09-17 14:23:15 MediaCrawler INFO (core.py:450) - [DouYinCrawler] CDP浏览器信息: {'version': '152.0.7977.83', 'contexts_count': 1, 'debug_port': 9222, 'is_connected': True} 2026-09-17 14:23:17 MediaCrawler INFO (core.py:293) - [DouYinCrawler.get_creators_and_videos] Begin get douyin creators 2026-09-17 14:23:17 MediaCrawler INFO (core.py:294) - [DouYinCrawler.get_creators_and_videos] Parsing creator URLs... 2026-09-17 14:23:17 MediaCrawler INFO (core.py:339) - [DouYinCrawler.get_creators_and_videos] Creator concurrency: 2 2026-09-17 14:23:17 MediaCrawler INFO (core.py:301) - [DouYinCrawler.get_creators_and_videos] Parsed sec_user_id: MS4wLjABAAAA5J1at3eNYvBIq0LPStmnic3qki9abHbVip06xsmLR5Q from MS4wLjABAAAA5J1at3eNYvBIq0LPStmnic3qki9abHbVip06xsmLR5Q 2026-09-17 14:23:17 MediaCrawler INFO (core.py:301) - [DouYinCrawler.get_creators_and_videos] Parsed sec_user_id: MS4wLjABAAAAKGlyiiqm6MURKXfZ--_XQ_8gBuieitxG5ssup1lV49U from MS4wLjABAAAAKGlyiiqm6MURKXfZ--_XQ_8gBuieitxG5ssup1lV49U 2026-09-17 14:23:18 MediaCrawler INFO (core.py:301) - [DouYinCrawler.get_creators_and_videos] Parsed sec_user_id: MS4wLjABAAAAmboKEPDcsZorAd48osemDt-nJ1lCj4jI2mGvI_CNP5k from MS4wLjABAAAAmboKEPDcsZorAd48osemDt-nJ1lCj4jI2mGvI_CNP5k 2026-09-17 14:23:18 MediaCrawler INFO (cdp_browser.py:490) - [CDPBrowserManager] Browser connection disconnected 2026-09-17 14:23:18 MediaCrawler INFO (cdp_browser.py:507) - [CDPBrowserManager] Connected to existing browser, skipping process cleanup 2026-09-17 14:23:18 MediaCrawler INFO (core.py:301) - [DouYinCrawler.get_creators_and_videos] Parsed sec_user_id: MS4wLjABAAAAmVpfR85F39psDPXGeEBcEtjA4_VSOwFRJxzkFAaBlr6TTi00oD5k09f-OMXlTbiJ from MS4wLjABAAAAmVpfR85F39psDPXGeEBcEtjA4_VSOwFRJxzkFAaBlr6TTi00oD5k09f-OMXlTbiJ 2026-09-17 14:23:18 MediaCrawler INFO (core.py:301) - [DouYinCrawler.get_creators_and_videos] Parsed sec_user_id: MS4wLjABAAAAqZjPCuJ3HQreEUAnK-Qo_AY03Y_mKRb0Q63zz7-KLnqgQU52rcWGtpoGaho_lFa3 from MS4wLjABAAAAqZjPCuJ3HQreEUAnK-Qo_AY03Y_mKRb0Q63zz7-KLnqgQU52rcWGtpoGaho_lFa3 Traceback (most recent call last): File "C:\Users\EDY\Documents\流程\kol-crm-next\scripts\run-mediacrawler.py", line 21, in <module> runpy.run_path(os.path.join(crawler_root, "main.py"), run_name="__main__") File "<frozen runpy>", line 291, in run_path File "<frozen runpy>", line 98, in _run_module_code File "<frozen runpy>", line 88, in _run_code File "C:\Users\EDY\Desktop\达人采集助手-portable-v3\达人采集助手-portable-v3\app\MediaCrawler-main\main.py", line 174, in <module> run(main, async_cleanup, cleanup_timeout_seconds=15.0, on_first_interrupt=_force_stop) File "C:\Users\EDY\Desktop\达人采集助手-portable-v3\达人采集助手-portable-v3\app\MediaCrawler-main\tools\app_runner.py", line 109, in run asyncio.run(_runner()) File "C:\Users\EDY\Desktop\达人采集助手-portable-v3\达人采集助手-portable-v3\app\runtime\python\Lib\asyncio\runners.py", line 190, in run return runner.run(main) ^^^^^^^^^^^^^^^^ File "C:\Users\EDY\Desktop\达人采集助手-portable-v3\达人采集助手-portable-v3\app\runtime\python\Lib\asyncio\runners.py", line 118, in run return self._loop.run_until_complete(task) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "C:\Users\EDY\Desktop\达人采集助手-portable-v3\达人采集助手-portable-v3\app\runtime\python\Lib\asyncio\base_events.py", line 654, in run_until_complete return future.result() ^^^^^^^^^^^^^^^ File "C:\Users\EDY\Desktop\达人采集助手-portable-v3\达人采集助手-portable-v3\app\MediaCrawler-main\tools\app_runner.py", line 96, in _runner await app_main() File "C:\Users\EDY\Desktop\达人采集助手-portable-v3\达人采集助手-portable-v3\app\MediaCrawler-main\main.py", line 114, in main await crawler.start() File "C:\Users\EDY\Desktop\达人采集助手-portable-v3\达人采集助手-portable-v3\app\MediaCrawler-main\media_platform\douyin\core.py", line 141, in start await self.get_creators_and_videos() File "C:\Users\EDY\Desktop\达人采集助手-portable-v3\达人采集助手-portable-v3\app\MediaCrawler-main\media_platform\douyin\core.py", line 342, in get_creators_and_videos creator_work_counts = await asyncio.gather( ^^^^^^^^^^^^^^^^^^^^^ File "C:\Users\EDY\Desktop\达人采集助手-portable-v3\达人采集助手-portable-v3\app\MediaCrawler-main\media_platform\douyin\core.py", line 306, in fetch_one_creator creator_info: Dict = await self.dy_client.get_user_info(user_id) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "C:\Users\EDY\Desktop\达人采集助手-portable-v3\达人采集助手-portable-v3\app\MediaCrawler-main\media_platform\douyin\client.py", line 319, in get_user_info return await self.get(uri, params) ^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "C:\Users\EDY\Desktop\达人采集助手-portable-v3\达人采集助手-portable-v3\app\MediaCrawler-main\media_platform\douyin\client.py", line 141, in get await self.__process_req_params(uri, params, headers) File "C:\Users\EDY\Desktop\达人采集助手-portable-v3\达人采集助手-portable-v3\app\MediaCrawler-main\media_platform\douyin\client.py", line 120, in __process_req_params a_bogus = await get_a_bogus(uri, query_string, post_data, headers["User-Agent"], self.playwright_page) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "C:\Users\EDY\Desktop\达人采集助手-portable-v3\达人采集助手-portable-v3\app\MediaCrawler-main\media_platform\douyin\help.py", line 81, in get_a_bogus return get_a_bogus_from_js(url, params, user_agent) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "C:\Users\EDY\Desktop\达人采集助手-portable-v3\达人采集助手-portable-v3\app\MediaCrawler-main\media_platform\douyin\help.py", line 100, in get_a_bogus_from_js result = subprocess.run( ^^^^^^^^^^^^^^^ File "C:\Users\EDY\Desktop\达人采集助手-portable-v3\达人采集助手-portable-v3\app\runtime\python\Lib\subprocess.py", line 548, in run with Popen(*popenargs, **kwargs) as process: ^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "C:\Users\EDY\Desktop\达人采集助手-portable-v3\达人采集助手-portable-v3\app\runtime\python\Lib\subprocess.py", line 1026, in __init__ self._execute_child(args, executable, preexec_fn, close_fds, File "C:\Users\EDY\Desktop\达人采集助手-portable-v3\达人采集助手-portable-v3\app\runtime\python\Lib\subprocess.py", line 1538, in _execute_child hp, ht, pid, tid = _winapi.CreateProcess(executable, args, ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ FileNotFoundError: [WinError 2] 系统找不到指定的文件。
普通活着 主页采集失败:2026-09-17 16:31:53 MediaCrawler INFO (core.py:77) - [DouYinCrawler] 使用CDP模式启动浏览器 2026-09-17 16:31:53 MediaCrawler INFO (cdp_browser.py:152) - [CDPBrowserManager] Connecting to existing browser on port 9222... 2026-09-17 16:31:53 MediaCrawler INFO (cdp_browser.py:155) - [CDPBrowserManager] Make sure remote debugging is enabled in your browser: chrome://inspect/#remote-debugging 2026-09-17 16:31:53 MediaCrawler INFO (cdp_browser.py:163) - [CDPBrowserManager] Waiting up to 60s for browser CDP connection... 2026-09-17 16:31:53 MediaCrawler INFO (cdp_browser.py:237) - [CDPBrowserManager] CDP port 9222 is accessible 2026-09-17 16:31:53 MediaCrawler INFO (cdp_browser.py:301) - [CDPBrowserManager] Got browser WebSocket URL: ws://localhost:9222/devtools/browser/b6166241-0447-4b83-98ca-78fdbeb71daf 2026-09-17 16:31:53 MediaCrawler INFO (cdp_browser.py:329) - [CDPBrowserManager] Connecting to existing browser via discovered CDP (attempt 1/3): ws://localhost:9222/devtools/browser/b6166241-0447-4b83-98ca-78fdbeb71daf 2026-09-17 16:31:53 MediaCrawler INFO (cdp_browser.py:333) - [CDPBrowserManager] If Chrome asks whether to allow remote debugging, accept it in the already logged-in browser window 2026-09-17 16:31:54 MediaCrawler INFO (cdp_browser.py:364) - [CDPBrowserManager] Successfully connected to browser 2026-09-17 16:31:54 MediaCrawler INFO (cdp_browser.py:365) - [CDPBrowserManager] Browser contexts count: 1 2026-09-17 16:31:54 MediaCrawler INFO (cdp_browser.py:390) - [CDPBrowserManager] Using existing browser context 2026-09-17 16:31:54 MediaCrawler INFO (cdp_browser.py:194) - [CDPBrowserManager] Successfully connected to existing browser 2026-09-17 16:31:54 MediaCrawler INFO (cdp_browser.py:422) - [CDPBrowserManager] Added anti-detection script: libs/stealth.min.js 2026-09-17 16:31:54 MediaCrawler INFO (core.py:450) - [DouYinCrawler] CDP浏览器信息: {'version': '152.0.7977.83', 'contexts_count': 1, 'debug_port': 9222, 'is_connected': True} 2026-09-17 16:31:55 MediaCrawler INFO (core.py:293) - [DouYinCrawler.get_creators_and_videos] Begin get douyin creators 2026-09-17 16:31:55 MediaCrawler INFO (core.py:294) - [DouYinCrawler.get_creators_and_videos] Parsing creator URLs... 2026-09-17 16:31:55 MediaCrawler INFO (core.py:339) - [DouYinCrawler.get_creators_and_videos] Creator concurrency: 2 2026-09-17 16:31:55 MediaCrawler INFO (core.py:301) - [DouYinCrawler.get_creators_and_videos] Parsed sec_user_id: MS4wLjABAAAA7Dv4Pfbq-BlpMpZ7_yBpNEq2BNCBNCMnS7rmaR78NpuJ2aS-8QhwZGhneEKhljEW from MS4wLjABAAAA7Dv4Pfbq-BlpMpZ7_yBpNEq2BNCBNCMnS7rmaR78NpuJ2aS-8QhwZGhneEKhljEW 2026-09-17 16:31:55 MediaCrawler INFO (core.py:301) - [DouYinCrawler.get_creators_and_videos] Parsed sec_user_id: MS4wLjABAAAAj4jCfgYculNXkB9VnC-aG-hvfteBhOuyLPOtqIoDWxBgWSUfhfbL-wVH5plAyLNO from MS4wLjABAAAAj4jCfgYculNXkB9VnC-aG-hvfteBhOuyLPOtqIoDWxBgWSUfhfbL-wVH5plAyLNO 2026-09-17 16:31:56 MediaCrawler INFO (core.py:301) - [DouYinCrawler.get_creators_and_videos] Parsed sec_user_id: MS4wLjABAAAAPJ4PEF3IYjZVVIpdLpXvaha7KN4plh9IVqlCCg22kRg from MS4wLjABAAAAPJ4PEF3IYjZVVIpdLpXvaha7KN4plh9IVqlCCg22kRg 2026-09-17 16:31:56 MediaCrawler INFO (cdp_browser.py:490) - [CDPBrowserManager] Browser connection disconnected 2026-09-17 16:31:56 MediaCrawler INFO (cdp_browser.py:507) - [CDPBrowserManager] Connected to existing browser, skipping process cleanup 2026-09-17 16:31:56 MediaCrawler INFO (core.py:301) - [DouYinCrawler.get_creators_and_videos] Parsed sec_user_id: MS4wLjABAAAAyWYKxw_oNK_teavPvEOU5pEy3cCHKoDdbM_tMeXDaKM from MS4wLjABAAAAyWYKxw_oNK_teavPvEOU5pEy3cCHKoDdbM_tMeXDaKM 2026-09-17 16:31:56 MediaCrawler INFO (core.py:301) - [DouYinCrawler.get_creators_and_videos] Parsed sec_user_id: MS4wLjABAAAAZN4FZfAK6hB4K0zWbg5ZT8Rjy3a6UEfUQUs8-WB1TdE from MS4wLjABAAAAZN4FZfAK6hB4K0zWbg5ZT8Rjy3a6UEfUQUs8-WB1TdE Traceback (most recent call last): File "C:\Users\EDY\Desktop\达人采集助手-portable-v2\app\scripts\run-mediacrawler.py", line 21, in <module> runpy.run_path(os.path.join(crawler_root, "main.py"), run_name="__main__") File "<frozen runpy>", line 291, in run_path File "<frozen runpy>", line 98, in _run_module_code File "<frozen runpy>", line 88, in _run_code File "C:\Users\EDY\Desktop\达人采集助手-portable-v2\app\MediaCrawler-main\main.py", line 174, in <module> run(main, async_cleanup, cleanup_timeout_seconds=15.0, on_first_interrupt=_force_stop) File "C:\Users\EDY\Desktop\达人采集助手-portable-v2\app\MediaCrawler-main\tools\app_runner.py", line 109, in run asyncio.run(_runner()) File "C:\Users\EDY\Desktop\达人采集助手-portable-v2\app\runtime\python\Lib\asyncio\runners.py", line 190, in run return runner.run(main) ^^^^^^^^^^^^^^^^ File "C:\Users\EDY\Desktop\达人采集助手-portable-v2\app\runtime\python\Lib\asyncio\runners.py", line 118, in run return self._loop.run_until_complete(task) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "C:\Users\EDY\Desktop\达人采集助手-portable-v2\app\runtime\python\Lib\asyncio\base_events.py", line 654, in run_until_complete return future.result() ^^^^^^^^^^^^^^^ File "C:\Users\EDY\Desktop\达人采集助手-portable-v2\app\MediaCrawler-main\tools\app_runner.py", line 96, in _runner await app_main() File "C:\Users\EDY\Desktop\达人采集助手-portable-v2\app\MediaCrawler-main\main.py", line 114, in main await crawler.start() File "C:\Users\EDY\Desktop\达人采集助手-portable-v2\app\MediaCrawler-main\media_platform\douyin\core.py", line 141, in start await self.get_creators_and_videos() File "C:\Users\EDY\Desktop\达人采集助手-portable-v2\app\MediaCrawler-main\media_platform\douyin\core.py", line 342, in get_creators_and_videos creator_work_counts = await asyncio.gather( ^^^^^^^^^^^^^^^^^^^^^ File "C:\Users\EDY\Desktop\达人采集助手-portable-v2\app\MediaCrawler-main\media_platform\douyin\core.py", line 306, in fetch_one_creator creator_info: Dict = await self.dy_client.get_user_info(user_id) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "C:\Users\EDY\Desktop\达人采集助手-portable-v2\app\MediaCrawler-main\media_platform\douyin\client.py", line 319, in get_user_info return await self.get(uri, params) ^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "C:\Users\EDY\Desktop\达人采集助手-portable-v2\app\MediaCrawler-main\media_platform\douyin\client.py", line 141, in get await self.__process_req_params(uri, params, headers) File "C:\Users\EDY\Desktop\达人采集助手-portable-v2\app\MediaCrawler-main\media_platform\douyin\client.py", line 120, in __process_req_params a_bogus = await get_a_bogus(uri, query_string, post_data, headers["User-Agent"], self.playwright_page) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "C:\Users\EDY\Desktop\达人采集助手-portable-v2\app\MediaCrawler-main\media_platform\douyin\help.py", line 81, in get_a_bogus return get_a_bogus_from_js(url, params, user_agent) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "C:\Users\EDY\Desktop\达人采集助手-portable-v2\app\MediaCrawler-main\media_platform\douyin\help.py", line 100, in get_a_bogus_from_js result = subprocess.run( ^^^^^^^^^^^^^^^ File "C:\Users\EDY\Desktop\达人采集助手-portable-v2\app\runtime\python\Lib\subprocess.py", line 548, in run with Popen(*popenargs, **kwargs) as process: ^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "C:\Users\EDY\Desktop\达人采集助手-portable-v2\app\runtime\python\Lib\subprocess.py", line 1026, in __init__ self._execute_child(args, executable, preexec_fn, close_fds, File "C:\Users\EDY\Desktop\达人采集助手-portable-v2\app\runtime\python\Lib\subprocess.py", line 1538, in _execute_child hp, ht, pid, tid = _winapi.CreateProcess(executable, args, ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ FileNotFoundError: [WinError 2] 系统找不到指定的文件。
乔治日记 主页采集失败:2026-09-17 16:14:55 MediaCrawler INFO (core.py:77) - [DouYinCrawler] 使用CDP模式启动浏览器 2026-09-17 16:14:55 MediaCrawler INFO (cdp_browser.py:152) - [CDPBrowserManager] Connecting to existing browser on port 9222... 2026-09-17 16:14:55 MediaCrawler INFO (cdp_browser.py:155) - [CDPBrowserManager] Make sure remote debugging is enabled in your browser: chrome://inspect/#remote-debugging 2026-09-17 16:14:55 MediaCrawler INFO (cdp_browser.py:163) - [CDPBrowserManager] Waiting up to 60s for browser CDP connection... 2026-09-17 16:14:55 MediaCrawler INFO (cdp_browser.py:237) - [CDPBrowserManager] CDP port 9222 is accessible 2026-09-17 16:14:55 MediaCrawler INFO (cdp_browser.py:301) - [CDPBrowserManager] Got browser WebSocket URL: ws://localhost:9222/devtools/browser/de0c60f3-2b1a-4fcc-adf5-d6c8e827445b 2026-09-17 16:14:55 MediaCrawler INFO (cdp_browser.py:329) - [CDPBrowserManager] Connecting to existing browser via discovered CDP (attempt 1/3): ws://localhost:9222/devtools/browser/de0c60f3-2b1a-4fcc-adf5-d6c8e827445b 2026-09-17 16:14:55 MediaCrawler INFO (cdp_browser.py:333) - [CDPBrowserManager] If Chrome asks whether to allow remote debugging, accept it in the already logged-in browser window 2026-09-17 16:14:56 MediaCrawler INFO (cdp_browser.py:364) - [CDPBrowserManager] Successfully connected to browser 2026-09-17 16:14:56 MediaCrawler INFO (cdp_browser.py:365) - [CDPBrowserManager] Browser contexts count: 1 2026-09-17 16:14:56 MediaCrawler INFO (cdp_browser.py:390) - [CDPBrowserManager] Using existing browser context 2026-09-17 16:14:56 MediaCrawler INFO (cdp_browser.py:194) - [CDPBrowserManager] Successfully connected to existing browser 2026-09-17 16:14:56 MediaCrawler INFO (cdp_browser.py:422) - [CDPBrowserManager] Added anti-detection script: libs/stealth.min.js 2026-09-17 16:14:56 MediaCrawler INFO (core.py:450) - [DouYinCrawler] CDP浏览器信息: {'version': '152.0.7977.83', 'contexts_count': 1, 'debug_port': 9222, 'is_connected': True} 2026-09-17 16:14:57 MediaCrawler INFO (core.py:293) - [DouYinCrawler.get_creators_and_videos] Begin get douyin creators 2026-09-17 16:14:57 MediaCrawler INFO (core.py:294) - [DouYinCrawler.get_creators_and_videos] Parsing creator URLs... 2026-09-17 16:14:57 MediaCrawler INFO (core.py:339) - [DouYinCrawler.get_creators_and_videos] Creator concurrency: 2 2026-09-17 16:14:57 MediaCrawler INFO (core.py:301) - [DouYinCrawler.get_creators_and_videos] Parsed sec_user_id: MS4wLjABAAAAjJrhhQDmjID51Von5NeD7ql7X-OqqY24yIgiNo1yO4_N7I6GrLR3camYax0mBhCl from MS4wLjABAAAAjJrhhQDmjID51Von5NeD7ql7X-OqqY24yIgiNo1yO4_N7I6GrLR3camYax0mBhCl 2026-09-17 16:14:57 MediaCrawler INFO (core.py:301) - [DouYinCrawler.get_creators_and_videos] Parsed sec_user_id: MS4wLjABAAAAoIynL8rpEuRGXnbaCOQKYjfuBf4enwQtHEjLqjTkw4k from MS4wLjABAAAAoIynL8rpEuRGXnbaCOQKYjfuBf4enwQtHEjLqjTkw4k 2026-09-17 16:14:57 MediaCrawler INFO (core.py:301) - [DouYinCrawler.get_creators_and_videos] Parsed sec_user_id: MS4wLjABAAAAxZwVBBZgOqL4o-D0Q4U-l4bxIu4lEt9AFMIahnmP3gjFQcuyZaFfzm6h9OR_v5Pg from MS4wLjABAAAAxZwVBBZgOqL4o-D0Q4U-l4bxIu4lEt9AFMIahnmP3gjFQcuyZaFfzm6h9OR_v5Pg 2026-09-17 16:14:57 MediaCrawler INFO (cdp_browser.py:490) - [CDPBrowserManager] Browser connection disconnected 2026-09-17 16:14:57 MediaCrawler INFO (cdp_browser.py:507) - [CDPBrowserManager] Connected to existing browser, skipping process cleanup 2026-09-17 16:14:57 MediaCrawler INFO (core.py:301) - [DouYinCrawler.get_creators_and_videos] Parsed sec_user_id: MS4wLjABAAAAyCgoDQuBXz4kL2CbiiUd2wdlLgt6i7TcCVdWQ85Tip0 from MS4wLjABAAAAyCgoDQuBXz4kL2CbiiUd2wdlLgt6i7TcCVdWQ85Tip0 2026-09-17 16:14:57 MediaCrawler INFO (core.py:301) - [DouYinCrawler.get_creators_and_videos] Parsed sec_user_id: MS4wLjABAAAAyMDHJlJKcd8EBU3oUB672_5Q5led88zBZRiVtAKApD4hEh3JNvVNMv0UJ4q-tg5o from MS4wLjABAAAAyMDHJlJKcd8EBU3oUB672_5Q5led88zBZRiVtAKApD4hEh3JNvVNMv0UJ4q-tg5o Traceback (most recent call last): File "C:\Users\EDY\Desktop\达人采集助手-portable-v2\app\scripts\run-mediacrawler.py", line 21, in <module> runpy.run_path(os.path.join(crawler_root, "main.py"), run_name="__main__") File "<frozen runpy>", line 291, in run_path File "<frozen runpy>", line 98, in _run_module_code File "<frozen runpy>", line 88, in _run_code File "C:\Users\EDY\Desktop\达人采集助手-portable-v2\app\MediaCrawler-main\main.py", line 174, in <module> run(main, async_cleanup, cleanup_timeout_seconds=15.0, on_first_interrupt=_force_stop) File "C:\Users\EDY\Desktop\达人采集助手-portable-v2\app\MediaCrawler-main\tools\app_runner.py", line 109, in run asyncio.run(_runner()) File "C:\Users\EDY\Desktop\达人采集助手-portable-v2\app\runtime\python\Lib\asyncio\runners.py", line 190, in run return runner.run(main) ^^^^^^^^^^^^^^^^ File "C:\Users\EDY\Desktop\达人采集助手-portable-v2\app\runtime\python\Lib\asyncio\runners.py", line 118, in run return self._loop.run_until_complete(task) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "C:\Users\EDY\Desktop\达人采集助手-portable-v2\app\runtime\python\Lib\asyncio\base_events.py", line 654, in run_until_complete return future.result() ^^^^^^^^^^^^^^^ File "C:\Users\EDY\Desktop\达人采集助手-portable-v2\app\MediaCrawler-main\tools\app_runner.py", line 96, in _runner await app_main() File "C:\Users\EDY\Desktop\达人采集助手-portable-v2\app\MediaCrawler-main\main.py", line 114, in main await crawler.start() File "C:\Users\EDY\Desktop\达人采集助手-portable-v2\app\MediaCrawler-main\media_platform\douyin\core.py", line 141, in start await self.get_creators_and_videos() File "C:\Users\EDY\Desktop\达人采集助手-portable-v2\app\MediaCrawler-main\media_platform\douyin\core.py", line 342, in get_creators_and_videos creator_work_counts = await asyncio.gather( ^^^^^^^^^^^^^^^^^^^^^ File "C:\Users\EDY\Desktop\达人采集助手-portable-v2\app\MediaCrawler-main\media_platform\douyin\core.py", line 306, in fetch_one_creator creator_info: Dict = await self.dy_client.get_user_info(user_id) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "C:\Users\EDY\Desktop\达人采集助手-portable-v2\app\MediaCrawler-main\media_platform\douyin\client.py", line 319, in get_user_info return await self.get(uri, params) ^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "C:\Users\EDY\Desktop\达人采集助手-portable-v2\app\MediaCrawler-main\media_platform\douyin\client.py", line 141, in get await self.__process_req_params(uri, params, headers) File "C:\Users\EDY\Desktop\达人采集助手-portable-v2\app\MediaCrawler-main\media_platform\douyin\client.py", line 120, in __process_req_params a_bogus = await get_a_bogus(uri, query_string, post_data, headers["User-Agent"], self.playwright_page) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "C:\Users\EDY\Desktop\达人采集助手-portable-v2\app\MediaCrawler-main\media_platform\douyin\help.py", line 81, in get_a_bogus return get_a_bogus_from_js(url, params, user_agent) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "C:\Users\EDY\Desktop\达人采集助手-portable-v2\app\MediaCrawler-main\media_platform\douyin\help.py", line 100, in get_a_bogus_from_js result = subprocess.run( ^^^^^^^^^^^^^^^ File "C:\Users\EDY\Desktop\达人采集助手-portable-v2\app\runtime\python\Lib\subprocess.py", line 548, in run with Popen(*popenargs, **kwargs) as process: ^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "C:\Users\EDY\Desktop\达人采集助手-portable-v2\app\runtime\python\Lib\subprocess.py", line 1026, in __init__ self._execute_child(args, executable, preexec_fn, close_fds, File "C:\Users\EDY\Desktop\达人采集助手-portable-v2\app\runtime\python\Lib\subprocess.py", line 1538, in _execute_child hp, ht, pid, tid = _winapi.CreateProcess(executable, args, ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ FileNotFoundError: [WinError 2] 系统找不到指定的文件。
@默彦 主页采集失败:2026-09-17 14:23:08 MediaCrawler INFO (core.py:77) - [DouYinCrawler] 使用CDP模式启动浏览器 2026-09-17 14:23:08 MediaCrawler INFO (cdp_browser.py:152) - [CDPBrowserManager] Connecting to existing browser on port 9222... 2026-09-17 14:23:08 MediaCrawler INFO (cdp_browser.py:155) - [CDPBrowserManager] Make sure remote debugging is enabled in your browser: chrome://inspect/#remote-debugging 2026-09-17 14:23:08 MediaCrawler INFO (cdp_browser.py:163) - [CDPBrowserManager] Waiting up to 60s for browser CDP connection... 2026-09-17 14:23:08 MediaCrawler INFO (cdp_browser.py:237) - [CDPBrowserManager] CDP port 9222 is accessible 2026-09-17 14:23:09 MediaCrawler INFO (cdp_browser.py:301) - [CDPBrowserManager] Got browser WebSocket URL: ws://localhost:9222/devtools/browser/f079b23d-96c5-4a1d-989c-33629bf0f438 2026-09-17 14:23:09 MediaCrawler INFO (cdp_browser.py:329) - [CDPBrowserManager] Connecting to existing browser via discovered CDP (attempt 1/3): ws://localhost:9222/devtools/browser/f079b23d-96c5-4a1d-989c-33629bf0f438 2026-09-17 14:23:09 MediaCrawler INFO (cdp_browser.py:333) - [CDPBrowserManager] If Chrome asks whether to allow remote debugging, accept it in the already logged-in browser window 2026-09-17 14:23:15 MediaCrawler INFO (cdp_browser.py:364) - [CDPBrowserManager] Successfully connected to browser 2026-09-17 14:23:15 MediaCrawler INFO (cdp_browser.py:365) - [CDPBrowserManager] Browser contexts count: 1 2026-09-17 14:23:15 MediaCrawler INFO (cdp_browser.py:390) - [CDPBrowserManager] Using existing browser context 2026-09-17 14:23:15 MediaCrawler INFO (cdp_browser.py:194) - [CDPBrowserManager] Successfully connected to existing browser 2026-09-17 14:23:15 MediaCrawler INFO (cdp_browser.py:422) - [CDPBrowserManager] Added anti-detection script: libs/stealth.min.js 2026-09-17 14:23:15 MediaCrawler INFO (core.py:450) - [DouYinCrawler] CDP浏览器信息: {'version': '152.0.7977.83', 'contexts_count': 1, 'debug_port': 9222, 'is_connected': True} 2026-09-17 14:23:17 MediaCrawler INFO (core.py:293) - [DouYinCrawler.get_creators_and_videos] Begin get douyin creators 2026-09-17 14:23:17 MediaCrawler INFO (core.py:294) - [DouYinCrawler.get_creators_and_videos] Parsing creator URLs... 2026-09-17 14:23:17 MediaCrawler INFO (core.py:339) - [DouYinCrawler.get_creators_and_videos] Creator concurrency: 2 2026-09-17 14:23:17 MediaCrawler INFO (core.py:301) - [DouYinCrawler.get_creators_and_videos] Parsed sec_user_id: MS4wLjABAAAA5J1at3eNYvBIq0LPStmnic3qki9abHbVip06xsmLR5Q from MS4wLjABAAAA5J1at3eNYvBIq0LPStmnic3qki9abHbVip06xsmLR5Q 2026-09-17 14:23:17 MediaCrawler INFO (core.py:301) - [DouYinCrawler.get_creators_and_videos] Parsed sec_user_id: MS4wLjABAAAAKGlyiiqm6MURKXfZ--_XQ_8gBuieitxG5ssup1lV49U from MS4wLjABAAAAKGlyiiqm6MURKXfZ--_XQ_8gBuieitxG5ssup1lV49U 2026-09-17 14:23:18 MediaCrawler INFO (core.py:301) - [DouYinCrawler.get_creators_and_videos] Parsed sec_user_id: MS4wLjABAAAAmboKEPDcsZorAd48osemDt-nJ1lCj4jI2mGvI_CNP5k from MS4wLjABAAAAmboKEPDcsZorAd48osemDt-nJ1lCj4jI2mGvI_CNP5k 2026-09-17 14:23:18 MediaCrawler INFO (cdp_browser.py:490) - [CDPBrowserManager] Browser connection disconnected 2026-09-17 14:23:18 MediaCrawler INFO (cdp_browser.py:507) - [CDPBrowserManager] Connected to existing browser, skipping process cleanup 2026-09-17 14:23:18 MediaCrawler INFO (core.py:301) - [DouYinCrawler.get_creators_and_videos] Parsed sec_user_id: MS4wLjABAAAAmVpfR85F39psDPXGeEBcEtjA4_VSOwFRJxzkFAaBlr6TTi00oD5k09f-OMXlTbiJ from MS4wLjABAAAAmVpfR85F39psDPXGeEBcEtjA4_VSOwFRJxzkFAaBlr6TTi00oD5k09f-OMXlTbiJ 2026-09-17 14:23:18 MediaCrawler INFO (core.py:301) - [DouYinCrawler.get_creators_and_videos] Parsed sec_user_id: MS4wLjABAAAAqZjPCuJ3HQreEUAnK-Qo_AY03Y_mKRb0Q63zz7-KLnqgQU52rcWGtpoGaho_lFa3 from MS4wLjABAAAAqZjPCuJ3HQreEUAnK-Qo_AY03Y_mKRb0Q63zz7-KLnqgQU52rcWGtpoGaho_lFa3 Traceback (most recent call last): File "C:\Users\EDY\Documents\流程\kol-crm-next\scripts\run-mediacrawler.py", line 21, in <module> runpy.run_path(os.path.join(crawler_root, "main.py"), run_name="__main__") File "<frozen runpy>", line 291, in run_path File "<frozen runpy>", line 98, in _run_module_code File "<frozen runpy>", line 88, in _run_code File "C:\Users\EDY\Desktop\达人采集助手-portable-v3\达人采集助手-portable-v3\app\MediaCrawler-main\main.py", line 174, in <module> run(main, async_cleanup, cleanup_timeout_seconds=15.0, on_first_interrupt=_force_stop) File "C:\Users\EDY\Desktop\达人采集助手-portable-v3\达人采集助手-portable-v3\app\MediaCrawler-main\tools\app_runner.py", line 109, in run asyncio.run(_runner()) File "C:\Users\EDY\Desktop\达人采集助手-portable-v3\达人采集助手-portable-v3\app\runtime\python\Lib\asyncio\runners.py", line 190, in run return runner.run(main) ^^^^^^^^^^^^^^^^ File "C:\Users\EDY\Desktop\达人采集助手-portable-v3\达人采集助手-portable-v3\app\runtime\python\Lib\asyncio\runners.py", line 118, in run return self._loop.run_until_complete(task) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "C:\Users\EDY\Desktop\达人采集助手-portable-v3\达人采集助手-portable-v3\app\runtime\python\Lib\asyncio\base_events.py", line 654, in run_until_complete return future.result() ^^^^^^^^^^^^^^^ File "C:\Users\EDY\Desktop\达人采集助手-portable-v3\达人采集助手-portable-v3\app\MediaCrawler-main\tools\app_runner.py", line 96, in _runner await app_main() File "C:\Users\EDY\Desktop\达人采集助手-portable-v3\达人采集助手-portable-v3\app\MediaCrawler-main\main.py", line 114, in main await crawler.start() File "C:\Users\EDY\Desktop\达人采集助手-portable-v3\达人采集助手-portable-v3\app\MediaCrawler-main\media_platform\douyin\core.py", line 141, in start await self.get_creators_and_videos() File "C:\Users\EDY\Desktop\达人采集助手-portable-v3\达人采集助手-portable-v3\app\MediaCrawler-main\media_platform\douyin\core.py", line 342, in get_creators_and_videos creator_work_counts = await asyncio.gather( ^^^^^^^^^^^^^^^^^^^^^ File "C:\Users\EDY\Desktop\达人采集助手-portable-v3\达人采集助手-portable-v3\app\MediaCrawler-main\media_platform\douyin\core.py", line 306, in fetch_one_creator creator_info: Dict = await self.dy_client.get_user_info(user_id) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "C:\Users\EDY\Desktop\达人采集助手-portable-v3\达人采集助手-portable-v3\app\MediaCrawler-main\media_platform\douyin\client.py", line 319, in get_user_info return await self.get(uri, params) ^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "C:\Users\EDY\Desktop\达人采集助手-portable-v3\达人采集助手-portable-v3\app\MediaCrawler-main\media_platform\douyin\client.py", line 141, in get await self.__process_req_params(uri, params, headers) File "C:\Users\EDY\Desktop\达人采集助手-portable-v3\达人采集助手-portable-v3\app\MediaCrawler-main\media_platform\douyin\client.py", line 120, in __process_req_params a_bogus = await get_a_bogus(uri, query_string, post_data, headers["User-Agent"], self.playwright_page) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "C:\Users\EDY\Desktop\达人采集助手-portable-v3\达人采集助手-portable-v3\app\MediaCrawler-main\media_platform\douyin\help.py", line 81, in get_a_bogus return get_a_bogus_from_js(url, params, user_agent) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "C:\Users\EDY\Desktop\达人采集助手-portable-v3\达人采集助手-portable-v3\app\MediaCrawler-main\media_platform\douyin\help.py", line 100, in get_a_bogus_from_js result = subprocess.run( ^^^^^^^^^^^^^^^ File "C:\Users\EDY\Desktop\达人采集助手-portable-v3\达人采集助手-portable-v3\app\runtime\python\Lib\subprocess.py", line 548, in run with Popen(*popenargs, **kwargs) as process: ^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "C:\Users\EDY\Desktop\达人采集助手-portable-v3\达人采集助手-portable-v3\app\runtime\python\Lib\subprocess.py", line 1026, in __init__ self._execute_child(args, executable, preexec_fn, close_fds, File "C:\Users\EDY\Desktop\达人采集助手-portable-v3\达人采集助手-portable-v3\app\runtime\python\Lib\subprocess.py", line 1538, in _execute_child hp, ht, pid, tid = _winapi.CreateProcess(executable, args, ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ FileNotFoundError: [WinError 2] 系统找不到指定的文件。
村上种树 主页采集失败:2026-09-17 14:25:19 MediaCrawler INFO (core.py:77) - [DouYinCrawler] 使用CDP模式启动浏览器 2026-09-17 14:25:19 MediaCrawler INFO (cdp_browser.py:152) - [CDPBrowserManager] Connecting to existing browser on port 9222... 2026-09-17 14:25:19 MediaCrawler INFO (cdp_browser.py:155) - [CDPBrowserManager] Make sure remote debugging is enabled in your browser: chrome://inspect/#remote-debugging 2026-09-17 14:25:19 MediaCrawler INFO (cdp_browser.py:163) - [CDPBrowserManager] Waiting up to 60s for browser CDP connection... 2026-09-17 14:25:19 MediaCrawler INFO (cdp_browser.py:237) - [CDPBrowserManager] CDP port 9222 is accessible 2026-09-17 14:25:19 MediaCrawler INFO (cdp_browser.py:301) - [CDPBrowserManager] Got browser WebSocket URL: ws://localhost:9222/devtools/browser/dd177f4d-bf6e-46f8-95b1-c136a2211654 2026-09-17 14:25:19 MediaCrawler INFO (cdp_browser.py:329) - [CDPBrowserManager] Connecting to existing browser via discovered CDP (attempt 1/3): ws://localhost:9222/devtools/browser/dd177f4d-bf6e-46f8-95b1-c136a2211654 2026-09-17 14:25:19 MediaCrawler INFO (cdp_browser.py:333) - [CDPBrowserManager] If Chrome asks whether to allow remote debugging, accept it in the already logged-in browser window 2026-09-17 14:25:22 MediaCrawler INFO (cdp_browser.py:364) - [CDPBrowserManager] Successfully connected to browser 2026-09-17 14:25:22 MediaCrawler INFO (cdp_browser.py:365) - [CDPBrowserManager] Browser contexts count: 1 2026-09-17 14:25:22 MediaCrawler INFO (cdp_browser.py:390) - [CDPBrowserManager] Using existing browser context 2026-09-17 14:25:22 MediaCrawler INFO (cdp_browser.py:194) - [CDPBrowserManager] Successfully connected to existing browser 2026-09-17 14:25:25 MediaCrawler INFO (cdp_browser.py:422) - [CDPBrowserManager] Added anti-detection script: libs/stealth.min.js 2026-09-17 14:25:25 MediaCrawler INFO (core.py:450) - [DouYinCrawler] CDP浏览器信息: {'version': '152.0.7977.83', 'contexts_count': 1, 'debug_port': 9222, 'is_connected': True} 2026-09-17 14:25:27 MediaCrawler INFO (core.py:293) - [DouYinCrawler.get_creators_and_videos] Begin get douyin creators 2026-09-17 14:25:27 MediaCrawler INFO (core.py:294) - [DouYinCrawler.get_creators_and_videos] Parsing creator URLs... 2026-09-17 14:25:27 MediaCrawler INFO (core.py:339) - [DouYinCrawler.get_creators_and_videos] Creator concurrency: 2 2026-09-17 14:25:27 MediaCrawler INFO (core.py:301) - [DouYinCrawler.get_creators_and_videos] Parsed sec_user_id: MS4wLjABAAAAHJn1n52sPggn_QNyNxunPk2-0t-oiuFO6aK8nVcO3HjlMosy-t_Hp8EursruwaMt from MS4wLjABAAAAHJn1n52sPggn_QNyNxunPk2-0t-oiuFO6aK8nVcO3HjlMosy-t_Hp8EursruwaMt 2026-09-17 14:25:27 MediaCrawler INFO (core.py:301) - [DouYinCrawler.get_creators_and_videos] Parsed sec_user_id: MS4wLjABAAAAKpfsUujf9V9ojHgB4JtAnHIlGiWoUey3U5fBnaqXGBI from MS4wLjABAAAAKpfsUujf9V9ojHgB4JtAnHIlGiWoUey3U5fBnaqXGBI 2026-09-17 14:25:28 MediaCrawler INFO (core.py:301) - [DouYinCrawler.get_creators_and_videos] Parsed sec_user_id: MS4wLjABAAAAOiyWd0V2y5S3dHfv_2-WHSf8J8Pd5OUWltcmC80LUM-1KLMBvvOK1F8Jaf0IZfcQ from MS4wLjABAAAAOiyWd0V2y5S3dHfv_2-WHSf8J8Pd5OUWltcmC80LUM-1KLMBvvOK1F8Jaf0IZfcQ 2026-09-17 14:25:28 MediaCrawler INFO (cdp_browser.py:490) - [CDPBrowserManager] Browser connection disconnected 2026-09-17 14:25:28 MediaCrawler INFO (cdp_browser.py:507) - [CDPBrowserManager] Connected to existing browser, skipping process cleanup 2026-09-17 14:25:28 MediaCrawler INFO (core.py:301) - [DouYinCrawler.get_creators_and_videos] Parsed sec_user_id: MS4wLjABAAAApoTVRwtjRkH9-71u8STF4XVp2FmcWObNTDSXlYCdwyY from MS4wLjABAAAApoTVRwtjRkH9-71u8STF4XVp2FmcWObNTDSXlYCdwyY 2026-09-17 14:25:28 MediaCrawler INFO (core.py:301) - [DouYinCrawler.get_creators_and_videos] Parsed sec_user_id: MS4wLjABAAAASR13xAfkF1Z3qSKPHxfPCGHzgxdl-1qthC_cxOzDGpSDcGCao8NkVraM15mJk2K_ from MS4wLjABAAAASR13xAfkF1Z3qSKPHxfPCGHzgxdl-1qthC_cxOzDGpSDcGCao8NkVraM15mJk2K_ Traceback (most recent call last): File "C:\Users\EDY\Documents\流程\kol-crm-next\scripts\run-mediacrawler.py", line 21, in <module> runpy.run_path(os.path.join(crawler_root, "main.py"), run_name="__main__") File "<frozen runpy>", line 291, in run_path File "<frozen runpy>", line 98, in _run_module_code File "<frozen runpy>", line 88, in _run_code File "C:\Users\EDY\Desktop\达人采集助手-portable-v3\达人采集助手-portable-v3\app\MediaCrawler-main\main.py", line 174, in <module> run(main, async_cleanup, cleanup_timeout_seconds=15.0, on_first_interrupt=_force_stop) File "C:\Users\EDY\Desktop\达人采集助手-portable-v3\达人采集助手-portable-v3\app\MediaCrawler-main\tools\app_runner.py", line 109, in run asyncio.run(_runner()) File "C:\Users\EDY\Desktop\达人采集助手-portable-v3\达人采集助手-portable-v3\app\runtime\python\Lib\asyncio\runners.py", line 190, in run return runner.run(main) ^^^^^^^^^^^^^^^^ File "C:\Users\EDY\Desktop\达人采集助手-portable-v3\达人采集助手-portable-v3\app\runtime\python\Lib\asyncio\runners.py", line 118, in run return self._loop.run_until_complete(task) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "C:\Users\EDY\Desktop\达人采集助手-portable-v3\达人采集助手-portable-v3\app\runtime\python\Lib\asyncio\base_events.py", line 654, in run_until_complete return future.result() ^^^^^^^^^^^^^^^ File "C:\Users\EDY\Desktop\达人采集助手-portable-v3\达人采集助手-portable-v3\app\MediaCrawler-main\tools\app_runner.py", line 96, in _runner await app_main() File "C:\Users\EDY\Desktop\达人采集助手-portable-v3\达人采集助手-portable-v3\app\MediaCrawler-main\main.py", line 114, in main await crawler.start() File "C:\Users\EDY\Desktop\达人采集助手-portable-v3\达人采集助手-portable-v3\app\MediaCrawler-main\media_platform\douyin\core.py", line 141, in start await self.get_creators_and_videos() File "C:\Users\EDY\Desktop\达人采集助手-portable-v3\达人采集助手-portable-v3\app\MediaCrawler-main\media_platform\douyin\core.py", line 342, in get_creators_and_videos creator_work_counts = await asyncio.gather( ^^^^^^^^^^^^^^^^^^^^^ File "C:\Users\EDY\Desktop\达人采集助手-portable-v3\达人采集助手-portable-v3\app\MediaCrawler-main\media_platform\douyin\core.py", line 306, in fetch_one_creator creator_info: Dict = await self.dy_client.get_user_info(user_id) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "C:\Users\EDY\Desktop\达人采集助手-portable-v3\达人采集助手-portable-v3\app\MediaCrawler-main\media_platform\douyin\client.py", line 319, in get_user_info return await self.get(uri, params) ^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "C:\Users\EDY\Desktop\达人采集助手-portable-v3\达人采集助手-portable-v3\app\MediaCrawler-main\media_platform\douyin\client.py", line 141, in get await self.__process_req_params(uri, params, headers) File "C:\Users\EDY\Desktop\达人采集助手-portable-v3\达人采集助手-portable-v3\app\MediaCrawler-main\media_platform\douyin\client.py", line 120, in __process_req_params a_bogus = await get_a_bogus(uri, query_string, post_data, headers["User-Agent"], self.playwright_page) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "C:\Users\EDY\Desktop\达人采集助手-portable-v3\达人采集助手-portable-v3\app\MediaCrawler-main\media_platform\douyin\help.py", line 81, in get_a_bogus return get_a_bogus_from_js(url, params, user_agent) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "C:\Users\EDY\Desktop\达人采集助手-portable-v3\达人采集助手-portable-v3\app\MediaCrawler-main\media_platform\douyin\help.py", line 100, in get_a_bogus_from_js result = subprocess.run( ^^^^^^^^^^^^^^^ File "C:\Users\EDY\Desktop\达人采集助手-portable-v3\达人采集助手-portable-v3\app\runtime\python\Lib\subprocess.py", line 548, in run with Popen(*popenargs, **kwargs) as process: ^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "C:\Users\EDY\Desktop\达人采集助手-portable-v3\达人采集助手-portable-v3\app\runtime\python\Lib\subprocess.py", line 1026, in __init__ self._execute_child(args, executable, preexec_fn, close_fds, File "C:\Users\EDY\Desktop\达人采集助手-portable-v3\达人采集助手-portable-v3\app\runtime\python\Lib\subprocess.py", line 1538, in _execute_child hp, ht, pid, tid = _winapi.CreateProcess(executable, args, ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ FileNotFoundError: [WinError 2] 系统找不到指定的文件。
刘同学y 主页采集失败:2026-09-17 14:12:16 MediaCrawler INFO (core.py:77) - [DouYinCrawler] 使用CDP模式启动浏览器 2026-09-17 14:12:16 MediaCrawler INFO (cdp_browser.py:152) - [CDPBrowserManager] Connecting to existing browser on port 9222... 2026-09-17 14:12:16 MediaCrawler INFO (cdp_browser.py:155) - [CDPBrowserManager] Make sure remote debugging is enabled in your browser: chrome://inspect/#remote-debugging 2026-09-17 14:12:16 MediaCrawler INFO (cdp_browser.py:163) - [CDPBrowserManager] Waiting up to 60s for browser CDP connection... 2026-09-17 14:12:16 MediaCrawler INFO (cdp_browser.py:237) - [CDPBrowserManager] CDP port 9222 is accessible 2026-09-17 14:12:16 MediaCrawler INFO (cdp_browser.py:301) - [CDPBrowserManager] Got browser WebSocket URL: ws://localhost:9222/devtools/browser/6ce3feea-9ba3-4569-b110-24a4c42721c6 2026-09-17 14:12:16 MediaCrawler INFO (cdp_browser.py:329) - [CDPBrowserManager] Connecting to existing browser via discovered CDP (attempt 1/3): ws://localhost:9222/devtools/browser/6ce3feea-9ba3-4569-b110-24a4c42721c6 2026-09-17 14:12:16 MediaCrawler INFO (cdp_browser.py:333) - [CDPBrowserManager] If Chrome asks whether to allow remote debugging, accept it in the already logged-in browser window 2026-09-17 14:12:16 MediaCrawler INFO (cdp_browser.py:364) - [CDPBrowserManager] Successfully connected to browser 2026-09-17 14:12:16 MediaCrawler INFO (cdp_browser.py:365) - [CDPBrowserManager] Browser contexts count: 1 2026-09-17 14:12:16 MediaCrawler INFO (cdp_browser.py:390) - [CDPBrowserManager] Using existing browser context 2026-09-17 14:12:16 MediaCrawler INFO (cdp_browser.py:194) - [CDPBrowserManager] Successfully connected to existing browser 2026-09-17 14:12:16 MediaCrawler INFO (cdp_browser.py:422) - [CDPBrowserManager] Added anti-detection script: libs/stealth.min.js 2026-09-17 14:12:16 MediaCrawler INFO (core.py:450) - [DouYinCrawler] CDP浏览器信息: {'version': '152.0.7977.83', 'contexts_count': 1, 'debug_port': 9222, 'is_connected': True} 2026-09-17 14:12:18 MediaCrawler INFO (core.py:293) - [DouYinCrawler.get_creators_and_videos] Begin get douyin creators 2026-09-17 14:12:18 MediaCrawler INFO (core.py:294) - [DouYinCrawler.get_creators_and_videos] Parsing creator URLs... 2026-09-17 14:12:18 MediaCrawler INFO (core.py:339) - [DouYinCrawler.get_creators_and_videos] Creator concurrency: 2 2026-09-17 14:12:18 MediaCrawler INFO (core.py:301) - [DouYinCrawler.get_creators_and_videos] Parsed sec_user_id: MS4wLjABAAAAkR9R-pArinu4xWnFr-tvArOg5FG4Tpqe2_oFCqnxqeM from MS4wLjABAAAAkR9R-pArinu4xWnFr-tvArOg5FG4Tpqe2_oFCqnxqeM 2026-09-17 14:12:18 MediaCrawler INFO (core.py:301) - [DouYinCrawler.get_creators_and_videos] Parsed sec_user_id: MS4wLjABAAAAReWqw77TTVPbTLtNwOygy86UEy5bdfNVSK2IKvcS2MGSlC2Fn4r3EynK6H5qRo7q from MS4wLjABAAAAReWqw77TTVPbTLtNwOygy86UEy5bdfNVSK2IKvcS2MGSlC2Fn4r3EynK6H5qRo7q 2026-09-17 14:12:18 MediaCrawler INFO (cdp_browser.py:490) - [CDPBrowserManager] Browser connection disconnected 2026-09-17 14:12:18 MediaCrawler INFO (cdp_browser.py:507) - [CDPBrowserManager] Connected to existing browser, skipping process cleanup Traceback (most recent call last): File "C:\Users\EDY\Documents\流程\kol-crm-next\scripts\run-mediacrawler.py", line 21, in <module> runpy.run_path(os.path.join(crawler_root, "main.py"), run_name="__main__") File "<frozen runpy>", line 291, in run_path File "<frozen runpy>", line 98, in _run_module_code File "<frozen runpy>", line 88, in _run_code File "C:\Users\EDY\Desktop\达人采集助手-portable-v3\达人采集助手-portable-v3\app\MediaCrawler-main\main.py", line 174, in <module> run(main, async_cleanup, cleanup_timeout_seconds=15.0, on_first_interrupt=_force_stop) File "C:\Users\EDY\Desktop\达人采集助手-portable-v3\达人采集助手-portable-v3\app\MediaCrawler-main\tools\app_runner.py", line 109, in run asyncio.run(_runner()) File "C:\Users\EDY\Desktop\达人采集助手-portable-v3\达人采集助手-portable-v3\app\runtime\python\Lib\asyncio\runners.py", line 190, in run return runner.run(main) ^^^^^^^^^^^^^^^^ File "C:\Users\EDY\Desktop\达人采集助手-portable-v3\达人采集助手-portable-v3\app\runtime\python\Lib\asyncio\runners.py", line 118, in run return self._loop.run_until_complete(task) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "C:\Users\EDY\Desktop\达人采集助手-portable-v3\达人采集助手-portable-v3\app\runtime\python\Lib\asyncio\base_events.py", line 654, in run_until_complete return future.result() ^^^^^^^^^^^^^^^ File "C:\Users\EDY\Desktop\达人采集助手-portable-v3\达人采集助手-portable-v3\app\MediaCrawler-main\tools\app_runner.py", line 96, in _runner await app_main() File "C:\Users\EDY\Desktop\达人采集助手-portable-v3\达人采集助手-portable-v3\app\MediaCrawler-main\main.py", line 114, in main await crawler.start() File "C:\Users\EDY\Desktop\达人采集助手-portable-v3\达人采集助手-portable-v3\app\MediaCrawler-main\media_platform\douyin\core.py", line 141, in start await self.get_creators_and_videos() File "C:\Users\EDY\Desktop\达人采集助手-portable-v3\达人采集助手-portable-v3\app\MediaCrawler-main\media_platform\douyin\core.py", line 342, in get_creators_and_videos creator_work_counts = await asyncio.gather( ^^^^^^^^^^^^^^^^^^^^^ File "C:\Users\EDY\Desktop\达人采集助手-portable-v3\达人采集助手-portable-v3\app\MediaCrawler-main\media_platform\douyin\core.py", line 306, in fetch_one_creator creator_info: Dict = await self.dy_client.get_user_info(user_id) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "C:\Users\EDY\Desktop\达人采集助手-portable-v3\达人采集助手-portable-v3\app\MediaCrawler-main\media_platform\douyin\client.py", line 319, in get_user_info return await self.get(uri, params) ^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "C:\Users\EDY\Desktop\达人采集助手-portable-v3\达人采集助手-portable-v3\app\MediaCrawler-main\media_platform\douyin\client.py", line 141, in get await self.__process_req_params(uri, params, headers) File "C:\Users\EDY\Desktop\达人采集助手-portable-v3\达人采集助手-portable-v3\app\MediaCrawler-main\media_platform\douyin\client.py", line 120, in __process_req_params a_bogus = await get_a_bogus(uri, query_string, post_data, headers["User-Agent"], self.playwright_page) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "C:\Users\EDY\Desktop\达人采集助手-portable-v3\达人采集助手-portable-v3\app\MediaCrawler-main\media_platform\douyin\help.py", line 81, in get_a_bogus return get_a_bogus_from_js(url, params, user_agent) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "C:\Users\EDY\Desktop\达人采集助手-portable-v3\达人采集助手-portable-v3\app\MediaCrawler-main\media_platform\douyin\help.py", line 100, in get_a_bogus_from_js result = subprocess.run( ^^^^^^^^^^^^^^^ File "C:\Users\EDY\Desktop\达人采集助手-portable-v3\达人采集助手-portable-v3\app\runtime\python\Lib\subprocess.py", line 548, in run with Popen(*popenargs, **kwargs) as process: ^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "C:\Users\EDY\Desktop\达人采集助手-portable-v3\达人采集助手-portable-v3\app\runtime\python\Lib\subprocess.py", line 1026, in __init__ self._execute_child(args, executable, preexec_fn, close_fds, File "C:\Users\EDY\Desktop\达人采集助手-portable-v3\达人采集助手-portable-v3\app\runtime\python\Lib\subprocess.py", line 1538, in _execute_child hp, ht, pid, tid = _winapi.CreateProcess(executable, args, ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ FileNotFoundError: [WinError 2] 系统找不到指定的文件。
lz1mo 主页采集失败:MediaCrawler 主页采集超时(90 秒)
陈润扬 主页采集失败:2026-09-17 16:17:13 MediaCrawler INFO (core.py:77) - [DouYinCrawler] 使用CDP模式启动浏览器 2026-09-17 16:17:13 MediaCrawler INFO (cdp_browser.py:152) - [CDPBrowserManager] Connecting to existing browser on port 9222... 2026-09-17 16:17:13 MediaCrawler INFO (cdp_browser.py:155) - [CDPBrowserManager] Make sure remote debugging is enabled in your browser: chrome://inspect/#remote-debugging 2026-09-17 16:17:13 MediaCrawler INFO (cdp_browser.py:163) - [CDPBrowserManager] Waiting up to 60s for browser CDP connection... 2026-09-17 16:17:14 MediaCrawler INFO (cdp_browser.py:237) - [CDPBrowserManager] CDP port 9222 is accessible 2026-09-17 16:17:14 MediaCrawler INFO (cdp_browser.py:301) - [CDPBrowserManager] Got browser WebSocket URL: ws://localhost:9222/devtools/browser/b6166241-0447-4b83-98ca-78fdbeb71daf 2026-09-17 16:17:14 MediaCrawler INFO (cdp_browser.py:329) - [CDPBrowserManager] Connecting to existing browser via discovered CDP (attempt 1/3): ws://localhost:9222/devtools/browser/b6166241-0447-4b83-98ca-78fdbeb71daf 2026-09-17 16:17:14 MediaCrawler INFO (cdp_browser.py:333) - [CDPBrowserManager] If Chrome asks whether to allow remote debugging, accept it in the already logged-in browser window 2026-09-17 16:17:14 MediaCrawler INFO (cdp_browser.py:364) - [CDPBrowserManager] Successfully connected to browser 2026-09-17 16:17:14 MediaCrawler INFO (cdp_browser.py:365) - [CDPBrowserManager] Browser contexts count: 1 2026-09-17 16:17:14 MediaCrawler INFO (cdp_browser.py:390) - [CDPBrowserManager] Using existing browser context 2026-09-17 16:17:14 MediaCrawler INFO (cdp_browser.py:194) - [CDPBrowserManager] Successfully connected to existing browser 2026-09-17 16:17:14 MediaCrawler INFO (cdp_browser.py:422) - [CDPBrowserManager] Added anti-detection script: libs/stealth.min.js 2026-09-17 16:17:14 MediaCrawler INFO (core.py:450) - [DouYinCrawler] CDP浏览器信息: {'version': '152.0.7977.83', 'contexts_count': 1, 'debug_port': 9222, 'is_connected': True} 2026-09-17 16:17:18 MediaCrawler INFO (core.py:293) - [DouYinCrawler.get_creators_and_videos] Begin get douyin creators 2026-09-17 16:17:18 MediaCrawler INFO (core.py:294) - [DouYinCrawler.get_creators_and_videos] Parsing creator URLs... 2026-09-17 16:17:18 MediaCrawler INFO (core.py:339) - [DouYinCrawler.get_creators_and_videos] Creator concurrency: 2 2026-09-17 16:17:18 MediaCrawler INFO (core.py:301) - [DouYinCrawler.get_creators_and_videos] Parsed sec_user_id: MS4wLjABAAAAGnlBtD4-AsC8Ezxp9dgKUyV1GiM2RiMihANay61ZmUs from MS4wLjABAAAAGnlBtD4-AsC8Ezxp9dgKUyV1GiM2RiMihANay61ZmUs 2026-09-17 16:17:18 MediaCrawler INFO (core.py:301) - [DouYinCrawler.get_creators_and_videos] Parsed sec_user_id: MS4wLjABAAAAi0_jiOyKGmyXvRlgE9mqEIMaU2W9s5fbNmyzbOUeqGY from MS4wLjABAAAAi0_jiOyKGmyXvRlgE9mqEIMaU2W9s5fbNmyzbOUeqGY 2026-09-17 16:17:18 MediaCrawler INFO (core.py:301) - [DouYinCrawler.get_creators_and_videos] Parsed sec_user_id: MS4wLjABAAAAmaMNwqGz64X_iW0WLCQn204vTjM41tex3s990hacBPg from MS4wLjABAAAAmaMNwqGz64X_iW0WLCQn204vTjM41tex3s990hacBPg 2026-09-17 16:17:18 MediaCrawler INFO (cdp_browser.py:490) - [CDPBrowserManager] Browser connection disconnected 2026-09-17 16:17:18 MediaCrawler INFO (cdp_browser.py:507) - [CDPBrowserManager] Connected to existing browser, skipping process cleanup 2026-09-17 16:17:18 MediaCrawler INFO (core.py:301) - [DouYinCrawler.get_creators_and_videos] Parsed sec_user_id: MS4wLjABAAAAw-pkFR8XUgai9LX22iR33Ybn_glmy2IFgPFbQEr32gmG_sDF6WB6bAVWljgzRY5- from MS4wLjABAAAAw-pkFR8XUgai9LX22iR33Ybn_glmy2IFgPFbQEr32gmG_sDF6WB6bAVWljgzRY5- 2026-09-17 16:17:18 MediaCrawler INFO (core.py:301) - [DouYinCrawler.get_creators_and_videos] Parsed sec_user_id: MS4wLjABAAAAYX8rlU8_TmzMyvkYTwk9XGCVvU9rwDa46hZgTUOZJ-UpFsP52mOYE_gJ9FSLkNW9 from MS4wLjABAAAAYX8rlU8_TmzMyvkYTwk9XGCVvU9rwDa46hZgTUOZJ-UpFsP52mOYE_gJ9FSLkNW9 Traceback (most recent call last): File "C:\Users\EDY\Desktop\达人采集助手-portable-v2\app\scripts\run-mediacrawler.py", line 21, in <module> runpy.run_path(os.path.join(crawler_root, "main.py"), run_name="__main__") File "<frozen runpy>", line 291, in run_path File "<frozen runpy>", line 98, in _run_module_code File "<frozen runpy>", line 88, in _run_code File "C:\Users\EDY\Desktop\达人采集助手-portable-v2\app\MediaCrawler-main\main.py", line 174, in <module> run(main, async_cleanup, cleanup_timeout_seconds=15.0, on_first_interrupt=_force_stop) File "C:\Users\EDY\Desktop\达人采集助手-portable-v2\app\MediaCrawler-main\tools\app_runner.py", line 109, in run asyncio.run(_runner()) File "C:\Users\EDY\Desktop\达人采集助手-portable-v2\app\runtime\python\Lib\asyncio\runners.py", line 190, in run return runner.run(main) ^^^^^^^^^^^^^^^^ File "C:\Users\EDY\Desktop\达人采集助手-portable-v2\app\runtime\python\Lib\asyncio\runners.py", line 118, in run return self._loop.run_until_complete(task) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "C:\Users\EDY\Desktop\达人采集助手-portable-v2\app\runtime\python\Lib\asyncio\base_events.py", line 654, in run_until_complete return future.result() ^^^^^^^^^^^^^^^ File "C:\Users\EDY\Desktop\达人采集助手-portable-v2\app\MediaCrawler-main\tools\app_runner.py", line 96, in _runner await app_main() File "C:\Users\EDY\Desktop\达人采集助手-portable-v2\app\MediaCrawler-main\main.py", line 114, in main await crawler.start() File "C:\Users\EDY\Desktop\达人采集助手-portable-v2\app\MediaCrawler-main\media_platform\douyin\core.py", line 141, in start await self.get_creators_and_videos() File "C:\Users\EDY\Desktop\达人采集助手-portable-v2\app\MediaCrawler-main\media_platform\douyin\core.py", line 342, in get_creators_and_videos creator_work_counts = await asyncio.gather( ^^^^^^^^^^^^^^^^^^^^^ File "C:\Users\EDY\Desktop\达人采集助手-portable-v2\app\MediaCrawler-main\media_platform\douyin\core.py", line 306, in fetch_one_creator creator_info: Dict = await self.dy_client.get_user_info(user_id) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "C:\Users\EDY\Desktop\达人采集助手-portable-v2\app\MediaCrawler-main\media_platform\douyin\client.py", line 319, in get_user_info return await self.get(uri, params) ^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "C:\Users\EDY\Desktop\达人采集助手-portable-v2\app\MediaCrawler-main\media_platform\douyin\client.py", line 141, in get await self.__process_req_params(uri, params, headers) File "C:\Users\EDY\Desktop\达人采集助手-portable-v2\app\MediaCrawler-main\media_platform\douyin\client.py", line 120, in __process_req_params a_bogus = await get_a_bogus(uri, query_string, post_data, headers["User-Agent"], self.playwright_page) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "C:\Users\EDY\Desktop\达人采集助手-portable-v2\app\MediaCrawler-main\media_platform\douyin\help.py", line 81, in get_a_bogus return get_a_bogus_from_js(url, params, user_agent) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "C:\Users\EDY\Desktop\达人采集助手-portable-v2\app\MediaCrawler-main\media_platform\douyin\help.py", line 100, in get_a_bogus_from_js result = subprocess.run( ^^^^^^^^^^^^^^^ File "C:\Users\EDY\Desktop\达人采集助手-portable-v2\app\runtime\python\Lib\subprocess.py", line 548, in run with Popen(*popenargs, **kwargs) as process: ^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "C:\Users\EDY\Desktop\达人采集助手-portable-v2\app\runtime\python\Lib\subprocess.py", line 1026, in __init__ self._execute_child(args, executable, preexec_fn, close_fds, File "C:\Users\EDY\Desktop\达人采集助手-portable-v2\app\runtime\python\Lib\subprocess.py", line 1538, in _execute_child hp, ht, pid, tid = _winapi.CreateProcess(executable, args, ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ FileNotFoundError: [WinError 2] 系统找不到指定的文件。
杰哥讲辅警【辅警上岸班招生中】 主页采集失败:2026-09-17 16:14:55 MediaCrawler INFO (core.py:77) - [DouYinCrawler] 使用CDP模式启动浏览器 2026-09-17 16:14:55 MediaCrawler INFO (cdp_browser.py:152) - [CDPBrowserManager] Connecting to existing browser on port 9222... 2026-09-17 16:14:55 MediaCrawler INFO (cdp_browser.py:155) - [CDPBrowserManager] Make sure remote debugging is enabled in your browser: chrome://inspect/#remote-debugging 2026-09-17 16:14:55 MediaCrawler INFO (cdp_browser.py:163) - [CDPBrowserManager] Waiting up to 60s for browser CDP connection... 2026-09-17 16:14:55 MediaCrawler INFO (cdp_browser.py:237) - [CDPBrowserManager] CDP port 9222 is accessible 2026-09-17 16:14:55 MediaCrawler INFO (cdp_browser.py:301) - [CDPBrowserManager] Got browser WebSocket URL: ws://localhost:9222/devtools/browser/de0c60f3-2b1a-4fcc-adf5-d6c8e827445b 2026-09-17 16:14:55 MediaCrawler INFO (cdp_browser.py:329) - [CDPBrowserManager] Connecting to existing browser via discovered CDP (attempt 1/3): ws://localhost:9222/devtools/browser/de0c60f3-2b1a-4fcc-adf5-d6c8e827445b 2026-09-17 16:14:55 MediaCrawler INFO (cdp_browser.py:333) - [CDPBrowserManager] If Chrome asks whether to allow remote debugging, accept it in the already logged-in browser window 2026-09-17 16:14:56 MediaCrawler INFO (cdp_browser.py:364) - [CDPBrowserManager] Successfully connected to browser 2026-09-17 16:14:56 MediaCrawler INFO (cdp_browser.py:365) - [CDPBrowserManager] Browser contexts count: 1 2026-09-17 16:14:56 MediaCrawler INFO (cdp_browser.py:390) - [CDPBrowserManager] Using existing browser context 2026-09-17 16:14:56 MediaCrawler INFO (cdp_browser.py:194) - [CDPBrowserManager] Successfully connected to existing browser 2026-09-17 16:14:56 MediaCrawler INFO (cdp_browser.py:422) - [CDPBrowserManager] Added anti-detection script: libs/stealth.min.js 2026-09-17 16:14:56 MediaCrawler INFO (core.py:450) - [DouYinCrawler] CDP浏览器信息: {'version': '152.0.7977.83', 'contexts_count': 1, 'debug_port': 9222, 'is_connected': True} 2026-09-17 16:14:57 MediaCrawler INFO (core.py:293) - [DouYinCrawler.get_creators_and_videos] Begin get douyin creators 2026-09-17 16:14:57 MediaCrawler INFO (core.py:294) - [DouYinCrawler.get_creators_and_videos] Parsing creator URLs... 2026-09-17 16:14:57 MediaCrawler INFO (core.py:339) - [DouYinCrawler.get_creators_and_videos] Creator concurrency: 2 2026-09-17 16:14:57 MediaCrawler INFO (core.py:301) - [DouYinCrawler.get_creators_and_videos] Parsed sec_user_id: MS4wLjABAAAAjJrhhQDmjID51Von5NeD7ql7X-OqqY24yIgiNo1yO4_N7I6GrLR3camYax0mBhCl from MS4wLjABAAAAjJrhhQDmjID51Von5NeD7ql7X-OqqY24yIgiNo1yO4_N7I6GrLR3camYax0mBhCl 2026-09-17 16:14:57 MediaCrawler INFO (core.py:301) - [DouYinCrawler.get_creators_and_videos] Parsed sec_user_id: MS4wLjABAAAAoIynL8rpEuRGXnbaCOQKYjfuBf4enwQtHEjLqjTkw4k from MS4wLjABAAAAoIynL8rpEuRGXnbaCOQKYjfuBf4enwQtHEjLqjTkw4k 2026-09-17 16:14:57 MediaCrawler INFO (core.py:301) - [DouYinCrawler.get_creators_and_videos] Parsed sec_user_id: MS4wLjABAAAAxZwVBBZgOqL4o-D0Q4U-l4bxIu4lEt9AFMIahnmP3gjFQcuyZaFfzm6h9OR_v5Pg from MS4wLjABAAAAxZwVBBZgOqL4o-D0Q4U-l4bxIu4lEt9AFMIahnmP3gjFQcuyZaFfzm6h9OR_v5Pg 2026-09-17 16:14:57 MediaCrawler INFO (cdp_browser.py:490) - [CDPBrowserManager] Browser connection disconnected 2026-09-17 16:14:57 MediaCrawler INFO (cdp_browser.py:507) - [CDPBrowserManager] Connected to existing browser, skipping process cleanup 2026-09-17 16:14:57 MediaCrawler INFO (core.py:301) - [DouYinCrawler.get_creators_and_videos] Parsed sec_user_id: MS4wLjABAAAAyCgoDQuBXz4kL2CbiiUd2wdlLgt6i7TcCVdWQ85Tip0 from MS4wLjABAAAAyCgoDQuBXz4kL2CbiiUd2wdlLgt6i7TcCVdWQ85Tip0 2026-09-17 16:14:57 MediaCrawler INFO (core.py:301) - [DouYinCrawler.get_creators_and_videos] Parsed sec_user_id: MS4wLjABAAAAyMDHJlJKcd8EBU3oUB672_5Q5led88zBZRiVtAKApD4hEh3JNvVNMv0UJ4q-tg5o from MS4wLjABAAAAyMDHJlJKcd8EBU3oUB672_5Q5led88zBZRiVtAKApD4hEh3JNvVNMv0UJ4q-tg5o Traceback (most recent call last): File "C:\Users\EDY\Desktop\达人采集助手-portable-v2\app\scripts\run-mediacrawler.py", line 21, in <module> runpy.run_path(os.path.join(crawler_root, "main.py"), run_name="__main__") File "<frozen runpy>", line 291, in run_path File "<frozen runpy>", line 98, in _run_module_code File "<frozen runpy>", line 88, in _run_code File "C:\Users\EDY\Desktop\达人采集助手-portable-v2\app\MediaCrawler-main\main.py", line 174, in <module> run(main, async_cleanup, cleanup_timeout_seconds=15.0, on_first_interrupt=_force_stop) File "C:\Users\EDY\Desktop\达人采集助手-portable-v2\app\MediaCrawler-main\tools\app_runner.py", line 109, in run asyncio.run(_runner()) File "C:\Users\EDY\Desktop\达人采集助手-portable-v2\app\runtime\python\Lib\asyncio\runners.py", line 190, in run return runner.run(main) ^^^^^^^^^^^^^^^^ File "C:\Users\EDY\Desktop\达人采集助手-portable-v2\app\runtime\python\Lib\asyncio\runners.py", line 118, in run return self._loop.run_until_complete(task) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "C:\Users\EDY\Desktop\达人采集助手-portable-v2\app\runtime\python\Lib\asyncio\base_events.py", line 654, in run_until_complete return future.result() ^^^^^^^^^^^^^^^ File "C:\Users\EDY\Desktop\达人采集助手-portable-v2\app\MediaCrawler-main\tools\app_runner.py", line 96, in _runner await app_main() File "C:\Users\EDY\Desktop\达人采集助手-portable-v2\app\MediaCrawler-main\main.py", line 114, in main await crawler.start() File "C:\Users\EDY\Desktop\达人采集助手-portable-v2\app\MediaCrawler-main\media_platform\douyin\core.py", line 141, in start await self.get_creators_and_videos() File "C:\Users\EDY\Desktop\达人采集助手-portable-v2\app\MediaCrawler-main\media_platform\douyin\core.py", line 342, in get_creators_and_videos creator_work_counts = await asyncio.gather( ^^^^^^^^^^^^^^^^^^^^^ File "C:\Users\EDY\Desktop\达人采集助手-portable-v2\app\MediaCrawler-main\media_platform\douyin\core.py", line 306, in fetch_one_creator creator_info: Dict = await self.dy_client.get_user_info(user_id) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "C:\Users\EDY\Desktop\达人采集助手-portable-v2\app\MediaCrawler-main\media_platform\douyin\client.py", line 319, in get_user_info return await self.get(uri, params) ^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "C:\Users\EDY\Desktop\达人采集助手-portable-v2\app\MediaCrawler-main\media_platform\douyin\client.py", line 141, in get await self.__process_req_params(uri, params, headers) File "C:\Users\EDY\Desktop\达人采集助手-portable-v2\app\MediaCrawler-main\media_platform\douyin\client.py", line 120, in __process_req_params a_bogus = await get_a_bogus(uri, query_string, post_data, headers["User-Agent"], self.playwright_page) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "C:\Users\EDY\Desktop\达人采集助手-portable-v2\app\MediaCrawler-main\media_platform\douyin\help.py", line 81, in get_a_bogus return get_a_bogus_from_js(url, params, user_agent) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "C:\Users\EDY\Desktop\达人采集助手-portable-v2\app\MediaCrawler-main\media_platform\douyin\help.py", line 100, in get_a_bogus_from_js result = subprocess.run( ^^^^^^^^^^^^^^^ File "C:\Users\EDY\Desktop\达人采集助手-portable-v2\app\runtime\python\Lib\subprocess.py", line 548, in run with Popen(*popenargs, **kwargs) as process: ^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "C:\Users\EDY\Desktop\达人采集助手-portable-v2\app\runtime\python\Lib\subprocess.py", line 1026, in __init__ self._execute_child(args, executable, preexec_fn, close_fds, File "C:\Users\EDY\Desktop\达人采集助手-portable-v2\app\runtime\python\Lib\subprocess.py", line 1538, in _execute_child hp, ht, pid, tid = _winapi.CreateProcess(executable, args, ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ FileNotFoundError: [WinError 2] 系统找不到指定的文件。
@ 9 主页采集失败:2026-09-17 14:23:08 MediaCrawler INFO (core.py:77) - [DouYinCrawler] 使用CDP模式启动浏览器 2026-09-17 14:23:08 MediaCrawler INFO (cdp_browser.py:152) - [CDPBrowserManager] Connecting to existing browser on port 9222... 2026-09-17 14:23:08 MediaCrawler INFO (cdp_browser.py:155) - [CDPBrowserManager] Make sure remote debugging is enabled in your browser: chrome://inspect/#remote-debugging 2026-09-17 14:23:08 MediaCrawler INFO (cdp_browser.py:163) - [CDPBrowserManager] Waiting up to 60s for browser CDP connection... 2026-09-17 14:23:08 MediaCrawler INFO (cdp_browser.py:237) - [CDPBrowserManager] CDP port 9222 is accessible 2026-09-17 14:23:09 MediaCrawler INFO (cdp_browser.py:301) - [CDPBrowserManager] Got browser WebSocket URL: ws://localhost:9222/devtools/browser/f079b23d-96c5-4a1d-989c-33629bf0f438 2026-09-17 14:23:09 MediaCrawler INFO (cdp_browser.py:329) - [CDPBrowserManager] Connecting to existing browser via discovered CDP (attempt 1/3): ws://localhost:9222/devtools/browser/f079b23d-96c5-4a1d-989c-33629bf0f438 2026-09-17 14:23:09 MediaCrawler INFO (cdp_browser.py:333) - [CDPBrowserManager] If Chrome asks whether to allow remote debugging, accept it in the already logged-in browser window 2026-09-17 14:23:15 MediaCrawler INFO (cdp_browser.py:364) - [CDPBrowserManager] Successfully connected to browser 2026-09-17 14:23:15 MediaCrawler INFO (cdp_browser.py:365) - [CDPBrowserManager] Browser contexts count: 1 2026-09-17 14:23:15 MediaCrawler INFO (cdp_browser.py:390) - [CDPBrowserManager] Using existing browser context 2026-09-17 14:23:15 MediaCrawler INFO (cdp_browser.py:194) - [CDPBrowserManager] Successfully connected to existing browser 2026-09-17 14:23:15 MediaCrawler INFO (cdp_browser.py:422) - [CDPBrowserManager] Added anti-detection script: libs/stealth.min.js 2026-09-17 14:23:15 MediaCrawler INFO (core.py:450) - [DouYinCrawler] CDP浏览器信息: {'version': '152.0.7977.83', 'contexts_count': 1, 'debug_port': 9222, 'is_connected': True} 2026-09-17 14:23:17 MediaCrawler INFO (core.py:293) - [DouYinCrawler.get_creators_and_videos] Begin get douyin creators 2026-09-17 14:23:17 MediaCrawler INFO (core.py:294) - [DouYinCrawler.get_creators_and_videos] Parsing creator URLs... 2026-09-17 14:23:17 MediaCrawler INFO (core.py:339) - [DouYinCrawler.get_creators_and_videos] Creator concurrency: 2 2026-09-17 14:23:17 MediaCrawler INFO (core.py:301) - [DouYinCrawler.get_creators_and_videos] Parsed sec_user_id: MS4wLjABAAAA5J1at3eNYvBIq0LPStmnic3qki9abHbVip06xsmLR5Q from MS4wLjABAAAA5J1at3eNYvBIq0LPStmnic3qki9abHbVip06xsmLR5Q 2026-09-17 14:23:17 MediaCrawler INFO (core.py:301) - [DouYinCrawler.get_creators_and_videos] Parsed sec_user_id: MS4wLjABAAAAKGlyiiqm6MURKXfZ--_XQ_8gBuieitxG5ssup1lV49U from MS4wLjABAAAAKGlyiiqm6MURKXfZ--_XQ_8gBuieitxG5ssup1lV49U 2026-09-17 14:23:18 MediaCrawler INFO (core.py:301) - [DouYinCrawler.get_creators_and_videos] Parsed sec_user_id: MS4wLjABAAAAmboKEPDcsZorAd48osemDt-nJ1lCj4jI2mGvI_CNP5k from MS4wLjABAAAAmboKEPDcsZorAd48osemDt-nJ1lCj4jI2mGvI_CNP5k 2026-09-17 14:23:18 MediaCrawler INFO (cdp_browser.py:490) - [CDPBrowserManager] Browser connection disconnected 2026-09-17 14:23:18 MediaCrawler INFO (cdp_browser.py:507) - [CDPBrowserManager] Connected to existing browser, skipping process cleanup 2026-09-17 14:23:18 MediaCrawler INFO (core.py:301) - [DouYinCrawler.get_creators_and_videos] Parsed sec_user_id: MS4wLjABAAAAmVpfR85F39psDPXGeEBcEtjA4_VSOwFRJxzkFAaBlr6TTi00oD5k09f-OMXlTbiJ from MS4wLjABAAAAmVpfR85F39psDPXGeEBcEtjA4_VSOwFRJxzkFAaBlr6TTi00oD5k09f-OMXlTbiJ 2026-09-17 14:23:18 MediaCrawler INFO (core.py:301) - [DouYinCrawler.get_creators_and_videos] Parsed sec_user_id: MS4wLjABAAAAqZjPCuJ3HQreEUAnK-Qo_AY03Y_mKRb0Q63zz7-KLnqgQU52rcWGtpoGaho_lFa3 from MS4wLjABAAAAqZjPCuJ3HQreEUAnK-Qo_AY03Y_mKRb0Q63zz7-KLnqgQU52rcWGtpoGaho_lFa3 Traceback (most recent call last): File "C:\Users\EDY\Documents\流程\kol-crm-next\scripts\run-mediacrawler.py", line 21, in <module> runpy.run_path(os.path.join(crawler_root, "main.py"), run_name="__main__") File "<frozen runpy>", line 291, in run_path File "<frozen runpy>", line 98, in _run_module_code File "<frozen runpy>", line 88, in _run_code File "C:\Users\EDY\Desktop\达人采集助手-portable-v3\达人采集助手-portable-v3\app\MediaCrawler-main\main.py", line 174, in <module> run(main, async_cleanup, cleanup_timeout_seconds=15.0, on_first_interrupt=_force_stop) File "C:\Users\EDY\Desktop\达人采集助手-portable-v3\达人采集助手-portable-v3\app\MediaCrawler-main\tools\app_runner.py", line 109, in run asyncio.run(_runner()) File "C:\Users\EDY\Desktop\达人采集助手-portable-v3\达人采集助手-portable-v3\app\runtime\python\Lib\asyncio\runners.py", line 190, in run return runner.run(main) ^^^^^^^^^^^^^^^^ File "C:\Users\EDY\Desktop\达人采集助手-portable-v3\达人采集助手-portable-v3\app\runtime\python\Lib\asyncio\runners.py", line 118, in run return self._loop.run_until_complete(task) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "C:\Users\EDY\Desktop\达人采集助手-portable-v3\达人采集助手-portable-v3\app\runtime\python\Lib\asyncio\base_events.py", line 654, in run_until_complete return future.result() ^^^^^^^^^^^^^^^ File "C:\Users\EDY\Desktop\达人采集助手-portable-v3\达人采集助手-portable-v3\app\MediaCrawler-main\tools\app_runner.py", line 96, in _runner await app_main() File "C:\Users\EDY\Desktop\达人采集助手-portable-v3\达人采集助手-portable-v3\app\MediaCrawler-main\main.py", line 114, in main await crawler.start() File "C:\Users\EDY\Desktop\达人采集助手-portable-v3\达人采集助手-portable-v3\app\MediaCrawler-main\media_platform\douyin\core.py", line 141, in start await self.get_creators_and_videos() File "C:\Users\EDY\Desktop\达人采集助手-portable-v3\达人采集助手-portable-v3\app\MediaCrawler-main\media_platform\douyin\core.py", line 342, in get_creators_and_videos creator_work_counts = await asyncio.gather( ^^^^^^^^^^^^^^^^^^^^^ File "C:\Users\EDY\Desktop\达人采集助手-portable-v3\达人采集助手-portable-v3\app\MediaCrawler-main\media_platform\douyin\core.py", line 306, in fetch_one_creator creator_info: Dict = await self.dy_client.get_user_info(user_id) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "C:\Users\EDY\Desktop\达人采集助手-portable-v3\达人采集助手-portable-v3\app\MediaCrawler-main\media_platform\douyin\client.py", line 319, in get_user_info return await self.get(uri, params) ^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "C:\Users\EDY\Desktop\达人采集助手-portable-v3\达人采集助手-portable-v3\app\MediaCrawler-main\media_platform\douyin\client.py", line 141, in get await self.__process_req_params(uri, params, headers) File "C:\Users\EDY\Desktop\达人采集助手-portable-v3\达人采集助手-portable-v3\app\MediaCrawler-main\media_platform\douyin\client.py", line 120, in __process_req_params a_bogus = await get_a_bogus(uri, query_string, post_data, headers["User-Agent"], self.playwright_page) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "C:\Users\EDY\Desktop\达人采集助手-portable-v3\达人采集助手-portable-v3\app\MediaCrawler-main\media_platform\douyin\help.py", line 81, in get_a_bogus return get_a_bogus_from_js(url, params, user_agent) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "C:\Users\EDY\Desktop\达人采集助手-portable-v3\达人采集助手-portable-v3\app\MediaCrawler-main\media_platform\douyin\help.py", line 100, in get_a_bogus_from_js result = subprocess.run( ^^^^^^^^^^^^^^^ File "C:\Users\EDY\Desktop\达人采集助手-portable-v3\达人采集助手-portable-v3\app\runtime\python\Lib\subprocess.py", line 548, in run with Popen(*popenargs, **kwargs) as process: ^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "C:\Users\EDY\Desktop\达人采集助手-portable-v3\达人采集助手-portable-v3\app\runtime\python\Lib\subprocess.py", line 1026, in __init__ self._execute_child(args, executable, preexec_fn, close_fds, File "C:\Users\EDY\Desktop\达人采集助手-portable-v3\达人采集助手-portable-v3\app\runtime\python\Lib\subprocess.py", line 1538, in _execute_child hp, ht, pid, tid = _winapi.CreateProcess(executable, args, ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ FileNotFoundError: [WinError 2] 系统找不到指定的文件。
极 主页采集失败:2026-09-17 16:17:13 MediaCrawler INFO (core.py:77) - [DouYinCrawler] 使用CDP模式启动浏览器 2026-09-17 16:17:13 MediaCrawler INFO (cdp_browser.py:152) - [CDPBrowserManager] Connecting to existing browser on port 9222... 2026-09-17 16:17:13 MediaCrawler INFO (cdp_browser.py:155) - [CDPBrowserManager] Make sure remote debugging is enabled in your browser: chrome://inspect/#remote-debugging 2026-09-17 16:17:13 MediaCrawler INFO (cdp_browser.py:163) - [CDPBrowserManager] Waiting up to 60s for browser CDP connection... 2026-09-17 16:17:14 MediaCrawler INFO (cdp_browser.py:237) - [CDPBrowserManager] CDP port 9222 is accessible 2026-09-17 16:17:14 MediaCrawler INFO (cdp_browser.py:301) - [CDPBrowserManager] Got browser WebSocket URL: ws://localhost:9222/devtools/browser/b6166241-0447-4b83-98ca-78fdbeb71daf 2026-09-17 16:17:14 MediaCrawler INFO (cdp_browser.py:329) - [CDPBrowserManager] Connecting to existing browser via discovered CDP (attempt 1/3): ws://localhost:9222/devtools/browser/b6166241-0447-4b83-98ca-78fdbeb71daf 2026-09-17 16:17:14 MediaCrawler INFO (cdp_browser.py:333) - [CDPBrowserManager] If Chrome asks whether to allow remote debugging, accept it in the already logged-in browser window 2026-09-17 16:17:14 MediaCrawler INFO (cdp_browser.py:364) - [CDPBrowserManager] Successfully connected to browser 2026-09-17 16:17:14 MediaCrawler INFO (cdp_browser.py:365) - [CDPBrowserManager] Browser contexts count: 1 2026-09-17 16:17:14 MediaCrawler INFO (cdp_browser.py:390) - [CDPBrowserManager] Using existing browser context 2026-09-17 16:17:14 MediaCrawler INFO (cdp_browser.py:194) - [CDPBrowserManager] Successfully connected to existing browser 2026-09-17 16:17:14 MediaCrawler INFO (cdp_browser.py:422) - [CDPBrowserManager] Added anti-detection script: libs/stealth.min.js 2026-09-17 16:17:14 MediaCrawler INFO (core.py:450) - [DouYinCrawler] CDP浏览器信息: {'version': '152.0.7977.83', 'contexts_count': 1, 'debug_port': 9222, 'is_connected': True} 2026-09-17 16:17:18 MediaCrawler INFO (core.py:293) - [DouYinCrawler.get_creators_and_videos] Begin get douyin creators 2026-09-17 16:17:18 MediaCrawler INFO (core.py:294) - [DouYinCrawler.get_creators_and_videos] Parsing creator URLs... 2026-09-17 16:17:18 MediaCrawler INFO (core.py:339) - [DouYinCrawler.get_creators_and_videos] Creator concurrency: 2 2026-09-17 16:17:18 MediaCrawler INFO (core.py:301) - [DouYinCrawler.get_creators_and_videos] Parsed sec_user_id: MS4wLjABAAAAGnlBtD4-AsC8Ezxp9dgKUyV1GiM2RiMihANay61ZmUs from MS4wLjABAAAAGnlBtD4-AsC8Ezxp9dgKUyV1GiM2RiMihANay61ZmUs 2026-09-17 16:17:18 MediaCrawler INFO (core.py:301) - [DouYinCrawler.get_creators_and_videos] Parsed sec_user_id: MS4wLjABAAAAi0_jiOyKGmyXvRlgE9mqEIMaU2W9s5fbNmyzbOUeqGY from MS4wLjABAAAAi0_jiOyKGmyXvRlgE9mqEIMaU2W9s5fbNmyzbOUeqGY 2026-09-17 16:17:18 MediaCrawler INFO (core.py:301) - [DouYinCrawler.get_creators_and_videos] Parsed sec_user_id: MS4wLjABAAAAmaMNwqGz64X_iW0WLCQn204vTjM41tex3s990hacBPg from MS4wLjABAAAAmaMNwqGz64X_iW0WLCQn204vTjM41tex3s990hacBPg 2026-09-17 16:17:18 MediaCrawler INFO (cdp_browser.py:490) - [CDPBrowserManager] Browser connection disconnected 2026-09-17 16:17:18 MediaCrawler INFO (cdp_browser.py:507) - [CDPBrowserManager] Connected to existing browser, skipping process cleanup 2026-09-17 16:17:18 MediaCrawler INFO (core.py:301) - [DouYinCrawler.get_creators_and_videos] Parsed sec_user_id: MS4wLjABAAAAw-pkFR8XUgai9LX22iR33Ybn_glmy2IFgPFbQEr32gmG_sDF6WB6bAVWljgzRY5- from MS4wLjABAAAAw-pkFR8XUgai9LX22iR33Ybn_glmy2IFgPFbQEr32gmG_sDF6WB6bAVWljgzRY5- 2026-09-17 16:17:18 MediaCrawler INFO (core.py:301) - [DouYinCrawler.get_creators_and_videos] Parsed sec_user_id: MS4wLjABAAAAYX8rlU8_TmzMyvkYTwk9XGCVvU9rwDa46hZgTUOZJ-UpFsP52mOYE_gJ9FSLkNW9 from MS4wLjABAAAAYX8rlU8_TmzMyvkYTwk9XGCVvU9rwDa46hZgTUOZJ-UpFsP52mOYE_gJ9FSLkNW9 Traceback (most recent call last): File "C:\Users\EDY\Desktop\达人采集助手-portable-v2\app\scripts\run-mediacrawler.py", line 21, in <module> runpy.run_path(os.path.join(crawler_root, "main.py"), run_name="__main__") File "<frozen runpy>", line 291, in run_path File "<frozen runpy>", line 98, in _run_module_code File "<frozen runpy>", line 88, in _run_code File "C:\Users\EDY\Desktop\达人采集助手-portable-v2\app\MediaCrawler-main\main.py", line 174, in <module> run(main, async_cleanup, cleanup_timeout_seconds=15.0, on_first_interrupt=_force_stop) File "C:\Users\EDY\Desktop\达人采集助手-portable-v2\app\MediaCrawler-main\tools\app_runner.py", line 109, in run asyncio.run(_runner()) File "C:\Users\EDY\Desktop\达人采集助手-portable-v2\app\runtime\python\Lib\asyncio\runners.py", line 190, in run return runner.run(main) ^^^^^^^^^^^^^^^^ File "C:\Users\EDY\Desktop\达人采集助手-portable-v2\app\runtime\python\Lib\asyncio\runners.py", line 118, in run return self._loop.run_until_complete(task) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "C:\Users\EDY\Desktop\达人采集助手-portable-v2\app\runtime\python\Lib\asyncio\base_events.py", line 654, in run_until_complete return future.result() ^^^^^^^^^^^^^^^ File "C:\Users\EDY\Desktop\达人采集助手-portable-v2\app\MediaCrawler-main\tools\app_runner.py", line 96, in _runner await app_main() File "C:\Users\EDY\Desktop\达人采集助手-portable-v2\app\MediaCrawler-main\main.py", line 114, in main await crawler.start() File "C:\Users\EDY\Desktop\达人采集助手-portable-v2\app\MediaCrawler-main\media_platform\douyin\core.py", line 141, in start await self.get_creators_and_videos() File "C:\Users\EDY\Desktop\达人采集助手-portable-v2\app\MediaCrawler-main\media_platform\douyin\core.py", line 342, in get_creators_and_videos creator_work_counts = await asyncio.gather( ^^^^^^^^^^^^^^^^^^^^^ File "C:\Users\EDY\Desktop\达人采集助手-portable-v2\app\MediaCrawler-main\media_platform\douyin\core.py", line 306, in fetch_one_creator creator_info: Dict = await self.dy_client.get_user_info(user_id) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "C:\Users\EDY\Desktop\达人采集助手-portable-v2\app\MediaCrawler-main\media_platform\douyin\client.py", line 319, in get_user_info return await self.get(uri, params) ^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "C:\Users\EDY\Desktop\达人采集助手-portable-v2\app\MediaCrawler-main\media_platform\douyin\client.py", line 141, in get await self.__process_req_params(uri, params, headers) File "C:\Users\EDY\Desktop\达人采集助手-portable-v2\app\MediaCrawler-main\media_platform\douyin\client.py", line 120, in __process_req_params a_bogus = await get_a_bogus(uri, query_string, post_data, headers["User-Agent"], self.playwright_page) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "C:\Users\EDY\Desktop\达人采集助手-portable-v2\app\MediaCrawler-main\media_platform\douyin\help.py", line 81, in get_a_bogus return get_a_bogus_from_js(url, params, user_agent) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "C:\Users\EDY\Desktop\达人采集助手-portable-v2\app\MediaCrawler-main\media_platform\douyin\help.py", line 100, in get_a_bogus_from_js result = subprocess.run( ^^^^^^^^^^^^^^^ File "C:\Users\EDY\Desktop\达人采集助手-portable-v2\app\runtime\python\Lib\subprocess.py", line 548, in run with Popen(*popenargs, **kwargs) as process: ^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "C:\Users\EDY\Desktop\达人采集助手-portable-v2\app\runtime\python\Lib\subprocess.py", line 1026, in __init__ self._execute_child(args, executable, preexec_fn, close_fds, File "C:\Users\EDY\Desktop\达人采集助手-portable-v2\app\runtime\python\Lib\subprocess.py", line 1538, in _execute_child hp, ht, pid, tid = _winapi.CreateProcess(executable, args, ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ FileNotFoundError: [WinError 2] 系统找不到指定的文件。
小猪豚 主页采集失败:2026-09-17 14:25:19 MediaCrawler INFO (core.py:77) - [DouYinCrawler] 使用CDP模式启动浏览器 2026-09-17 14:25:19 MediaCrawler INFO (cdp_browser.py:152) - [CDPBrowserManager] Connecting to existing browser on port 9222... 2026-09-17 14:25:19 MediaCrawler INFO (cdp_browser.py:155) - [CDPBrowserManager] Make sure remote debugging is enabled in your browser: chrome://inspect/#remote-debugging 2026-09-17 14:25:19 MediaCrawler INFO (cdp_browser.py:163) - [CDPBrowserManager] Waiting up to 60s for browser CDP connection... 2026-09-17 14:25:19 MediaCrawler INFO (cdp_browser.py:237) - [CDPBrowserManager] CDP port 9222 is accessible 2026-09-17 14:25:19 MediaCrawler INFO (cdp_browser.py:301) - [CDPBrowserManager] Got browser WebSocket URL: ws://localhost:9222/devtools/browser/dd177f4d-bf6e-46f8-95b1-c136a2211654 2026-09-17 14:25:19 MediaCrawler INFO (cdp_browser.py:329) - [CDPBrowserManager] Connecting to existing browser via discovered CDP (attempt 1/3): ws://localhost:9222/devtools/browser/dd177f4d-bf6e-46f8-95b1-c136a2211654 2026-09-17 14:25:19 MediaCrawler INFO (cdp_browser.py:333) - [CDPBrowserManager] If Chrome asks whether to allow remote debugging, accept it in the already logged-in browser window 2026-09-17 14:25:22 MediaCrawler INFO (cdp_browser.py:364) - [CDPBrowserManager] Successfully connected to browser 2026-09-17 14:25:22 MediaCrawler INFO (cdp_browser.py:365) - [CDPBrowserManager] Browser contexts count: 1 2026-09-17 14:25:22 MediaCrawler INFO (cdp_browser.py:390) - [CDPBrowserManager] Using existing browser context 2026-09-17 14:25:22 MediaCrawler INFO (cdp_browser.py:194) - [CDPBrowserManager] Successfully connected to existing browser 2026-09-17 14:25:25 MediaCrawler INFO (cdp_browser.py:422) - [CDPBrowserManager] Added anti-detection script: libs/stealth.min.js 2026-09-17 14:25:25 MediaCrawler INFO (core.py:450) - [DouYinCrawler] CDP浏览器信息: {'version': '152.0.7977.83', 'contexts_count': 1, 'debug_port': 9222, 'is_connected': True} 2026-09-17 14:25:27 MediaCrawler INFO (core.py:293) - [DouYinCrawler.get_creators_and_videos] Begin get douyin creators 2026-09-17 14:25:27 MediaCrawler INFO (core.py:294) - [DouYinCrawler.get_creators_and_videos] Parsing creator URLs... 2026-09-17 14:25:27 MediaCrawler INFO (core.py:339) - [DouYinCrawler.get_creators_and_videos] Creator concurrency: 2 2026-09-17 14:25:27 MediaCrawler INFO (core.py:301) - [DouYinCrawler.get_creators_and_videos] Parsed sec_user_id: MS4wLjABAAAAHJn1n52sPggn_QNyNxunPk2-0t-oiuFO6aK8nVcO3HjlMosy-t_Hp8EursruwaMt from MS4wLjABAAAAHJn1n52sPggn_QNyNxunPk2-0t-oiuFO6aK8nVcO3HjlMosy-t_Hp8EursruwaMt 2026-09-17 14:25:27 MediaCrawler INFO (core.py:301) - [DouYinCrawler.get_creators_and_videos] Parsed sec_user_id: MS4wLjABAAAAKpfsUujf9V9ojHgB4JtAnHIlGiWoUey3U5fBnaqXGBI from MS4wLjABAAAAKpfsUujf9V9ojHgB4JtAnHIlGiWoUey3U5fBnaqXGBI 2026-09-17 14:25:28 MediaCrawler INFO (core.py:301) - [DouYinCrawler.get_creators_and_videos] Parsed sec_user_id: MS4wLjABAAAAOiyWd0V2y5S3dHfv_2-WHSf8J8Pd5OUWltcmC80LUM-1KLMBvvOK1F8Jaf0IZfcQ from MS4wLjABAAAAOiyWd0V2y5S3dHfv_2-WHSf8J8Pd5OUWltcmC80LUM-1KLMBvvOK1F8Jaf0IZfcQ 2026-09-17 14:25:28 MediaCrawler INFO (cdp_browser.py:490) - [CDPBrowserManager] Browser connection disconnected 2026-09-17 14:25:28 MediaCrawler INFO (cdp_browser.py:507) - [CDPBrowserManager] Connected to existing browser, skipping process cleanup 2026-09-17 14:25:28 MediaCrawler INFO (core.py:301) - [DouYinCrawler.get_creators_and_videos] Parsed sec_user_id: MS4wLjABAAAApoTVRwtjRkH9-71u8STF4XVp2FmcWObNTDSXlYCdwyY from MS4wLjABAAAApoTVRwtjRkH9-71u8STF4XVp2FmcWObNTDSXlYCdwyY 2026-09-17 14:25:28 MediaCrawler INFO (core.py:301) - [DouYinCrawler.get_creators_and_videos] Parsed sec_user_id: MS4wLjABAAAASR13xAfkF1Z3qSKPHxfPCGHzgxdl-1qthC_cxOzDGpSDcGCao8NkVraM15mJk2K_ from MS4wLjABAAAASR13xAfkF1Z3qSKPHxfPCGHzgxdl-1qthC_cxOzDGpSDcGCao8NkVraM15mJk2K_ Traceback (most recent call last): File "C:\Users\EDY\Documents\流程\kol-crm-next\scripts\run-mediacrawler.py", line 21, in <module> runpy.run_path(os.path.join(crawler_root, "main.py"), run_name="__main__") File "<frozen runpy>", line 291, in run_path File "<frozen runpy>", line 98, in _run_module_code File "<frozen runpy>", line 88, in _run_code File "C:\Users\EDY\Desktop\达人采集助手-portable-v3\达人采集助手-portable-v3\app\MediaCrawler-main\main.py", line 174, in <module> run(main, async_cleanup, cleanup_timeout_seconds=15.0, on_first_interrupt=_force_stop) File "C:\Users\EDY\Desktop\达人采集助手-portable-v3\达人采集助手-portable-v3\app\MediaCrawler-main\tools\app_runner.py", line 109, in run asyncio.run(_runner()) File "C:\Users\EDY\Desktop\达人采集助手-portable-v3\达人采集助手-portable-v3\app\runtime\python\Lib\asyncio\runners.py", line 190, in run return runner.run(main) ^^^^^^^^^^^^^^^^ File "C:\Users\EDY\Desktop\达人采集助手-portable-v3\达人采集助手-portable-v3\app\runtime\python\Lib\asyncio\runners.py", line 118, in run return self._loop.run_until_complete(task) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "C:\Users\EDY\Desktop\达人采集助手-portable-v3\达人采集助手-portable-v3\app\runtime\python\Lib\asyncio\base_events.py", line 654, in run_until_complete return future.result() ^^^^^^^^^^^^^^^ File "C:\Users\EDY\Desktop\达人采集助手-portable-v3\达人采集助手-portable-v3\app\MediaCrawler-main\tools\app_runner.py", line 96, in _runner await app_main() File "C:\Users\EDY\Desktop\达人采集助手-portable-v3\达人采集助手-portable-v3\app\MediaCrawler-main\main.py", line 114, in main await crawler.start() File "C:\Users\EDY\Desktop\达人采集助手-portable-v3\达人采集助手-portable-v3\app\MediaCrawler-main\media_platform\douyin\core.py", line 141, in start await self.get_creators_and_videos() File "C:\Users\EDY\Desktop\达人采集助手-portable-v3\达人采集助手-portable-v3\app\MediaCrawler-main\media_platform\douyin\core.py", line 342, in get_creators_and_videos creator_work_counts = await asyncio.gather( ^^^^^^^^^^^^^^^^^^^^^ File "C:\Users\EDY\Desktop\达人采集助手-portable-v3\达人采集助手-portable-v3\app\MediaCrawler-main\media_platform\douyin\core.py", line 306, in fetch_one_creator creator_info: Dict = await self.dy_client.get_user_info(user_id) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "C:\Users\EDY\Desktop\达人采集助手-portable-v3\达人采集助手-portable-v3\app\MediaCrawler-main\media_platform\douyin\client.py", line 319, in get_user_info return await self.get(uri, params) ^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "C:\Users\EDY\Desktop\达人采集助手-portable-v3\达人采集助手-portable-v3\app\MediaCrawler-main\media_platform\douyin\client.py", line 141, in get await self.__process_req_params(uri, params, headers) File "C:\Users\EDY\Desktop\达人采集助手-portable-v3\达人采集助手-portable-v3\app\MediaCrawler-main\media_platform\douyin\client.py", line 120, in __process_req_params a_bogus = await get_a_bogus(uri, query_string, post_data, headers["User-Agent"], self.playwright_page) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "C:\Users\EDY\Desktop\达人采集助手-portable-v3\达人采集助手-portable-v3\app\MediaCrawler-main\media_platform\douyin\help.py", line 81, in get_a_bogus return get_a_bogus_from_js(url, params, user_agent) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "C:\Users\EDY\Desktop\达人采集助手-portable-v3\达人采集助手-portable-v3\app\MediaCrawler-main\media_platform\douyin\help.py", line 100, in get_a_bogus_from_js result = subprocess.run( ^^^^^^^^^^^^^^^ File "C:\Users\EDY\Desktop\达人采集助手-portable-v3\达人采集助手-portable-v3\app\runtime\python\Lib\subprocess.py", line 548, in run with Popen(*popenargs, **kwargs) as process: ^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "C:\Users\EDY\Desktop\达人采集助手-portable-v3\达人采集助手-portable-v3\app\runtime\python\Lib\subprocess.py", line 1026, in __init__ self._execute_child(args, executable, preexec_fn, close_fds, File "C:\Users\EDY\Desktop\达人采集助手-portable-v3\达人采集助手-portable-v3\app\runtime\python\Lib\subprocess.py", line 1538, in _execute_child hp, ht, pid, tid = _winapi.CreateProcess(executable, args, ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ FileNotFoundError: [WinError 2] 系统找不到指定的文件。
雾会散. 主页采集失败:2026-09-17 14:12:16 MediaCrawler INFO (core.py:77) - [DouYinCrawler] 使用CDP模式启动浏览器 2026-09-17 14:12:16 MediaCrawler INFO (cdp_browser.py:152) - [CDPBrowserManager] Connecting to existing browser on port 9222... 2026-09-17 14:12:16 MediaCrawler INFO (cdp_browser.py:155) - [CDPBrowserManager] Make sure remote debugging is enabled in your browser: chrome://inspect/#remote-debugging 2026-09-17 14:12:16 MediaCrawler INFO (cdp_browser.py:163) - [CDPBrowserManager] Waiting up to 60s for browser CDP connection... 2026-09-17 14:12:16 MediaCrawler INFO (cdp_browser.py:237) - [CDPBrowserManager] CDP port 9222 is accessible 2026-09-17 14:12:16 MediaCrawler INFO (cdp_browser.py:301) - [CDPBrowserManager] Got browser WebSocket URL: ws://localhost:9222/devtools/browser/6ce3feea-9ba3-4569-b110-24a4c42721c6 2026-09-17 14:12:16 MediaCrawler INFO (cdp_browser.py:329) - [CDPBrowserManager] Connecting to existing browser via discovered CDP (attempt 1/3): ws://localhost:9222/devtools/browser/6ce3feea-9ba3-4569-b110-24a4c42721c6 2026-09-17 14:12:16 MediaCrawler INFO (cdp_browser.py:333) - [CDPBrowserManager] If Chrome asks whether to allow remote debugging, accept it in the already logged-in browser window 2026-09-17 14:12:16 MediaCrawler INFO (cdp_browser.py:364) - [CDPBrowserManager] Successfully connected to browser 2026-09-17 14:12:16 MediaCrawler INFO (cdp_browser.py:365) - [CDPBrowserManager] Browser contexts count: 1 2026-09-17 14:12:16 MediaCrawler INFO (cdp_browser.py:390) - [CDPBrowserManager] Using existing browser context 2026-09-17 14:12:16 MediaCrawler INFO (cdp_browser.py:194) - [CDPBrowserManager] Successfully connected to existing browser 2026-09-17 14:12:16 MediaCrawler INFO (cdp_browser.py:422) - [CDPBrowserManager] Added anti-detection script: libs/stealth.min.js 2026-09-17 14:12:16 MediaCrawler INFO (core.py:450) - [DouYinCrawler] CDP浏览器信息: {'version': '152.0.7977.83', 'contexts_count': 1, 'debug_port': 9222, 'is_connected': True} 2026-09-17 14:12:18 MediaCrawler INFO (core.py:293) - [DouYinCrawler.get_creators_and_videos] Begin get douyin creators 2026-09-17 14:12:18 MediaCrawler INFO (core.py:294) - [DouYinCrawler.get_creators_and_videos] Parsing creator URLs... 2026-09-17 14:12:18 MediaCrawler INFO (core.py:339) - [DouYinCrawler.get_creators_and_videos] Creator concurrency: 2 2026-09-17 14:12:18 MediaCrawler INFO (core.py:301) - [DouYinCrawler.get_creators_and_videos] Parsed sec_user_id: MS4wLjABAAAAkR9R-pArinu4xWnFr-tvArOg5FG4Tpqe2_oFCqnxqeM from MS4wLjABAAAAkR9R-pArinu4xWnFr-tvArOg5FG4Tpqe2_oFCqnxqeM 2026-09-17 14:12:18 MediaCrawler INFO (core.py:301) - [DouYinCrawler.get_creators_and_videos] Parsed sec_user_id: MS4wLjABAAAAReWqw77TTVPbTLtNwOygy86UEy5bdfNVSK2IKvcS2MGSlC2Fn4r3EynK6H5qRo7q from MS4wLjABAAAAReWqw77TTVPbTLtNwOygy86UEy5bdfNVSK2IKvcS2MGSlC2Fn4r3EynK6H5qRo7q 2026-09-17 14:12:18 MediaCrawler INFO (cdp_browser.py:490) - [CDPBrowserManager] Browser connection disconnected 2026-09-17 14:12:18 MediaCrawler INFO (cdp_browser.py:507) - [CDPBrowserManager] Connected to existing browser, skipping process cleanup Traceback (most recent call last): File "C:\Users\EDY\Documents\流程\kol-crm-next\scripts\run-mediacrawler.py", line 21, in <module> runpy.run_path(os.path.join(crawler_root, "main.py"), run_name="__main__") File "<frozen runpy>", line 291, in run_path File "<frozen runpy>", line 98, in _run_module_code File "<frozen runpy>", line 88, in _run_code File "C:\Users\EDY\Desktop\达人采集助手-portable-v3\达人采集助手-portable-v3\app\MediaCrawler-main\main.py", line 174, in <module> run(main, async_cleanup, cleanup_timeout_seconds=15.0, on_first_interrupt=_force_stop) File "C:\Users\EDY\Desktop\达人采集助手-portable-v3\达人采集助手-portable-v3\app\MediaCrawler-main\tools\app_runner.py", line 109, in run asyncio.run(_runner()) File "C:\Users\EDY\Desktop\达人采集助手-portable-v3\达人采集助手-portable-v3\app\runtime\python\Lib\asyncio\runners.py", line 190, in run return runner.run(main) ^^^^^^^^^^^^^^^^ File "C:\Users\EDY\Desktop\达人采集助手-portable-v3\达人采集助手-portable-v3\app\runtime\python\Lib\asyncio\runners.py", line 118, in run return self._loop.run_until_complete(task) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "C:\Users\EDY\Desktop\达人采集助手-portable-v3\达人采集助手-portable-v3\app\runtime\python\Lib\asyncio\base_events.py", line 654, in run_until_complete return future.result() ^^^^^^^^^^^^^^^ File "C:\Users\EDY\Desktop\达人采集助手-portable-v3\达人采集助手-portable-v3\app\MediaCrawler-main\tools\app_runner.py", line 96, in _runner await app_main() File "C:\Users\EDY\Desktop\达人采集助手-portable-v3\达人采集助手-portable-v3\app\MediaCrawler-main\main.py", line 114, in main await crawler.start() File "C:\Users\EDY\Desktop\达人采集助手-portable-v3\达人采集助手-portable-v3\app\MediaCrawler-main\media_platform\douyin\core.py", line 141, in start await self.get_creators_and_videos() File "C:\Users\EDY\Desktop\达人采集助手-portable-v3\达人采集助手-portable-v3\app\MediaCrawler-main\media_platform\douyin\core.py", line 342, in get_creators_and_videos creator_work_counts = await asyncio.gather( ^^^^^^^^^^^^^^^^^^^^^ File "C:\Users\EDY\Desktop\达人采集助手-portable-v3\达人采集助手-portable-v3\app\MediaCrawler-main\media_platform\douyin\core.py", line 306, in fetch_one_creator creator_info: Dict = await self.dy_client.get_user_info(user_id) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "C:\Users\EDY\Desktop\达人采集助手-portable-v3\达人采集助手-portable-v3\app\MediaCrawler-main\media_platform\douyin\client.py", line 319, in get_user_info return await self.get(uri, params) ^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "C:\Users\EDY\Desktop\达人采集助手-portable-v3\达人采集助手-portable-v3\app\MediaCrawler-main\media_platform\douyin\client.py", line 141, in get await self.__process_req_params(uri, params, headers) File "C:\Users\EDY\Desktop\达人采集助手-portable-v3\达人采集助手-portable-v3\app\MediaCrawler-main\media_platform\douyin\client.py", line 120, in __process_req_params a_bogus = await get_a_bogus(uri, query_string, post_data, headers["User-Agent"], self.playwright_page) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "C:\Users\EDY\Desktop\达人采集助手-portable-v3\达人采集助手-portable-v3\app\MediaCrawler-main\media_platform\douyin\help.py", line 81, in get_a_bogus return get_a_bogus_from_js(url, params, user_agent) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "C:\Users\EDY\Desktop\达人采集助手-portable-v3\达人采集助手-portable-v3\app\MediaCrawler-main\media_platform\douyin\help.py", line 100, in get_a_bogus_from_js result = subprocess.run( ^^^^^^^^^^^^^^^ File "C:\Users\EDY\Desktop\达人采集助手-portable-v3\达人采集助手-portable-v3\app\runtime\python\Lib\subprocess.py", line 548, in run with Popen(*popenargs, **kwargs) as process: ^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "C:\Users\EDY\Desktop\达人采集助手-portable-v3\达人采集助手-portable-v3\app\runtime\python\Lib\subprocess.py", line 1026, in __init__ self._execute_child(args, executable, preexec_fn, close_fds, File "C:\Users\EDY\Desktop\达人采集助手-portable-v3\达人采集助手-portable-v3\app\runtime\python\Lib\subprocess.py", line 1538, in _execute_child hp, ht, pid, tid = _winapi.CreateProcess(executable, args, ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ FileNotFoundError: [WinError 2] 系统找不到指定的文件。
我超爱吃烤鸭的 主页采集失败:2026-09-17 16:17:32 MediaCrawler INFO (core.py:77) - [DouYinCrawler] 使用CDP模式启动浏览器 2026-09-17 16:17:32 MediaCrawler INFO (cdp_browser.py:152) - [CDPBrowserManager] Connecting to existing browser on port 9222... 2026-09-17 16:17:32 MediaCrawler INFO (cdp_browser.py:155) - [CDPBrowserManager] Make sure remote debugging is enabled in your browser: chrome://inspect/#remote-debugging 2026-09-17 16:17:32 MediaCrawler INFO (cdp_browser.py:163) - [CDPBrowserManager] Waiting up to 60s for browser CDP connection... 2026-09-17 16:17:32 MediaCrawler INFO (cdp_browser.py:237) - [CDPBrowserManager] CDP port 9222 is accessible 2026-09-17 16:17:32 MediaCrawler INFO (cdp_browser.py:301) - [CDPBrowserManager] Got browser WebSocket URL: ws://localhost:9222/devtools/browser/b6166241-0447-4b83-98ca-78fdbeb71daf 2026-09-17 16:17:32 MediaCrawler INFO (cdp_browser.py:329) - [CDPBrowserManager] Connecting to existing browser via discovered CDP (attempt 1/3): ws://localhost:9222/devtools/browser/b6166241-0447-4b83-98ca-78fdbeb71daf 2026-09-17 16:17:32 MediaCrawler INFO (cdp_browser.py:333) - [CDPBrowserManager] If Chrome asks whether to allow remote debugging, accept it in the already logged-in browser window 2026-09-17 16:17:33 MediaCrawler INFO (cdp_browser.py:364) - [CDPBrowserManager] Successfully connected to browser 2026-09-17 16:17:33 MediaCrawler INFO (cdp_browser.py:365) - [CDPBrowserManager] Browser contexts count: 1 2026-09-17 16:17:33 MediaCrawler INFO (cdp_browser.py:390) - [CDPBrowserManager] Using existing browser context 2026-09-17 16:17:33 MediaCrawler INFO (cdp_browser.py:194) - [CDPBrowserManager] Successfully connected to existing browser 2026-09-17 16:17:33 MediaCrawler INFO (cdp_browser.py:422) - [CDPBrowserManager] Added anti-detection script: libs/stealth.min.js 2026-09-17 16:17:33 MediaCrawler INFO (core.py:450) - [DouYinCrawler] CDP浏览器信息: {'version': '152.0.7977.83', 'contexts_count': 1, 'debug_port': 9222, 'is_connected': True} 2026-09-17 16:17:36 MediaCrawler INFO (core.py:293) - [DouYinCrawler.get_creators_and_videos] Begin get douyin creators 2026-09-17 16:17:36 MediaCrawler INFO (core.py:294) - [DouYinCrawler.get_creators_and_videos] Parsing creator URLs... 2026-09-17 16:17:36 MediaCrawler INFO (core.py:339) - [DouYinCrawler.get_creators_and_videos] Creator concurrency: 2 2026-09-17 16:17:36 MediaCrawler INFO (core.py:301) - [DouYinCrawler.get_creators_and_videos] Parsed sec_user_id: MS4wLjABAAAA0V7AJ3EqoDNA8kIaTzSCQzR5lY8rhK0rquicc8JzoO78x-2PZvlrqDrJju1s6h-1 from MS4wLjABAAAA0V7AJ3EqoDNA8kIaTzSCQzR5lY8rhK0rquicc8JzoO78x-2PZvlrqDrJju1s6h-1 2026-09-17 16:17:36 MediaCrawler INFO (core.py:301) - [DouYinCrawler.get_creators_and_videos] Parsed sec_user_id: MS4wLjABAAAADINv1UMy9-XKl7ifoN_WzfKBfTNGJYHL1hgQXrK9UtI from MS4wLjABAAAADINv1UMy9-XKl7ifoN_WzfKBfTNGJYHL1hgQXrK9UtI 2026-09-17 16:17:36 MediaCrawler INFO (core.py:301) - [DouYinCrawler.get_creators_and_videos] Parsed sec_user_id: MS4wLjABAAAAi2W5j6pqn7Gea1ZujhxXNdq8qzntPAaKIijbt4qpidw from MS4wLjABAAAAi2W5j6pqn7Gea1ZujhxXNdq8qzntPAaKIijbt4qpidw 2026-09-17 16:17:36 MediaCrawler INFO (cdp_browser.py:490) - [CDPBrowserManager] Browser connection disconnected 2026-09-17 16:17:36 MediaCrawler INFO (cdp_browser.py:507) - [CDPBrowserManager] Connected to existing browser, skipping process cleanup 2026-09-17 16:17:36 MediaCrawler INFO (core.py:301) - [DouYinCrawler.get_creators_and_videos] Parsed sec_user_id: MS4wLjABAAAAQwuzE95dyOwLtYtv-C4p14wnCepnVnl5kUTOVfrrDRT8yNNLMzyl4CROKkqRKv4R from MS4wLjABAAAAQwuzE95dyOwLtYtv-C4p14wnCepnVnl5kUTOVfrrDRT8yNNLMzyl4CROKkqRKv4R 2026-09-17 16:17:36 MediaCrawler INFO (core.py:301) - [DouYinCrawler.get_creators_and_videos] Parsed sec_user_id: MS4wLjABAAAARuliBL9lf98sy7kkYWK9gHJzA7lzo6UcQpd6pub1N5hjVTcjhnHYbQz9p0s4T3iB from MS4wLjABAAAARuliBL9lf98sy7kkYWK9gHJzA7lzo6UcQpd6pub1N5hjVTcjhnHYbQz9p0s4T3iB Traceback (most recent call last): File "C:\Users\EDY\Desktop\达人采集助手-portable-v2\app\scripts\run-mediacrawler.py", line 21, in <module> runpy.run_path(os.path.join(crawler_root, "main.py"), run_name="__main__") File "<frozen runpy>", line 291, in run_path File "<frozen runpy>", line 98, in _run_module_code File "<frozen runpy>", line 88, in _run_code File "C:\Users\EDY\Desktop\达人采集助手-portable-v2\app\MediaCrawler-main\main.py", line 174, in <module> run(main, async_cleanup, cleanup_timeout_seconds=15.0, on_first_interrupt=_force_stop) File "C:\Users\EDY\Desktop\达人采集助手-portable-v2\app\MediaCrawler-main\tools\app_runner.py", line 109, in run asyncio.run(_runner()) File "C:\Users\EDY\Desktop\达人采集助手-portable-v2\app\runtime\python\Lib\asyncio\runners.py", line 190, in run return runner.run(main) ^^^^^^^^^^^^^^^^ File "C:\Users\EDY\Desktop\达人采集助手-portable-v2\app\runtime\python\Lib\asyncio\runners.py", line 118, in run return self._loop.run_until_complete(task) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "C:\Users\EDY\Desktop\达人采集助手-portable-v2\app\runtime\python\Lib\asyncio\base_events.py", line 654, in run_until_complete return future.result() ^^^^^^^^^^^^^^^ File "C:\Users\EDY\Desktop\达人采集助手-portable-v2\app\MediaCrawler-main\tools\app_runner.py", line 96, in _runner await app_main() File "C:\Users\EDY\Desktop\达人采集助手-portable-v2\app\MediaCrawler-main\main.py", line 114, in main await crawler.start() File "C:\Users\EDY\Desktop\达人采集助手-portable-v2\app\MediaCrawler-main\media_platform\douyin\core.py", line 141, in start await self.get_creators_and_videos() File "C:\Users\EDY\Desktop\达人采集助手-portable-v2\app\MediaCrawler-main\media_platform\douyin\core.py", line 342, in get_creators_and_videos creator_work_counts = await asyncio.gather( ^^^^^^^^^^^^^^^^^^^^^ File "C:\Users\EDY\Desktop\达人采集助手-portable-v2\app\MediaCrawler-main\media_platform\douyin\core.py", line 306, in fetch_one_creator creator_info: Dict = await self.dy_client.get_user_info(user_id) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "C:\Users\EDY\Desktop\达人采集助手-portable-v2\app\MediaCrawler-main\media_platform\douyin\client.py", line 319, in get_user_info return await self.get(uri, params) ^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "C:\Users\EDY\Desktop\达人采集助手-portable-v2\app\MediaCrawler-main\media_platform\douyin\client.py", line 141, in get await self.__process_req_params(uri, params, headers) File "C:\Users\EDY\Desktop\达人采集助手-portable-v2\app\MediaCrawler-main\media_platform\douyin\client.py", line 120, in __process_req_params a_bogus = await get_a_bogus(uri, query_string, post_data, headers["User-Agent"], self.playwright_page) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "C:\Users\EDY\Desktop\达人采集助手-portable-v2\app\MediaCrawler-main\media_platform\douyin\help.py", line 81, in get_a_bogus return get_a_bogus_from_js(url, params, user_agent) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "C:\Users\EDY\Desktop\达人采集助手-portable-v2\app\MediaCrawler-main\media_platform\douyin\help.py", line 100, in get_a_bogus_from_js result = subprocess.run( ^^^^^^^^^^^^^^^ File "C:\Users\EDY\Desktop\达人采集助手-portable-v2\app\runtime\python\Lib\subprocess.py", line 548, in run with Popen(*popenargs, **kwargs) as process: ^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "C:\Users\EDY\Desktop\达人采集助手-portable-v2\app\runtime\python\Lib\subprocess.py", line 1026, in __init__ self._execute_child(args, executable, preexec_fn, close_fds, File "C:\Users\EDY\Desktop\达人采集助手-portable-v2\app\runtime\python\Lib\subprocess.py", line 1538, in _execute_child hp, ht, pid, tid = _winapi.CreateProcess(executable, args, ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ FileNotFoundError: [WinError 2] 系统找不到指定的文件。
大牛的下午茶 主页采集失败:2026-09-17 16:17:32 MediaCrawler INFO (core.py:77) - [DouYinCrawler] 使用CDP模式启动浏览器 2026-09-17 16:17:32 MediaCrawler INFO (cdp_browser.py:152) - [CDPBrowserManager] Connecting to existing browser on port 9222... 2026-09-17 16:17:32 MediaCrawler INFO (cdp_browser.py:155) - [CDPBrowserManager] Make sure remote debugging is enabled in your browser: chrome://inspect/#remote-debugging 2026-09-17 16:17:32 MediaCrawler INFO (cdp_browser.py:163) - [CDPBrowserManager] Waiting up to 60s for browser CDP connection... 2026-09-17 16:17:32 MediaCrawler INFO (cdp_browser.py:237) - [CDPBrowserManager] CDP port 9222 is accessible 2026-09-17 16:17:32 MediaCrawler INFO (cdp_browser.py:301) - [CDPBrowserManager] Got browser WebSocket URL: ws://localhost:9222/devtools/browser/b6166241-0447-4b83-98ca-78fdbeb71daf 2026-09-17 16:17:32 MediaCrawler INFO (cdp_browser.py:329) - [CDPBrowserManager] Connecting to existing browser via discovered CDP (attempt 1/3): ws://localhost:9222/devtools/browser/b6166241-0447-4b83-98ca-78fdbeb71daf 2026-09-17 16:17:32 MediaCrawler INFO (cdp_browser.py:333) - [CDPBrowserManager] If Chrome asks whether to allow remote debugging, accept it in the already logged-in browser window 2026-09-17 16:17:33 MediaCrawler INFO (cdp_browser.py:364) - [CDPBrowserManager] Successfully connected to browser 2026-09-17 16:17:33 MediaCrawler INFO (cdp_browser.py:365) - [CDPBrowserManager] Browser contexts count: 1 2026-09-17 16:17:33 MediaCrawler INFO (cdp_browser.py:390) - [CDPBrowserManager] Using existing browser context 2026-09-17 16:17:33 MediaCrawler INFO (cdp_browser.py:194) - [CDPBrowserManager] Successfully connected to existing browser 2026-09-17 16:17:33 MediaCrawler INFO (cdp_browser.py:422) - [CDPBrowserManager] Added anti-detection script: libs/stealth.min.js 2026-09-17 16:17:33 MediaCrawler INFO (core.py:450) - [DouYinCrawler] CDP浏览器信息: {'version': '152.0.7977.83', 'contexts_count': 1, 'debug_port': 9222, 'is_connected': True} 2026-09-17 16:17:36 MediaCrawler INFO (core.py:293) - [DouYinCrawler.get_creators_and_videos] Begin get douyin creators 2026-09-17 16:17:36 MediaCrawler INFO (core.py:294) - [DouYinCrawler.get_creators_and_videos] Parsing creator URLs... 2026-09-17 16:17:36 MediaCrawler INFO (core.py:339) - [DouYinCrawler.get_creators_and_videos] Creator concurrency: 2 2026-09-17 16:17:36 MediaCrawler INFO (core.py:301) - [DouYinCrawler.get_creators_and_videos] Parsed sec_user_id: MS4wLjABAAAA0V7AJ3EqoDNA8kIaTzSCQzR5lY8rhK0rquicc8JzoO78x-2PZvlrqDrJju1s6h-1 from MS4wLjABAAAA0V7AJ3EqoDNA8kIaTzSCQzR5lY8rhK0rquicc8JzoO78x-2PZvlrqDrJju1s6h-1 2026-09-17 16:17:36 MediaCrawler INFO (core.py:301) - [DouYinCrawler.get_creators_and_videos] Parsed sec_user_id: MS4wLjABAAAADINv1UMy9-XKl7ifoN_WzfKBfTNGJYHL1hgQXrK9UtI from MS4wLjABAAAADINv1UMy9-XKl7ifoN_WzfKBfTNGJYHL1hgQXrK9UtI 2026-09-17 16:17:36 MediaCrawler INFO (core.py:301) - [DouYinCrawler.get_creators_and_videos] Parsed sec_user_id: MS4wLjABAAAAi2W5j6pqn7Gea1ZujhxXNdq8qzntPAaKIijbt4qpidw from MS4wLjABAAAAi2W5j6pqn7Gea1ZujhxXNdq8qzntPAaKIijbt4qpidw 2026-09-17 16:17:36 MediaCrawler INFO (cdp_browser.py:490) - [CDPBrowserManager] Browser connection disconnected 2026-09-17 16:17:36 MediaCrawler INFO (cdp_browser.py:507) - [CDPBrowserManager] Connected to existing browser, skipping process cleanup 2026-09-17 16:17:36 MediaCrawler INFO (core.py:301) - [DouYinCrawler.get_creators_and_videos] Parsed sec_user_id: MS4wLjABAAAAQwuzE95dyOwLtYtv-C4p14wnCepnVnl5kUTOVfrrDRT8yNNLMzyl4CROKkqRKv4R from MS4wLjABAAAAQwuzE95dyOwLtYtv-C4p14wnCepnVnl5kUTOVfrrDRT8yNNLMzyl4CROKkqRKv4R 2026-09-17 16:17:36 MediaCrawler INFO (core.py:301) - [DouYinCrawler.get_creators_and_videos] Parsed sec_user_id: MS4wLjABAAAARuliBL9lf98sy7kkYWK9gHJzA7lzo6UcQpd6pub1N5hjVTcjhnHYbQz9p0s4T3iB from MS4wLjABAAAARuliBL9lf98sy7kkYWK9gHJzA7lzo6UcQpd6pub1N5hjVTcjhnHYbQz9p0s4T3iB Traceback (most recent call last): File "C:\Users\EDY\Desktop\达人采集助手-portable-v2\app\scripts\run-mediacrawler.py", line 21, in <module> runpy.run_path(os.path.join(crawler_root, "main.py"), run_name="__main__") File "<frozen runpy>", line 291, in run_path File "<frozen runpy>", line 98, in _run_module_code File "<frozen runpy>", line 88, in _run_code File "C:\Users\EDY\Desktop\达人采集助手-portable-v2\app\MediaCrawler-main\main.py", line 174, in <module> run(main, async_cleanup, cleanup_timeout_seconds=15.0, on_first_interrupt=_force_stop) File "C:\Users\EDY\Desktop\达人采集助手-portable-v2\app\MediaCrawler-main\tools\app_runner.py", line 109, in run asyncio.run(_runner()) File "C:\Users\EDY\Desktop\达人采集助手-portable-v2\app\runtime\python\Lib\asyncio\runners.py", line 190, in run return runner.run(main) ^^^^^^^^^^^^^^^^ File "C:\Users\EDY\Desktop\达人采集助手-portable-v2\app\runtime\python\Lib\asyncio\runners.py", line 118, in run return self._loop.run_until_complete(task) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "C:\Users\EDY\Desktop\达人采集助手-portable-v2\app\runtime\python\Lib\asyncio\base_events.py", line 654, in run_until_complete return future.result() ^^^^^^^^^^^^^^^ File "C:\Users\EDY\Desktop\达人采集助手-portable-v2\app\MediaCrawler-main\tools\app_runner.py", line 96, in _runner await app_main() File "C:\Users\EDY\Desktop\达人采集助手-portable-v2\app\MediaCrawler-main\main.py", line 114, in main await crawler.start() File "C:\Users\EDY\Desktop\达人采集助手-portable-v2\app\MediaCrawler-main\media_platform\douyin\core.py", line 141, in start await self.get_creators_and_videos() File "C:\Users\EDY\Desktop\达人采集助手-portable-v2\app\MediaCrawler-main\media_platform\douyin\core.py", line 342, in get_creators_and_videos creator_work_counts = await asyncio.gather( ^^^^^^^^^^^^^^^^^^^^^ File "C:\Users\EDY\Desktop\达人采集助手-portable-v2\app\MediaCrawler-main\media_platform\douyin\core.py", line 306, in fetch_one_creator creator_info: Dict = await self.dy_client.get_user_info(user_id) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "C:\Users\EDY\Desktop\达人采集助手-portable-v2\app\MediaCrawler-main\media_platform\douyin\client.py", line 319, in get_user_info return await self.get(uri, params) ^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "C:\Users\EDY\Desktop\达人采集助手-portable-v2\app\MediaCrawler-main\media_platform\douyin\client.py", line 141, in get await self.__process_req_params(uri, params, headers) File "C:\Users\EDY\Desktop\达人采集助手-portable-v2\app\MediaCrawler-main\media_platform\douyin\client.py", line 120, in __process_req_params a_bogus = await get_a_bogus(uri, query_string, post_data, headers["User-Agent"], self.playwright_page) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "C:\Users\EDY\Desktop\达人采集助手-portable-v2\app\MediaCrawler-main\media_platform\douyin\help.py", line 81, in get_a_bogus return get_a_bogus_from_js(url, params, user_agent) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "C:\Users\EDY\Desktop\达人采集助手-portable-v2\app\MediaCrawler-main\media_platform\douyin\help.py", line 100, in get_a_bogus_from_js result = subprocess.run( ^^^^^^^^^^^^^^^ File "C:\Users\EDY\Desktop\达人采集助手-portable-v2\app\runtime\python\Lib\subprocess.py", line 548, in run with Popen(*popenargs, **kwargs) as process: ^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "C:\Users\EDY\Desktop\达人采集助手-portable-v2\app\runtime\python\Lib\subprocess.py", line 1026, in __init__ self._execute_child(args, executable, preexec_fn, close_fds, File "C:\Users\EDY\Desktop\达人采集助手-portable-v2\app\runtime\python\Lib\subprocess.py", line 1538, in _execute_child hp, ht, pid, tid = _winapi.CreateProcess(executable, args, ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ FileNotFoundError: [WinError 2] 系统找不到指定的文件。
梵高. 主页采集失败:2026-09-17 16:17:49 MediaCrawler INFO (core.py:77) - [DouYinCrawler] 使用CDP模式启动浏览器 2026-09-17 16:17:49 MediaCrawler INFO (cdp_browser.py:152) - [CDPBrowserManager] Connecting to existing browser on port 9222... 2026-09-17 16:17:49 MediaCrawler INFO (cdp_browser.py:155) - [CDPBrowserManager] Make sure remote debugging is enabled in your browser: chrome://inspect/#remote-debugging 2026-09-17 16:17:49 MediaCrawler INFO (cdp_browser.py:163) - [CDPBrowserManager] Waiting up to 60s for browser CDP connection... 2026-09-17 16:17:49 MediaCrawler INFO (cdp_browser.py:237) - [CDPBrowserManager] CDP port 9222 is accessible 2026-09-17 16:17:50 MediaCrawler INFO (cdp_browser.py:301) - [CDPBrowserManager] Got browser WebSocket URL: ws://localhost:9222/devtools/browser/b6166241-0447-4b83-98ca-78fdbeb71daf 2026-09-17 16:17:50 MediaCrawler INFO (cdp_browser.py:329) - [CDPBrowserManager] Connecting to existing browser via discovered CDP (attempt 1/3): ws://localhost:9222/devtools/browser/b6166241-0447-4b83-98ca-78fdbeb71daf 2026-09-17 16:17:50 MediaCrawler INFO (cdp_browser.py:333) - [CDPBrowserManager] If Chrome asks whether to allow remote debugging, accept it in the already logged-in browser window 2026-09-17 16:17:50 MediaCrawler INFO (cdp_browser.py:364) - [CDPBrowserManager] Successfully connected to browser 2026-09-17 16:17:50 MediaCrawler INFO (cdp_browser.py:365) - [CDPBrowserManager] Browser contexts count: 1 2026-09-17 16:17:50 MediaCrawler INFO (cdp_browser.py:390) - [CDPBrowserManager] Using existing browser context 2026-09-17 16:17:50 MediaCrawler INFO (cdp_browser.py:194) - [CDPBrowserManager] Successfully connected to existing browser 2026-09-17 16:17:51 MediaCrawler INFO (cdp_browser.py:422) - [CDPBrowserManager] Added anti-detection script: libs/stealth.min.js 2026-09-17 16:17:51 MediaCrawler INFO (core.py:450) - [DouYinCrawler] CDP浏览器信息: {'version': '152.0.7977.83', 'contexts_count': 1, 'debug_port': 9222, 'is_connected': True} 2026-09-17 16:17:54 MediaCrawler INFO (core.py:293) - [DouYinCrawler.get_creators_and_videos] Begin get douyin creators 2026-09-17 16:17:54 MediaCrawler INFO (core.py:294) - [DouYinCrawler.get_creators_and_videos] Parsing creator URLs... 2026-09-17 16:17:54 MediaCrawler INFO (core.py:339) - [DouYinCrawler.get_creators_and_videos] Creator concurrency: 2 2026-09-17 16:17:54 MediaCrawler INFO (core.py:301) - [DouYinCrawler.get_creators_and_videos] Parsed sec_user_id: MS4wLjABAAAA18r2rGm6-Fy4pWOBsuMKjiyaL00HVb8OXByyIJQefEjT2SSeRkCjNE9sUUiD5-QW from MS4wLjABAAAA18r2rGm6-Fy4pWOBsuMKjiyaL00HVb8OXByyIJQefEjT2SSeRkCjNE9sUUiD5-QW 2026-09-17 16:17:54 MediaCrawler INFO (core.py:301) - [DouYinCrawler.get_creators_and_videos] Parsed sec_user_id: MS4wLjABAAAA6yTSKg65reefWJZ1z9Ru9Fp2WheNP5ASIWlxJs4IYu3ZuatbcbNtImRNFQsZQkbV from MS4wLjABAAAA6yTSKg65reefWJZ1z9Ru9Fp2WheNP5ASIWlxJs4IYu3ZuatbcbNtImRNFQsZQkbV 2026-09-17 16:17:54 MediaCrawler INFO (core.py:301) - [DouYinCrawler.get_creators_and_videos] Parsed sec_user_id: MS4wLjABAAAAp2_PotlQmQPekOddQvZmlyk6ViEmyjlEwWyJqX9piNhSSD9e8LQHfXWneOZFZvPX from MS4wLjABAAAAp2_PotlQmQPekOddQvZmlyk6ViEmyjlEwWyJqX9piNhSSD9e8LQHfXWneOZFZvPX 2026-09-17 16:17:54 MediaCrawler INFO (cdp_browser.py:490) - [CDPBrowserManager] Browser connection disconnected 2026-09-17 16:17:54 MediaCrawler INFO (cdp_browser.py:507) - [CDPBrowserManager] Connected to existing browser, skipping process cleanup 2026-09-17 16:17:54 MediaCrawler INFO (core.py:301) - [DouYinCrawler.get_creators_and_videos] Parsed sec_user_id: MS4wLjABAAAAtGmbhJG4JeO_tTYOltQxkIrgfMmzZaTuVQeofYJ_V0M from MS4wLjABAAAAtGmbhJG4JeO_tTYOltQxkIrgfMmzZaTuVQeofYJ_V0M Traceback (most recent call last): File "C:\Users\EDY\Desktop\达人采集助手-portable-v2\app\scripts\run-mediacrawler.py", line 21, in <module> runpy.run_path(os.path.join(crawler_root, "main.py"), run_name="__main__") File "<frozen runpy>", line 291, in run_path File "<frozen runpy>", line 98, in _run_module_code File "<frozen runpy>", line 88, in _run_code File "C:\Users\EDY\Desktop\达人采集助手-portable-v2\app\MediaCrawler-main\main.py", line 174, in <module> run(main, async_cleanup, cleanup_timeout_seconds=15.0, on_first_interrupt=_force_stop) File "C:\Users\EDY\Desktop\达人采集助手-portable-v2\app\MediaCrawler-main\tools\app_runner.py", line 109, in run asyncio.run(_runner()) File "C:\Users\EDY\Desktop\达人采集助手-portable-v2\app\runtime\python\Lib\asyncio\runners.py", line 190, in run return runner.run(main) ^^^^^^^^^^^^^^^^ File "C:\Users\EDY\Desktop\达人采集助手-portable-v2\app\runtime\python\Lib\asyncio\runners.py", line 118, in run return self._loop.run_until_complete(task) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "C:\Users\EDY\Desktop\达人采集助手-portable-v2\app\runtime\python\Lib\asyncio\base_events.py", line 654, in run_until_complete return future.result() ^^^^^^^^^^^^^^^ File "C:\Users\EDY\Desktop\达人采集助手-portable-v2\app\MediaCrawler-main\tools\app_runner.py", line 96, in _runner await app_main() File "C:\Users\EDY\Desktop\达人采集助手-portable-v2\app\MediaCrawler-main\main.py", line 114, in main await crawler.start() File "C:\Users\EDY\Desktop\达人采集助手-portable-v2\app\MediaCrawler-main\media_platform\douyin\core.py", line 141, in start await self.get_creators_and_videos() File "C:\Users\EDY\Desktop\达人采集助手-portable-v2\app\MediaCrawler-main\media_platform\douyin\core.py", line 342, in get_creators_and_videos creator_work_counts = await asyncio.gather( ^^^^^^^^^^^^^^^^^^^^^ File "C:\Users\EDY\Desktop\达人采集助手-portable-v2\app\MediaCrawler-main\media_platform\douyin\core.py", line 306, in fetch_one_creator creator_info: Dict = await self.dy_client.get_user_info(user_id) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "C:\Users\EDY\Desktop\达人采集助手-portable-v2\app\MediaCrawler-main\media_platform\douyin\client.py", line 319, in get_user_info return await self.get(uri, params) ^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "C:\Users\EDY\Desktop\达人采集助手-portable-v2\app\MediaCrawler-main\media_platform\douyin\client.py", line 141, in get await self.__process_req_params(uri, params, headers) File "C:\Users\EDY\Desktop\达人采集助手-portable-v2\app\MediaCrawler-main\media_platform\douyin\client.py", line 120, in __process_req_params a_bogus = await get_a_bogus(uri, query_string, post_data, headers["User-Agent"], self.playwright_page) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "C:\Users\EDY\Desktop\达人采集助手-portable-v2\app\MediaCrawler-main\media_platform\douyin\help.py", line 81, in get_a_bogus return get_a_bogus_from_js(url, params, user_agent) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "C:\Users\EDY\Desktop\达人采集助手-portable-v2\app\MediaCrawler-main\media_platform\douyin\help.py", line 100, in get_a_bogus_from_js result = subprocess.run( ^^^^^^^^^^^^^^^ File "C:\Users\EDY\Desktop\达人采集助手-portable-v2\app\runtime\python\Lib\subprocess.py", line 548, in run with Popen(*popenargs, **kwargs) as process: ^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "C:\Users\EDY\Desktop\达人采集助手-portable-v2\app\runtime\python\Lib\subprocess.py", line 1026, in __init__ self._execute_child(args, executable, preexec_fn, close_fds, File "C:\Users\EDY\Desktop\达人采集助手-portable-v2\app\runtime\python\Lib\subprocess.py", line 1538, in _execute_child hp, ht, pid, tid = _winapi.CreateProcess(executable, args, ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ FileNotFoundError: [WinError 2] 系统找不到指定的文件。
小灰灰@ 主页采集失败:2026-09-17 16:32:06 MediaCrawler INFO (core.py:77) - [DouYinCrawler] 使用CDP模式启动浏览器 2026-09-17 16:32:06 MediaCrawler INFO (cdp_browser.py:152) - [CDPBrowserManager] Connecting to existing browser on port 9222... 2026-09-17 16:32:06 MediaCrawler INFO (cdp_browser.py:155) - [CDPBrowserManager] Make sure remote debugging is enabled in your browser: chrome://inspect/#remote-debugging 2026-09-17 16:32:06 MediaCrawler INFO (cdp_browser.py:163) - [CDPBrowserManager] Waiting up to 60s for browser CDP connection... 2026-09-17 16:32:06 MediaCrawler INFO (cdp_browser.py:237) - [CDPBrowserManager] CDP port 9222 is accessible 2026-09-17 16:32:07 MediaCrawler INFO (cdp_browser.py:301) - [CDPBrowserManager] Got browser WebSocket URL: ws://localhost:9222/devtools/browser/b6166241-0447-4b83-98ca-78fdbeb71daf 2026-09-17 16:32:07 MediaCrawler INFO (cdp_browser.py:329) - [CDPBrowserManager] Connecting to existing browser via discovered CDP (attempt 1/3): ws://localhost:9222/devtools/browser/b6166241-0447-4b83-98ca-78fdbeb71daf 2026-09-17 16:32:07 MediaCrawler INFO (cdp_browser.py:333) - [CDPBrowserManager] If Chrome asks whether to allow remote debugging, accept it in the already logged-in browser window 2026-09-17 16:32:08 MediaCrawler INFO (cdp_browser.py:364) - [CDPBrowserManager] Successfully connected to browser 2026-09-17 16:32:08 MediaCrawler INFO (cdp_browser.py:365) - [CDPBrowserManager] Browser contexts count: 1 2026-09-17 16:32:08 MediaCrawler INFO (cdp_browser.py:390) - [CDPBrowserManager] Using existing browser context 2026-09-17 16:32:08 MediaCrawler INFO (cdp_browser.py:194) - [CDPBrowserManager] Successfully connected to existing browser 2026-09-17 16:32:08 MediaCrawler INFO (cdp_browser.py:422) - [CDPBrowserManager] Added anti-detection script: libs/stealth.min.js 2026-09-17 16:32:08 MediaCrawler INFO (core.py:450) - [DouYinCrawler] CDP浏览器信息: {'version': '152.0.7977.83', 'contexts_count': 1, 'debug_port': 9222, 'is_connected': True} 2026-09-17 16:32:09 MediaCrawler INFO (core.py:293) - [DouYinCrawler.get_creators_and_videos] Begin get douyin creators 2026-09-17 16:32:09 MediaCrawler INFO (core.py:294) - [DouYinCrawler.get_creators_and_videos] Parsing creator URLs... 2026-09-17 16:32:09 MediaCrawler INFO (core.py:339) - [DouYinCrawler.get_creators_and_videos] Creator concurrency: 2 2026-09-17 16:32:09 MediaCrawler INFO (core.py:301) - [DouYinCrawler.get_creators_and_videos] Parsed sec_user_id: MS4wLjABAAAABkqrnqUzQnYv9Bvc8H2B6CZYc7SQMjDxScMpw3d18KA_554bLTOHgm2LpbMX8JWI from MS4wLjABAAAABkqrnqUzQnYv9Bvc8H2B6CZYc7SQMjDxScMpw3d18KA_554bLTOHgm2LpbMX8JWI 2026-09-17 16:32:09 MediaCrawler INFO (core.py:301) - [DouYinCrawler.get_creators_and_videos] Parsed sec_user_id: MS4wLjABAAAAexFpM7HqDksih6OlKdppTTEcyvdXFPDNOZyNRAatvKA from MS4wLjABAAAAexFpM7HqDksih6OlKdppTTEcyvdXFPDNOZyNRAatvKA 2026-09-17 16:32:09 MediaCrawler INFO (core.py:301) - [DouYinCrawler.get_creators_and_videos] Parsed sec_user_id: MS4wLjABAAAAFsF3Anolfk5DcVAWJrXZbyxwgqi4vZ4xJy4UtuG6vMX1-pezz0oJm2BeC1QxvMzv from MS4wLjABAAAAFsF3Anolfk5DcVAWJrXZbyxwgqi4vZ4xJy4UtuG6vMX1-pezz0oJm2BeC1QxvMzv 2026-09-17 16:32:09 MediaCrawler INFO (cdp_browser.py:490) - [CDPBrowserManager] Browser connection disconnected 2026-09-17 16:32:09 MediaCrawler INFO (cdp_browser.py:507) - [CDPBrowserManager] Connected to existing browser, skipping process cleanup 2026-09-17 16:32:09 MediaCrawler INFO (core.py:301) - [DouYinCrawler.get_creators_and_videos] Parsed sec_user_id: MS4wLjABAAAAI3Q32U3Y-_VBcSYDbhYk6hzup9SytpGZHe50rncdOB0 from MS4wLjABAAAAI3Q32U3Y-_VBcSYDbhYk6hzup9SytpGZHe50rncdOB0 2026-09-17 16:32:09 MediaCrawler INFO (core.py:301) - [DouYinCrawler.get_creators_and_videos] Parsed sec_user_id: MS4wLjABAAAAJ1hIJ93r2PJqj9aQEtYxb59XpFCQU2KK_Wi2ZybDQ08 from MS4wLjABAAAAJ1hIJ93r2PJqj9aQEtYxb59XpFCQU2KK_Wi2ZybDQ08 Traceback (most recent call last): File "C:\Users\EDY\Desktop\达人采集助手-portable-v2\app\scripts\run-mediacrawler.py", line 21, in <module> runpy.run_path(os.path.join(crawler_root, "main.py"), run_name="__main__") File "<frozen runpy>", line 291, in run_path File "<frozen runpy>", line 98, in _run_module_code File "<frozen runpy>", line 88, in _run_code File "C:\Users\EDY\Desktop\达人采集助手-portable-v2\app\MediaCrawler-main\main.py", line 174, in <module> run(main, async_cleanup, cleanup_timeout_seconds=15.0, on_first_interrupt=_force_stop) File "C:\Users\EDY\Desktop\达人采集助手-portable-v2\app\MediaCrawler-main\tools\app_runner.py", line 109, in run asyncio.run(_runner()) File "C:\Users\EDY\Desktop\达人采集助手-portable-v2\app\runtime\python\Lib\asyncio\runners.py", line 190, in run return runner.run(main) ^^^^^^^^^^^^^^^^ File "C:\Users\EDY\Desktop\达人采集助手-portable-v2\app\runtime\python\Lib\asyncio\runners.py", line 118, in run return self._loop.run_until_complete(task) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "C:\Users\EDY\Desktop\达人采集助手-portable-v2\app\runtime\python\Lib\asyncio\base_events.py", line 654, in run_until_complete return future.result() ^^^^^^^^^^^^^^^ File "C:\Users\EDY\Desktop\达人采集助手-portable-v2\app\MediaCrawler-main\tools\app_runner.py", line 96, in _runner await app_main() File "C:\Users\EDY\Desktop\达人采集助手-portable-v2\app\MediaCrawler-main\main.py", line 114, in main await crawler.start() File "C:\Users\EDY\Desktop\达人采集助手-portable-v2\app\MediaCrawler-main\media_platform\douyin\core.py", line 141, in start await self.get_creators_and_videos() File "C:\Users\EDY\Desktop\达人采集助手-portable-v2\app\MediaCrawler-main\media_platform\douyin\core.py", line 342, in get_creators_and_videos creator_work_counts = await asyncio.gather( ^^^^^^^^^^^^^^^^^^^^^ File "C:\Users\EDY\Desktop\达人采集助手-portable-v2\app\MediaCrawler-main\media_platform\douyin\core.py", line 306, in fetch_one_creator creator_info: Dict = await self.dy_client.get_user_info(user_id) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "C:\Users\EDY\Desktop\达人采集助手-portable-v2\app\MediaCrawler-main\media_platform\douyin\client.py", line 319, in get_user_info return await self.get(uri, params) ^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "C:\Users\EDY\Desktop\达人采集助手-portable-v2\app\MediaCrawler-main\media_platform\douyin\client.py", line 141, in get await self.__process_req_params(uri, params, headers) File "C:\Users\EDY\Desktop\达人采集助手-portable-v2\app\MediaCrawler-main\media_platform\douyin\client.py", line 120, in __process_req_params a_bogus = await get_a_bogus(uri, query_string, post_data, headers["User-Agent"], self.playwright_page) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "C:\Users\EDY\Desktop\达人采集助手-portable-v2\app\MediaCrawler-main\media_platform\douyin\help.py", line 81, in get_a_bogus return get_a_bogus_from_js(url, params, user_agent) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "C:\Users\EDY\Desktop\达人采集助手-portable-v2\app\MediaCrawler-main\media_platform\douyin\help.py", line 100, in get_a_bogus_from_js result = subprocess.run( ^^^^^^^^^^^^^^^ File "C:\Users\EDY\Desktop\达人采集助手-portable-v2\app\runtime\python\Lib\subprocess.py", line 548, in run with Popen(*popenargs, **kwargs) as process: ^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "C:\Users\EDY\Desktop\达人采集助手-portable-v2\app\runtime\python\Lib\subprocess.py", line 1026, in __init__ self._execute_child(args, executable, preexec_fn, close_fds, File "C:\Users\EDY\Desktop\达人采集助手-portable-v2\app\runtime\python\Lib\subprocess.py", line 1538, in _execute_child hp, ht, pid, tid = _winapi.CreateProcess(executable, args, ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ FileNotFoundError: [WinError 2] 系统找不到指定的文件。
无忧卡卡卡 主页采集失败:2026-09-17 16:35:26 MediaCrawler INFO (core.py:77) - [DouYinCrawler] 使用CDP模式启动浏览器 2026-09-17 16:35:26 MediaCrawler INFO (cdp_browser.py:152) - [CDPBrowserManager] Connecting to existing browser on port 9222... 2026-09-17 16:35:26 MediaCrawler INFO (cdp_browser.py:155) - [CDPBrowserManager] Make sure remote debugging is enabled in your browser: chrome://inspect/#remote-debugging 2026-09-17 16:35:26 MediaCrawler INFO (cdp_browser.py:163) - [CDPBrowserManager] Waiting up to 60s for browser CDP connection... 2026-09-17 16:35:26 MediaCrawler INFO (cdp_browser.py:237) - [CDPBrowserManager] CDP port 9222 is accessible 2026-09-17 16:35:26 MediaCrawler INFO (cdp_browser.py:301) - [CDPBrowserManager] Got browser WebSocket URL: ws://localhost:9222/devtools/browser/1f01f4e1-6d62-4fe4-8f4a-fda9567ef10b 2026-09-17 16:35:26 MediaCrawler INFO (cdp_browser.py:329) - [CDPBrowserManager] Connecting to existing browser via discovered CDP (attempt 1/3): ws://localhost:9222/devtools/browser/1f01f4e1-6d62-4fe4-8f4a-fda9567ef10b 2026-09-17 16:35:26 MediaCrawler INFO (cdp_browser.py:333) - [CDPBrowserManager] If Chrome asks whether to allow remote debugging, accept it in the already logged-in browser window 2026-09-17 16:35:27 MediaCrawler INFO (cdp_browser.py:364) - [CDPBrowserManager] Successfully connected to browser 2026-09-17 16:35:27 MediaCrawler INFO (cdp_browser.py:365) - [CDPBrowserManager] Browser contexts count: 1 2026-09-17 16:35:27 MediaCrawler INFO (cdp_browser.py:390) - [CDPBrowserManager] Using existing browser context 2026-09-17 16:35:27 MediaCrawler INFO (cdp_browser.py:194) - [CDPBrowserManager] Successfully connected to existing browser 2026-09-17 16:35:27 MediaCrawler INFO (cdp_browser.py:422) - [CDPBrowserManager] Added anti-detection script: libs/stealth.min.js 2026-09-17 16:35:27 MediaCrawler INFO (core.py:450) - [DouYinCrawler] CDP浏览器信息: {'version': '152.0.7977.83', 'contexts_count': 1, 'debug_port': 9222, 'is_connected': True} 2026-09-17 16:35:28 MediaCrawler INFO (core.py:293) - [DouYinCrawler.get_creators_and_videos] Begin get douyin creators 2026-09-17 16:35:28 MediaCrawler INFO (core.py:294) - [DouYinCrawler.get_creators_and_videos] Parsing creator URLs... 2026-09-17 16:35:28 MediaCrawler INFO (core.py:339) - [DouYinCrawler.get_creators_and_videos] Creator concurrency: 2 2026-09-17 16:35:28 MediaCrawler INFO (core.py:301) - [DouYinCrawler.get_creators_and_videos] Parsed sec_user_id: MS4wLjABAAAAoejIm4CdbmzyuZEaVDCUSkP0X3jJFkZ99Nnbk_1LG3EM3xezwxiaW0zl5fbsv7jr from MS4wLjABAAAAoejIm4CdbmzyuZEaVDCUSkP0X3jJFkZ99Nnbk_1LG3EM3xezwxiaW0zl5fbsv7jr 2026-09-17 16:35:28 MediaCrawler INFO (core.py:301) - [DouYinCrawler.get_creators_and_videos] Parsed sec_user_id: MS4wLjABAAAAR4NRDTIB_tn8SzL7RgUXtW1LDUA1AnIykQx16tQfQ2yGG2by_MhHdFxdQI0oxiES from MS4wLjABAAAAR4NRDTIB_tn8SzL7RgUXtW1LDUA1AnIykQx16tQfQ2yGG2by_MhHdFxdQI0oxiES 2026-09-17 16:35:28 MediaCrawler INFO (cdp_browser.py:490) - [CDPBrowserManager] Browser connection disconnected 2026-09-17 16:35:28 MediaCrawler INFO (cdp_browser.py:507) - [CDPBrowserManager] Connected to existing browser, skipping process cleanup Traceback (most recent call last): File "C:\Users\EDY\Desktop\达人采集助手-portable-v2\app\scripts\run-mediacrawler.py", line 21, in <module> runpy.run_path(os.path.join(crawler_root, "main.py"), run_name="__main__") File "<frozen runpy>", line 291, in run_path File "<frozen runpy>", line 98, in _run_module_code File "<frozen runpy>", line 88, in _run_code File "C:\Users\EDY\Desktop\达人采集助手-portable-v2\app\MediaCrawler-main\main.py", line 174, in <module> run(main, async_cleanup, cleanup_timeout_seconds=15.0, on_first_interrupt=_force_stop) File "C:\Users\EDY\Desktop\达人采集助手-portable-v2\app\MediaCrawler-main\tools\app_runner.py", line 109, in run asyncio.run(_runner()) File "C:\Users\EDY\Desktop\达人采集助手-portable-v2\app\runtime\python\Lib\asyncio\runners.py", line 190, in run return runner.run(main) ^^^^^^^^^^^^^^^^ File "C:\Users\EDY\Desktop\达人采集助手-portable-v2\app\runtime\python\Lib\asyncio\runners.py", line 118, in run return self._loop.run_until_complete(task) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "C:\Users\EDY\Desktop\达人采集助手-portable-v2\app\runtime\python\Lib\asyncio\base_events.py", line 654, in run_until_complete return future.result() ^^^^^^^^^^^^^^^ File "C:\Users\EDY\Desktop\达人采集助手-portable-v2\app\MediaCrawler-main\tools\app_runner.py", line 96, in _runner await app_main() File "C:\Users\EDY\Desktop\达人采集助手-portable-v2\app\MediaCrawler-main\main.py", line 114, in main await crawler.start() File "C:\Users\EDY\Desktop\达人采集助手-portable-v2\app\MediaCrawler-main\media_platform\douyin\core.py", line 141, in start await self.get_creators_and_videos() File "C:\Users\EDY\Desktop\达人采集助手-portable-v2\app\MediaCrawler-main\media_platform\douyin\core.py", line 342, in get_creators_and_videos creator_work_counts = await asyncio.gather( ^^^^^^^^^^^^^^^^^^^^^ File "C:\Users\EDY\Desktop\达人采集助手-portable-v2\app\MediaCrawler-main\media_platform\douyin\core.py", line 306, in fetch_one_creator creator_info: Dict = await self.dy_client.get_user_info(user_id) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "C:\Users\EDY\Desktop\达人采集助手-portable-v2\app\MediaCrawler-main\media_platform\douyin\client.py", line 319, in get_user_info return await self.get(uri, params) ^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "C:\Users\EDY\Desktop\达人采集助手-portable-v2\app\MediaCrawler-main\media_platform\douyin\client.py", line 141, in get await self.__process_req_params(uri, params, headers) File "C:\Users\EDY\Desktop\达人采集助手-portable-v2\app\MediaCrawler-main\media_platform\douyin\client.py", line 120, in __process_req_params a_bogus = await get_a_bogus(uri, query_string, post_data, headers["User-Agent"], self.playwright_page) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "C:\Users\EDY\Desktop\达人采集助手-portable-v2\app\MediaCrawler-main\media_platform\douyin\help.py", line 81, in get_a_bogus return get_a_bogus_from_js(url, params, user_agent) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "C:\Users\EDY\Desktop\达人采集助手-portable-v2\app\MediaCrawler-main\media_platform\douyin\help.py", line 100, in get_a_bogus_from_js result = subprocess.run( ^^^^^^^^^^^^^^^ File "C:\Users\EDY\Desktop\达人采集助手-portable-v2\app\runtime\python\Lib\subprocess.py", line 548, in run with Popen(*popenargs, **kwargs) as process: ^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "C:\Users\EDY\Desktop\达人采集助手-portable-v2\app\runtime\python\Lib\subprocess.py", line 1026, in __init__ self._execute_child(args, executable, preexec_fn, close_fds, File "C:\Users\EDY\Desktop\达人采集助手-portable-v2\app\runtime\python\Lib\subprocess.py", line 1538, in _execute_child hp, ht, pid, tid = _winapi.CreateProcess(executable, args, ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ FileNotFoundError: [WinError 2] 系统找不到指定的文件。
淘妹不淘气 主页采集失败:2026-09-17 16:14:55 MediaCrawler INFO (core.py:77) - [DouYinCrawler] 使用CDP模式启动浏览器 2026-09-17 16:14:55 MediaCrawler INFO (cdp_browser.py:152) - [CDPBrowserManager] Connecting to existing browser on port 9222... 2026-09-17 16:14:55 MediaCrawler INFO (cdp_browser.py:155) - [CDPBrowserManager] Make sure remote debugging is enabled in your browser: chrome://inspect/#remote-debugging 2026-09-17 16:14:55 MediaCrawler INFO (cdp_browser.py:163) - [CDPBrowserManager] Waiting up to 60s for browser CDP connection... 2026-09-17 16:14:55 MediaCrawler INFO (cdp_browser.py:237) - [CDPBrowserManager] CDP port 9222 is accessible 2026-09-17 16:14:55 MediaCrawler INFO (cdp_browser.py:301) - [CDPBrowserManager] Got browser WebSocket URL: ws://localhost:9222/devtools/browser/de0c60f3-2b1a-4fcc-adf5-d6c8e827445b 2026-09-17 16:14:55 MediaCrawler INFO (cdp_browser.py:329) - [CDPBrowserManager] Connecting to existing browser via discovered CDP (attempt 1/3): ws://localhost:9222/devtools/browser/de0c60f3-2b1a-4fcc-adf5-d6c8e827445b 2026-09-17 16:14:55 MediaCrawler INFO (cdp_browser.py:333) - [CDPBrowserManager] If Chrome asks whether to allow remote debugging, accept it in the already logged-in browser window 2026-09-17 16:14:56 MediaCrawler INFO (cdp_browser.py:364) - [CDPBrowserManager] Successfully connected to browser 2026-09-17 16:14:56 MediaCrawler INFO (cdp_browser.py:365) - [CDPBrowserManager] Browser contexts count: 1 2026-09-17 16:14:56 MediaCrawler INFO (cdp_browser.py:390) - [CDPBrowserManager] Using existing browser context 2026-09-17 16:14:56 MediaCrawler INFO (cdp_browser.py:194) - [CDPBrowserManager] Successfully connected to existing browser 2026-09-17 16:14:56 MediaCrawler INFO (cdp_browser.py:422) - [CDPBrowserManager] Added anti-detection script: libs/stealth.min.js 2026-09-17 16:14:56 MediaCrawler INFO (core.py:450) - [DouYinCrawler] CDP浏览器信息: {'version': '152.0.7977.83', 'contexts_count': 1, 'debug_port': 9222, 'is_connected': True} 2026-09-17 16:14:57 MediaCrawler INFO (core.py:293) - [DouYinCrawler.get_creators_and_videos] Begin get douyin creators 2026-09-17 16:14:57 MediaCrawler INFO (core.py:294) - [DouYinCrawler.get_creators_and_videos] Parsing creator URLs... 2026-09-17 16:14:57 MediaCrawler INFO (core.py:339) - [DouYinCrawler.get_creators_and_videos] Creator concurrency: 2 2026-09-17 16:14:57 MediaCrawler INFO (core.py:301) - [DouYinCrawler.get_creators_and_videos] Parsed sec_user_id: MS4wLjABAAAAjJrhhQDmjID51Von5NeD7ql7X-OqqY24yIgiNo1yO4_N7I6GrLR3camYax0mBhCl from MS4wLjABAAAAjJrhhQDmjID51Von5NeD7ql7X-OqqY24yIgiNo1yO4_N7I6GrLR3camYax0mBhCl 2026-09-17 16:14:57 MediaCrawler INFO (core.py:301) - [DouYinCrawler.get_creators_and_videos] Parsed sec_user_id: MS4wLjABAAAAoIynL8rpEuRGXnbaCOQKYjfuBf4enwQtHEjLqjTkw4k from MS4wLjABAAAAoIynL8rpEuRGXnbaCOQKYjfuBf4enwQtHEjLqjTkw4k 2026-09-17 16:14:57 MediaCrawler INFO (core.py:301) - [DouYinCrawler.get_creators_and_videos] Parsed sec_user_id: MS4wLjABAAAAxZwVBBZgOqL4o-D0Q4U-l4bxIu4lEt9AFMIahnmP3gjFQcuyZaFfzm6h9OR_v5Pg from MS4wLjABAAAAxZwVBBZgOqL4o-D0Q4U-l4bxIu4lEt9AFMIahnmP3gjFQcuyZaFfzm6h9OR_v5Pg 2026-09-17 16:14:57 MediaCrawler INFO (cdp_browser.py:490) - [CDPBrowserManager] Browser connection disconnected 2026-09-17 16:14:57 MediaCrawler INFO (cdp_browser.py:507) - [CDPBrowserManager] Connected to existing browser, skipping process cleanup 2026-09-17 16:14:57 MediaCrawler INFO (core.py:301) - [DouYinCrawler.get_creators_and_videos] Parsed sec_user_id: MS4wLjABAAAAyCgoDQuBXz4kL2CbiiUd2wdlLgt6i7TcCVdWQ85Tip0 from MS4wLjABAAAAyCgoDQuBXz4kL2CbiiUd2wdlLgt6i7TcCVdWQ85Tip0 2026-09-17 16:14:57 MediaCrawler INFO (core.py:301) - [DouYinCrawler.get_creators_and_videos] Parsed sec_user_id: MS4wLjABAAAAyMDHJlJKcd8EBU3oUB672_5Q5led88zBZRiVtAKApD4hEh3JNvVNMv0UJ4q-tg5o from MS4wLjABAAAAyMDHJlJKcd8EBU3oUB672_5Q5led88zBZRiVtAKApD4hEh3JNvVNMv0UJ4q-tg5o Traceback (most recent call last): File "C:\Users\EDY\Desktop\达人采集助手-portable-v2\app\scripts\run-mediacrawler.py", line 21, in <module> runpy.run_path(os.path.join(crawler_root, "main.py"), run_name="__main__") File "<frozen runpy>", line 291, in run_path File "<frozen runpy>", line 98, in _run_module_code File "<frozen runpy>", line 88, in _run_code File "C:\Users\EDY\Desktop\达人采集助手-portable-v2\app\MediaCrawler-main\main.py", line 174, in <module> run(main, async_cleanup, cleanup_timeout_seconds=15.0, on_first_interrupt=_force_stop) File "C:\Users\EDY\Desktop\达人采集助手-portable-v2\app\MediaCrawler-main\tools\app_runner.py", line 109, in run asyncio.run(_runner()) File "C:\Users\EDY\Desktop\达人采集助手-portable-v2\app\runtime\python\Lib\asyncio\runners.py", line 190, in run return runner.run(main) ^^^^^^^^^^^^^^^^ File "C:\Users\EDY\Desktop\达人采集助手-portable-v2\app\runtime\python\Lib\asyncio\runners.py", line 118, in run return self._loop.run_until_complete(task) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "C:\Users\EDY\Desktop\达人采集助手-portable-v2\app\runtime\python\Lib\asyncio\base_events.py", line 654, in run_until_complete return future.result() ^^^^^^^^^^^^^^^ File "C:\Users\EDY\Desktop\达人采集助手-portable-v2\app\MediaCrawler-main\tools\app_runner.py", line 96, in _runner await app_main() File "C:\Users\EDY\Desktop\达人采集助手-portable-v2\app\MediaCrawler-main\main.py", line 114, in main await crawler.start() File "C:\Users\EDY\Desktop\达人采集助手-portable-v2\app\MediaCrawler-main\media_platform\douyin\core.py", line 141, in start await self.get_creators_and_videos() File "C:\Users\EDY\Desktop\达人采集助手-portable-v2\app\MediaCrawler-main\media_platform\douyin\core.py", line 342, in get_creators_and_videos creator_work_counts = await asyncio.gather( ^^^^^^^^^^^^^^^^^^^^^ File "C:\Users\EDY\Desktop\达人采集助手-portable-v2\app\MediaCrawler-main\media_platform\douyin\core.py", line 306, in fetch_one_creator creator_info: Dict = await self.dy_client.get_user_info(user_id) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "C:\Users\EDY\Desktop\达人采集助手-portable-v2\app\MediaCrawler-main\media_platform\douyin\client.py", line 319, in get_user_info return await self.get(uri, params) ^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "C:\Users\EDY\Desktop\达人采集助手-portable-v2\app\MediaCrawler-main\media_platform\douyin\client.py", line 141, in get await self.__process_req_params(uri, params, headers) File "C:\Users\EDY\Desktop\达人采集助手-portable-v2\app\MediaCrawler-main\media_platform\douyin\client.py", line 120, in __process_req_params a_bogus = await get_a_bogus(uri, query_string, post_data, headers["User-Agent"], self.playwright_page) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "C:\Users\EDY\Desktop\达人采集助手-portable-v2\app\MediaCrawler-main\media_platform\douyin\help.py", line 81, in get_a_bogus return get_a_bogus_from_js(url, params, user_agent) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "C:\Users\EDY\Desktop\达人采集助手-portable-v2\app\MediaCrawler-main\media_platform\douyin\help.py", line 100, in get_a_bogus_from_js result = subprocess.run( ^^^^^^^^^^^^^^^ File "C:\Users\EDY\Desktop\达人采集助手-portable-v2\app\runtime\python\Lib\subprocess.py", line 548, in run with Popen(*popenargs, **kwargs) as process: ^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "C:\Users\EDY\Desktop\达人采集助手-portable-v2\app\runtime\python\Lib\subprocess.py", line 1026, in __init__ self._execute_child(args, executable, preexec_fn, close_fds, File "C:\Users\EDY\Desktop\达人采集助手-portable-v2\app\runtime\python\Lib\subprocess.py", line 1538, in _execute_child hp, ht, pid, tid = _winapi.CreateProcess(executable, args, ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ FileNotFoundError: [WinError 2] 系统找不到指定的文件。
棕袜子 主页采集失败:2026-09-17 16:17:32 MediaCrawler INFO (core.py:77) - [DouYinCrawler] 使用CDP模式启动浏览器 2026-09-17 16:17:32 MediaCrawler INFO (cdp_browser.py:152) - [CDPBrowserManager] Connecting to existing browser on port 9222... 2026-09-17 16:17:32 MediaCrawler INFO (cdp_browser.py:155) - [CDPBrowserManager] Make sure remote debugging is enabled in your browser: chrome://inspect/#remote-debugging 2026-09-17 16:17:32 MediaCrawler INFO (cdp_browser.py:163) - [CDPBrowserManager] Waiting up to 60s for browser CDP connection... 2026-09-17 16:17:32 MediaCrawler INFO (cdp_browser.py:237) - [CDPBrowserManager] CDP port 9222 is accessible 2026-09-17 16:17:32 MediaCrawler INFO (cdp_browser.py:301) - [CDPBrowserManager] Got browser WebSocket URL: ws://localhost:9222/devtools/browser/b6166241-0447-4b83-98ca-78fdbeb71daf 2026-09-17 16:17:32 MediaCrawler INFO (cdp_browser.py:329) - [CDPBrowserManager] Connecting to existing browser via discovered CDP (attempt 1/3): ws://localhost:9222/devtools/browser/b6166241-0447-4b83-98ca-78fdbeb71daf 2026-09-17 16:17:32 MediaCrawler INFO (cdp_browser.py:333) - [CDPBrowserManager] If Chrome asks whether to allow remote debugging, accept it in the already logged-in browser window 2026-09-17 16:17:33 MediaCrawler INFO (cdp_browser.py:364) - [CDPBrowserManager] Successfully connected to browser 2026-09-17 16:17:33 MediaCrawler INFO (cdp_browser.py:365) - [CDPBrowserManager] Browser contexts count: 1 2026-09-17 16:17:33 MediaCrawler INFO (cdp_browser.py:390) - [CDPBrowserManager] Using existing browser context 2026-09-17 16:17:33 MediaCrawler INFO (cdp_browser.py:194) - [CDPBrowserManager] Successfully connected to existing browser 2026-09-17 16:17:33 MediaCrawler INFO (cdp_browser.py:422) - [CDPBrowserManager] Added anti-detection script: libs/stealth.min.js 2026-09-17 16:17:33 MediaCrawler INFO (core.py:450) - [DouYinCrawler] CDP浏览器信息: {'version': '152.0.7977.83', 'contexts_count': 1, 'debug_port': 9222, 'is_connected': True} 2026-09-17 16:17:36 MediaCrawler INFO (core.py:293) - [DouYinCrawler.get_creators_and_videos] Begin get douyin creators 2026-09-17 16:17:36 MediaCrawler INFO (core.py:294) - [DouYinCrawler.get_creators_and_videos] Parsing creator URLs... 2026-09-17 16:17:36 MediaCrawler INFO (core.py:339) - [DouYinCrawler.get_creators_and_videos] Creator concurrency: 2 2026-09-17 16:17:36 MediaCrawler INFO (core.py:301) - [DouYinCrawler.get_creators_and_videos] Parsed sec_user_id: MS4wLjABAAAA0V7AJ3EqoDNA8kIaTzSCQzR5lY8rhK0rquicc8JzoO78x-2PZvlrqDrJju1s6h-1 from MS4wLjABAAAA0V7AJ3EqoDNA8kIaTzSCQzR5lY8rhK0rquicc8JzoO78x-2PZvlrqDrJju1s6h-1 2026-09-17 16:17:36 MediaCrawler INFO (core.py:301) - [DouYinCrawler.get_creators_and_videos] Parsed sec_user_id: MS4wLjABAAAADINv1UMy9-XKl7ifoN_WzfKBfTNGJYHL1hgQXrK9UtI from MS4wLjABAAAADINv1UMy9-XKl7ifoN_WzfKBfTNGJYHL1hgQXrK9UtI 2026-09-17 16:17:36 MediaCrawler INFO (core.py:301) - [DouYinCrawler.get_creators_and_videos] Parsed sec_user_id: MS4wLjABAAAAi2W5j6pqn7Gea1ZujhxXNdq8qzntPAaKIijbt4qpidw from MS4wLjABAAAAi2W5j6pqn7Gea1ZujhxXNdq8qzntPAaKIijbt4qpidw 2026-09-17 16:17:36 MediaCrawler INFO (cdp_browser.py:490) - [CDPBrowserManager] Browser connection disconnected 2026-09-17 16:17:36 MediaCrawler INFO (cdp_browser.py:507) - [CDPBrowserManager] Connected to existing browser, skipping process cleanup 2026-09-17 16:17:36 MediaCrawler INFO (core.py:301) - [DouYinCrawler.get_creators_and_videos] Parsed sec_user_id: MS4wLjABAAAAQwuzE95dyOwLtYtv-C4p14wnCepnVnl5kUTOVfrrDRT8yNNLMzyl4CROKkqRKv4R from MS4wLjABAAAAQwuzE95dyOwLtYtv-C4p14wnCepnVnl5kUTOVfrrDRT8yNNLMzyl4CROKkqRKv4R 2026-09-17 16:17:36 MediaCrawler INFO (core.py:301) - [DouYinCrawler.get_creators_and_videos] Parsed sec_user_id: MS4wLjABAAAARuliBL9lf98sy7kkYWK9gHJzA7lzo6UcQpd6pub1N5hjVTcjhnHYbQz9p0s4T3iB from MS4wLjABAAAARuliBL9lf98sy7kkYWK9gHJzA7lzo6UcQpd6pub1N5hjVTcjhnHYbQz9p0s4T3iB Traceback (most recent call last): File "C:\Users\EDY\Desktop\达人采集助手-portable-v2\app\scripts\run-mediacrawler.py", line 21, in <module> runpy.run_path(os.path.join(crawler_root, "main.py"), run_name="__main__") File "<frozen runpy>", line 291, in run_path File "<frozen runpy>", line 98, in _run_module_code File "<frozen runpy>", line 88, in _run_code File "C:\Users\EDY\Desktop\达人采集助手-portable-v2\app\MediaCrawler-main\main.py", line 174, in <module> run(main, async_cleanup, cleanup_timeout_seconds=15.0, on_first_interrupt=_force_stop) File "C:\Users\EDY\Desktop\达人采集助手-portable-v2\app\MediaCrawler-main\tools\app_runner.py", line 109, in run asyncio.run(_runner()) File "C:\Users\EDY\Desktop\达人采集助手-portable-v2\app\runtime\python\Lib\asyncio\runners.py", line 190, in run return runner.run(main) ^^^^^^^^^^^^^^^^ File "C:\Users\EDY\Desktop\达人采集助手-portable-v2\app\runtime\python\Lib\asyncio\runners.py", line 118, in run return self._loop.run_until_complete(task) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "C:\Users\EDY\Desktop\达人采集助手-portable-v2\app\runtime\python\Lib\asyncio\base_events.py", line 654, in run_until_complete return future.result() ^^^^^^^^^^^^^^^ File "C:\Users\EDY\Desktop\达人采集助手-portable-v2\app\MediaCrawler-main\tools\app_runner.py", line 96, in _runner await app_main() File "C:\Users\EDY\Desktop\达人采集助手-portable-v2\app\MediaCrawler-main\main.py", line 114, in main await crawler.start() File "C:\Users\EDY\Desktop\达人采集助手-portable-v2\app\MediaCrawler-main\media_platform\douyin\core.py", line 141, in start await self.get_creators_and_videos() File "C:\Users\EDY\Desktop\达人采集助手-portable-v2\app\MediaCrawler-main\media_platform\douyin\core.py", line 342, in get_creators_and_videos creator_work_counts = await asyncio.gather( ^^^^^^^^^^^^^^^^^^^^^ File "C:\Users\EDY\Desktop\达人采集助手-portable-v2\app\MediaCrawler-main\media_platform\douyin\core.py", line 306, in fetch_one_creator creator_info: Dict = await self.dy_client.get_user_info(user_id) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "C:\Users\EDY\Desktop\达人采集助手-portable-v2\app\MediaCrawler-main\media_platform\douyin\client.py", line 319, in get_user_info return await self.get(uri, params) ^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "C:\Users\EDY\Desktop\达人采集助手-portable-v2\app\MediaCrawler-main\media_platform\douyin\client.py", line 141, in get await self.__process_req_params(uri, params, headers) File "C:\Users\EDY\Desktop\达人采集助手-portable-v2\app\MediaCrawler-main\media_platform\douyin\client.py", line 120, in __process_req_params a_bogus = await get_a_bogus(uri, query_string, post_data, headers["User-Agent"], self.playwright_page) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "C:\Users\EDY\Desktop\达人采集助手-portable-v2\app\MediaCrawler-main\media_platform\douyin\help.py", line 81, in get_a_bogus return get_a_bogus_from_js(url, params, user_agent) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "C:\Users\EDY\Desktop\达人采集助手-portable-v2\app\MediaCrawler-main\media_platform\douyin\help.py", line 100, in get_a_bogus_from_js result = subprocess.run( ^^^^^^^^^^^^^^^ File "C:\Users\EDY\Desktop\达人采集助手-portable-v2\app\runtime\python\Lib\subprocess.py", line 548, in run with Popen(*popenargs, **kwargs) as process: ^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "C:\Users\EDY\Desktop\达人采集助手-portable-v2\app\runtime\python\Lib\subprocess.py", line 1026, in __init__ self._execute_child(args, executable, preexec_fn, close_fds, File "C:\Users\EDY\Desktop\达人采集助手-portable-v2\app\runtime\python\Lib\subprocess.py", line 1538, in _execute_child hp, ht, pid, tid = _winapi.CreateProcess(executable, args, ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ FileNotFoundError: [WinError 2] 系统找不到指定的文件。
辅界新星 主页采集失败:2026-09-17 16:33:23 MediaCrawler INFO (core.py:77) - [DouYinCrawler] 使用CDP模式启动浏览器 2026-09-17 16:33:23 MediaCrawler INFO (cdp_browser.py:152) - [CDPBrowserManager] Connecting to existing browser on port 9222... 2026-09-17 16:33:23 MediaCrawler INFO (cdp_browser.py:155) - [CDPBrowserManager] Make sure remote debugging is enabled in your browser: chrome://inspect/#remote-debugging 2026-09-17 16:33:23 MediaCrawler INFO (cdp_browser.py:163) - [CDPBrowserManager] Waiting up to 60s for browser CDP connection... 2026-09-17 16:33:23 MediaCrawler INFO (cdp_browser.py:237) - [CDPBrowserManager] CDP port 9222 is accessible 2026-09-17 16:33:24 MediaCrawler INFO (cdp_browser.py:301) - [CDPBrowserManager] Got browser WebSocket URL: ws://localhost:9222/devtools/browser/e865e2b1-cf64-400c-ae5e-9fdafb4f57aa 2026-09-17 16:33:24 MediaCrawler INFO (cdp_browser.py:329) - [CDPBrowserManager] Connecting to existing browser via discovered CDP (attempt 1/3): ws://localhost:9222/devtools/browser/e865e2b1-cf64-400c-ae5e-9fdafb4f57aa 2026-09-17 16:33:24 MediaCrawler INFO (cdp_browser.py:333) - [CDPBrowserManager] If Chrome asks whether to allow remote debugging, accept it in the already logged-in browser window 2026-09-17 16:33:24 MediaCrawler INFO (cdp_browser.py:364) - [CDPBrowserManager] Successfully connected to browser 2026-09-17 16:33:24 MediaCrawler INFO (cdp_browser.py:365) - [CDPBrowserManager] Browser contexts count: 1 2026-09-17 16:33:24 MediaCrawler INFO (cdp_browser.py:390) - [CDPBrowserManager] Using existing browser context 2026-09-17 16:33:24 MediaCrawler INFO (cdp_browser.py:194) - [CDPBrowserManager] Successfully connected to existing browser 2026-09-17 16:33:24 MediaCrawler INFO (cdp_browser.py:422) - [CDPBrowserManager] Added anti-detection script: libs/stealth.min.js 2026-09-17 16:33:24 MediaCrawler INFO (core.py:450) - [DouYinCrawler] CDP浏览器信息: {'version': '152.0.7977.83', 'contexts_count': 1, 'debug_port': 9222, 'is_connected': True} 2026-09-17 16:33:26 MediaCrawler INFO (core.py:293) - [DouYinCrawler.get_creators_and_videos] Begin get douyin creators 2026-09-17 16:33:26 MediaCrawler INFO (core.py:294) - [DouYinCrawler.get_creators_and_videos] Parsing creator URLs... 2026-09-17 16:33:26 MediaCrawler INFO (core.py:339) - [DouYinCrawler.get_creators_and_videos] Creator concurrency: 2 2026-09-17 16:33:26 MediaCrawler INFO (core.py:301) - [DouYinCrawler.get_creators_and_videos] Parsed sec_user_id: MS4wLjABAAAA3QNq-maC_aiNgttvw-ChvM_BEZvNqe_BTy0q6cwGRbI from MS4wLjABAAAA3QNq-maC_aiNgttvw-ChvM_BEZvNqe_BTy0q6cwGRbI 2026-09-17 16:33:26 MediaCrawler INFO (cdp_browser.py:490) - [CDPBrowserManager] Browser connection disconnected 2026-09-17 16:33:26 MediaCrawler INFO (cdp_browser.py:507) - [CDPBrowserManager] Connected to existing browser, skipping process cleanup Traceback (most recent call last): File "C:\Users\EDY\Desktop\达人采集助手-portable-v2\app\scripts\run-mediacrawler.py", line 21, in <module> runpy.run_path(os.path.join(crawler_root, "main.py"), run_name="__main__") File "<frozen runpy>", line 291, in run_path File "<frozen runpy>", line 98, in _run_module_code File "<frozen runpy>", line 88, in _run_code File "C:\Users\EDY\Desktop\达人采集助手-portable-v2\app\MediaCrawler-main\main.py", line 174, in <module> run(main, async_cleanup, cleanup_timeout_seconds=15.0, on_first_interrupt=_force_stop) File "C:\Users\EDY\Desktop\达人采集助手-portable-v2\app\MediaCrawler-main\tools\app_runner.py", line 109, in run asyncio.run(_runner()) File "C:\Users\EDY\Desktop\达人采集助手-portable-v2\app\runtime\python\Lib\asyncio\runners.py", line 190, in run return runner.run(main) ^^^^^^^^^^^^^^^^ File "C:\Users\EDY\Desktop\达人采集助手-portable-v2\app\runtime\python\Lib\asyncio\runners.py", line 118, in run return self._loop.run_until_complete(task) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "C:\Users\EDY\Desktop\达人采集助手-portable-v2\app\runtime\python\Lib\asyncio\base_events.py", line 654, in run_until_complete return future.result() ^^^^^^^^^^^^^^^ File "C:\Users\EDY\Desktop\达人采集助手-portable-v2\app\MediaCrawler-main\tools\app_runner.py", line 96, in _runner await app_main() File "C:\Users\EDY\Desktop\达人采集助手-portable-v2\app\MediaCrawler-main\main.py", line 114, in main await crawler.start() File "C:\Users\EDY\Desktop\达人采集助手-portable-v2\app\MediaCrawler-main\media_platform\douyin\core.py", line 141, in start await self.get_creators_and_videos() File "C:\Users\EDY\Desktop\达人采集助手-portable-v2\app\MediaCrawler-main\media_platform\douyin\core.py", line 342, in get_creators_and_videos creator_work_counts = await asyncio.gather( ^^^^^^^^^^^^^^^^^^^^^ File "C:\Users\EDY\Desktop\达人采集助手-portable-v2\app\MediaCrawler-main\media_platform\douyin\core.py", line 306, in fetch_one_creator creator_info: Dict = await self.dy_client.get_user_info(user_id) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "C:\Users\EDY\Desktop\达人采集助手-portable-v2\app\MediaCrawler-main\media_platform\douyin\client.py", line 319, in get_user_info return await self.get(uri, params) ^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "C:\Users\EDY\Desktop\达人采集助手-portable-v2\app\MediaCrawler-main\media_platform\douyin\client.py", line 141, in get await self.__process_req_params(uri, params, headers) File "C:\Users\EDY\Desktop\达人采集助手-portable-v2\app\MediaCrawler-main\media_platform\douyin\client.py", line 120, in __process_req_params a_bogus = await get_a_bogus(uri, query_string, post_data, headers["User-Agent"], self.playwright_page) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "C:\Users\EDY\Desktop\达人采集助手-portable-v2\app\MediaCrawler-main\media_platform\douyin\help.py", line 81, in get_a_bogus return get_a_bogus_from_js(url, params, user_agent) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "C:\Users\EDY\Desktop\达人采集助手-portable-v2\app\MediaCrawler-main\media_platform\douyin\help.py", line 100, in get_a_bogus_from_js result = subprocess.run( ^^^^^^^^^^^^^^^ File "C:\Users\EDY\Desktop\达人采集助手-portable-v2\app\runtime\python\Lib\subprocess.py", line 548, in run with Popen(*popenargs, **kwargs) as process: ^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "C:\Users\EDY\Desktop\达人采集助手-portable-v2\app\runtime\python\Lib\subprocess.py", line 1026, in __init__ self._execute_child(args, executable, preexec_fn, close_fds, File "C:\Users\EDY\Desktop\达人采集助手-portable-v2\app\runtime\python\Lib\subprocess.py", line 1538, in _execute_child hp, ht, pid, tid = _winapi.CreateProcess(executable, args, ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ FileNotFoundError: [WinError 2] 系统找不到指定的文件。
哩不离谱 主页采集失败:2026-09-17 14:25:19 MediaCrawler INFO (core.py:77) - [DouYinCrawler] 使用CDP模式启动浏览器 2026-09-17 14:25:19 MediaCrawler INFO (cdp_browser.py:152) - [CDPBrowserManager] Connecting to existing browser on port 9222... 2026-09-17 14:25:19 MediaCrawler INFO (cdp_browser.py:155) - [CDPBrowserManager] Make sure remote debugging is enabled in your browser: chrome://inspect/#remote-debugging 2026-09-17 14:25:19 MediaCrawler INFO (cdp_browser.py:163) - [CDPBrowserManager] Waiting up to 60s for browser CDP connection... 2026-09-17 14:25:19 MediaCrawler INFO (cdp_browser.py:237) - [CDPBrowserManager] CDP port 9222 is accessible 2026-09-17 14:25:19 MediaCrawler INFO (cdp_browser.py:301) - [CDPBrowserManager] Got browser WebSocket URL: ws://localhost:9222/devtools/browser/dd177f4d-bf6e-46f8-95b1-c136a2211654 2026-09-17 14:25:19 MediaCrawler INFO (cdp_browser.py:329) - [CDPBrowserManager] Connecting to existing browser via discovered CDP (attempt 1/3): ws://localhost:9222/devtools/browser/dd177f4d-bf6e-46f8-95b1-c136a2211654 2026-09-17 14:25:19 MediaCrawler INFO (cdp_browser.py:333) - [CDPBrowserManager] If Chrome asks whether to allow remote debugging, accept it in the already logged-in browser window 2026-09-17 14:25:22 MediaCrawler INFO (cdp_browser.py:364) - [CDPBrowserManager] Successfully connected to browser 2026-09-17 14:25:22 MediaCrawler INFO (cdp_browser.py:365) - [CDPBrowserManager] Browser contexts count: 1 2026-09-17 14:25:22 MediaCrawler INFO (cdp_browser.py:390) - [CDPBrowserManager] Using existing browser context 2026-09-17 14:25:22 MediaCrawler INFO (cdp_browser.py:194) - [CDPBrowserManager] Successfully connected to existing browser 2026-09-17 14:25:25 MediaCrawler INFO (cdp_browser.py:422) - [CDPBrowserManager] Added anti-detection script: libs/stealth.min.js 2026-09-17 14:25:25 MediaCrawler INFO (core.py:450) - [DouYinCrawler] CDP浏览器信息: {'version': '152.0.7977.83', 'contexts_count': 1, 'debug_port': 9222, 'is_connected': True} 2026-09-17 14:25:27 MediaCrawler INFO (core.py:293) - [DouYinCrawler.get_creators_and_videos] Begin get douyin creators 2026-09-17 14:25:27 MediaCrawler INFO (core.py:294) - [DouYinCrawler.get_creators_and_videos] Parsing creator URLs... 2026-09-17 14:25:27 MediaCrawler INFO (core.py:339) - [DouYinCrawler.get_creators_and_videos] Creator concurrency: 2 2026-09-17 14:25:27 MediaCrawler INFO (core.py:301) - [DouYinCrawler.get_creators_and_videos] Parsed sec_user_id: MS4wLjABAAAAHJn1n52sPggn_QNyNxunPk2-0t-oiuFO6aK8nVcO3HjlMosy-t_Hp8EursruwaMt from MS4wLjABAAAAHJn1n52sPggn_QNyNxunPk2-0t-oiuFO6aK8nVcO3HjlMosy-t_Hp8EursruwaMt 2026-09-17 14:25:27 MediaCrawler INFO (core.py:301) - [DouYinCrawler.get_creators_and_videos] Parsed sec_user_id: MS4wLjABAAAAKpfsUujf9V9ojHgB4JtAnHIlGiWoUey3U5fBnaqXGBI from MS4wLjABAAAAKpfsUujf9V9ojHgB4JtAnHIlGiWoUey3U5fBnaqXGBI 2026-09-17 14:25:28 MediaCrawler INFO (core.py:301) - [DouYinCrawler.get_creators_and_videos] Parsed sec_user_id: MS4wLjABAAAAOiyWd0V2y5S3dHfv_2-WHSf8J8Pd5OUWltcmC80LUM-1KLMBvvOK1F8Jaf0IZfcQ from MS4wLjABAAAAOiyWd0V2y5S3dHfv_2-WHSf8J8Pd5OUWltcmC80LUM-1KLMBvvOK1F8Jaf0IZfcQ 2026-09-17 14:25:28 MediaCrawler INFO (cdp_browser.py:490) - [CDPBrowserManager] Browser connection disconnected 2026-09-17 14:25:28 MediaCrawler INFO (cdp_browser.py:507) - [CDPBrowserManager] Connected to existing browser, skipping process cleanup 2026-09-17 14:25:28 MediaCrawler INFO (core.py:301) - [DouYinCrawler.get_creators_and_videos] Parsed sec_user_id: MS4wLjABAAAApoTVRwtjRkH9-71u8STF4XVp2FmcWObNTDSXlYCdwyY from MS4wLjABAAAApoTVRwtjRkH9-71u8STF4XVp2FmcWObNTDSXlYCdwyY 2026-09-17 14:25:28 MediaCrawler INFO (core.py:301) - [DouYinCrawler.get_creators_and_videos] Parsed sec_user_id: MS4wLjABAAAASR13xAfkF1Z3qSKPHxfPCGHzgxdl-1qthC_cxOzDGpSDcGCao8NkVraM15mJk2K_ from MS4wLjABAAAASR13xAfkF1Z3qSKPHxfPCGHzgxdl-1qthC_cxOzDGpSDcGCao8NkVraM15mJk2K_ Traceback (most recent call last): File "C:\Users\EDY\Documents\流程\kol-crm-next\scripts\run-mediacrawler.py", line 21, in <module> runpy.run_path(os.path.join(crawler_root, "main.py"), run_name="__main__") File "<frozen runpy>", line 291, in run_path File "<frozen runpy>", line 98, in _run_module_code File "<frozen runpy>", line 88, in _run_code File "C:\Users\EDY\Desktop\达人采集助手-portable-v3\达人采集助手-portable-v3\app\MediaCrawler-main\main.py", line 174, in <module> run(main, async_cleanup, cleanup_timeout_seconds=15.0, on_first_interrupt=_force_stop) File "C:\Users\EDY\Desktop\达人采集助手-portable-v3\达人采集助手-portable-v3\app\MediaCrawler-main\tools\app_runner.py", line 109, in run asyncio.run(_runner()) File "C:\Users\EDY\Desktop\达人采集助手-portable-v3\达人采集助手-portable-v3\app\runtime\python\Lib\asyncio\runners.py", line 190, in run return runner.run(main) ^^^^^^^^^^^^^^^^ File "C:\Users\EDY\Desktop\达人采集助手-portable-v3\达人采集助手-portable-v3\app\runtime\python\Lib\asyncio\runners.py", line 118, in run return self._loop.run_until_complete(task) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "C:\Users\EDY\Desktop\达人采集助手-portable-v3\达人采集助手-portable-v3\app\runtime\python\Lib\asyncio\base_events.py", line 654, in run_until_complete return future.result() ^^^^^^^^^^^^^^^ File "C:\Users\EDY\Desktop\达人采集助手-portable-v3\达人采集助手-portable-v3\app\MediaCrawler-main\tools\app_runner.py", line 96, in _runner await app_main() File "C:\Users\EDY\Desktop\达人采集助手-portable-v3\达人采集助手-portable-v3\app\MediaCrawler-main\main.py", line 114, in main await crawler.start() File "C:\Users\EDY\Desktop\达人采集助手-portable-v3\达人采集助手-portable-v3\app\MediaCrawler-main\media_platform\douyin\core.py", line 141, in start await self.get_creators_and_videos() File "C:\Users\EDY\Desktop\达人采集助手-portable-v3\达人采集助手-portable-v3\app\MediaCrawler-main\media_platform\douyin\core.py", line 342, in get_creators_and_videos creator_work_counts = await asyncio.gather( ^^^^^^^^^^^^^^^^^^^^^ File "C:\Users\EDY\Desktop\达人采集助手-portable-v3\达人采集助手-portable-v3\app\MediaCrawler-main\media_platform\douyin\core.py", line 306, in fetch_one_creator creator_info: Dict = await self.dy_client.get_user_info(user_id) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "C:\Users\EDY\Desktop\达人采集助手-portable-v3\达人采集助手-portable-v3\app\MediaCrawler-main\media_platform\douyin\client.py", line 319, in get_user_info return await self.get(uri, params) ^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "C:\Users\EDY\Desktop\达人采集助手-portable-v3\达人采集助手-portable-v3\app\MediaCrawler-main\media_platform\douyin\client.py", line 141, in get await self.__process_req_params(uri, params, headers) File "C:\Users\EDY\Desktop\达人采集助手-portable-v3\达人采集助手-portable-v3\app\MediaCrawler-main\media_platform\douyin\client.py", line 120, in __process_req_params a_bogus = await get_a_bogus(uri, query_string, post_data, headers["User-Agent"], self.playwright_page) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "C:\Users\EDY\Desktop\达人采集助手-portable-v3\达人采集助手-portable-v3\app\MediaCrawler-main\media_platform\douyin\help.py", line 81, in get_a_bogus return get_a_bogus_from_js(url, params, user_agent) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "C:\Users\EDY\Desktop\达人采集助手-portable-v3\达人采集助手-portable-v3\app\MediaCrawler-main\media_platform\douyin\help.py", line 100, in get_a_bogus_from_js result = subprocess.run( ^^^^^^^^^^^^^^^ File "C:\Users\EDY\Desktop\达人采集助手-portable-v3\达人采集助手-portable-v3\app\runtime\python\Lib\subprocess.py", line 548, in run with Popen(*popenargs, **kwargs) as process: ^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "C:\Users\EDY\Desktop\达人采集助手-portable-v3\达人采集助手-portable-v3\app\runtime\python\Lib\subprocess.py", line 1026, in __init__ self._execute_child(args, executable, preexec_fn, close_fds, File "C:\Users\EDY\Desktop\达人采集助手-portable-v3\达人采集助手-portable-v3\app\runtime\python\Lib\subprocess.py", line 1538, in _execute_child hp, ht, pid, tid = _winapi.CreateProcess(executable, args, ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ FileNotFoundError: [WinError 2] 系统找不到指定的文件。
好黑的小七 主页采集失败:2026-09-17 14:23:08 MediaCrawler INFO (core.py:77) - [DouYinCrawler] 使用CDP模式启动浏览器 2026-09-17 14:23:08 MediaCrawler INFO (cdp_browser.py:152) - [CDPBrowserManager] Connecting to existing browser on port 9222... 2026-09-17 14:23:08 MediaCrawler INFO (cdp_browser.py:155) - [CDPBrowserManager] Make sure remote debugging is enabled in your browser: chrome://inspect/#remote-debugging 2026-09-17 14:23:08 MediaCrawler INFO (cdp_browser.py:163) - [CDPBrowserManager] Waiting up to 60s for browser CDP connection... 2026-09-17 14:23:08 MediaCrawler INFO (cdp_browser.py:237) - [CDPBrowserManager] CDP port 9222 is accessible 2026-09-17 14:23:09 MediaCrawler INFO (cdp_browser.py:301) - [CDPBrowserManager] Got browser WebSocket URL: ws://localhost:9222/devtools/browser/f079b23d-96c5-4a1d-989c-33629bf0f438 2026-09-17 14:23:09 MediaCrawler INFO (cdp_browser.py:329) - [CDPBrowserManager] Connecting to existing browser via discovered CDP (attempt 1/3): ws://localhost:9222/devtools/browser/f079b23d-96c5-4a1d-989c-33629bf0f438 2026-09-17 14:23:09 MediaCrawler INFO (cdp_browser.py:333) - [CDPBrowserManager] If Chrome asks whether to allow remote debugging, accept it in the already logged-in browser window 2026-09-17 14:23:15 MediaCrawler INFO (cdp_browser.py:364) - [CDPBrowserManager] Successfully connected to browser 2026-09-17 14:23:15 MediaCrawler INFO (cdp_browser.py:365) - [CDPBrowserManager] Browser contexts count: 1 2026-09-17 14:23:15 MediaCrawler INFO (cdp_browser.py:390) - [CDPBrowserManager] Using existing browser context 2026-09-17 14:23:15 MediaCrawler INFO (cdp_browser.py:194) - [CDPBrowserManager] Successfully connected to existing browser 2026-09-17 14:23:15 MediaCrawler INFO (cdp_browser.py:422) - [CDPBrowserManager] Added anti-detection script: libs/stealth.min.js 2026-09-17 14:23:15 MediaCrawler INFO (core.py:450) - [DouYinCrawler] CDP浏览器信息: {'version': '152.0.7977.83', 'contexts_count': 1, 'debug_port': 9222, 'is_connected': True} 2026-09-17 14:23:17 MediaCrawler INFO (core.py:293) - [DouYinCrawler.get_creators_and_videos] Begin get douyin creators 2026-09-17 14:23:17 MediaCrawler INFO (core.py:294) - [DouYinCrawler.get_creators_and_videos] Parsing creator URLs... 2026-09-17 14:23:17 MediaCrawler INFO (core.py:339) - [DouYinCrawler.get_creators_and_videos] Creator concurrency: 2 2026-09-17 14:23:17 MediaCrawler INFO (core.py:301) - [DouYinCrawler.get_creators_and_videos] Parsed sec_user_id: MS4wLjABAAAA5J1at3eNYvBIq0LPStmnic3qki9abHbVip06xsmLR5Q from MS4wLjABAAAA5J1at3eNYvBIq0LPStmnic3qki9abHbVip06xsmLR5Q 2026-09-17 14:23:17 MediaCrawler INFO (core.py:301) - [DouYinCrawler.get_creators_and_videos] Parsed sec_user_id: MS4wLjABAAAAKGlyiiqm6MURKXfZ--_XQ_8gBuieitxG5ssup1lV49U from MS4wLjABAAAAKGlyiiqm6MURKXfZ--_XQ_8gBuieitxG5ssup1lV49U 2026-09-17 14:23:18 MediaCrawler INFO (core.py:301) - [DouYinCrawler.get_creators_and_videos] Parsed sec_user_id: MS4wLjABAAAAmboKEPDcsZorAd48osemDt-nJ1lCj4jI2mGvI_CNP5k from MS4wLjABAAAAmboKEPDcsZorAd48osemDt-nJ1lCj4jI2mGvI_CNP5k 2026-09-17 14:23:18 MediaCrawler INFO (cdp_browser.py:490) - [CDPBrowserManager] Browser connection disconnected 2026-09-17 14:23:18 MediaCrawler INFO (cdp_browser.py:507) - [CDPBrowserManager] Connected to existing browser, skipping process cleanup 2026-09-17 14:23:18 MediaCrawler INFO (core.py:301) - [DouYinCrawler.get_creators_and_videos] Parsed sec_user_id: MS4wLjABAAAAmVpfR85F39psDPXGeEBcEtjA4_VSOwFRJxzkFAaBlr6TTi00oD5k09f-OMXlTbiJ from MS4wLjABAAAAmVpfR85F39psDPXGeEBcEtjA4_VSOwFRJxzkFAaBlr6TTi00oD5k09f-OMXlTbiJ 2026-09-17 14:23:18 MediaCrawler INFO (core.py:301) - [DouYinCrawler.get_creators_and_videos] Parsed sec_user_id: MS4wLjABAAAAqZjPCuJ3HQreEUAnK-Qo_AY03Y_mKRb0Q63zz7-KLnqgQU52rcWGtpoGaho_lFa3 from MS4wLjABAAAAqZjPCuJ3HQreEUAnK-Qo_AY03Y_mKRb0Q63zz7-KLnqgQU52rcWGtpoGaho_lFa3 Traceback (most recent call last): File "C:\Users\EDY\Documents\流程\kol-crm-next\scripts\run-mediacrawler.py", line 21, in <module> runpy.run_path(os.path.join(crawler_root, "main.py"), run_name="__main__") File "<frozen runpy>", line 291, in run_path File "<frozen runpy>", line 98, in _run_module_code File "<frozen runpy>", line 88, in _run_code File "C:\Users\EDY\Desktop\达人采集助手-portable-v3\达人采集助手-portable-v3\app\MediaCrawler-main\main.py", line 174, in <module> run(main, async_cleanup, cleanup_timeout_seconds=15.0, on_first_interrupt=_force_stop) File "C:\Users\EDY\Desktop\达人采集助手-portable-v3\达人采集助手-portable-v3\app\MediaCrawler-main\tools\app_runner.py", line 109, in run asyncio.run(_runner()) File "C:\Users\EDY\Desktop\达人采集助手-portable-v3\达人采集助手-portable-v3\app\runtime\python\Lib\asyncio\runners.py", line 190, in run return runner.run(main) ^^^^^^^^^^^^^^^^ File "C:\Users\EDY\Desktop\达人采集助手-portable-v3\达人采集助手-portable-v3\app\runtime\python\Lib\asyncio\runners.py", line 118, in run return self._loop.run_until_complete(task) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "C:\Users\EDY\Desktop\达人采集助手-portable-v3\达人采集助手-portable-v3\app\runtime\python\Lib\asyncio\base_events.py", line 654, in run_until_complete return future.result() ^^^^^^^^^^^^^^^ File "C:\Users\EDY\Desktop\达人采集助手-portable-v3\达人采集助手-portable-v3\app\MediaCrawler-main\tools\app_runner.py", line 96, in _runner await app_main() File "C:\Users\EDY\Desktop\达人采集助手-portable-v3\达人采集助手-portable-v3\app\MediaCrawler-main\main.py", line 114, in main await crawler.start() File "C:\Users\EDY\Desktop\达人采集助手-portable-v3\达人采集助手-portable-v3\app\MediaCrawler-main\media_platform\douyin\core.py", line 141, in start await self.get_creators_and_videos() File "C:\Users\EDY\Desktop\达人采集助手-portable-v3\达人采集助手-portable-v3\app\MediaCrawler-main\media_platform\douyin\core.py", line 342, in get_creators_and_videos creator_work_counts = await asyncio.gather( ^^^^^^^^^^^^^^^^^^^^^ File "C:\Users\EDY\Desktop\达人采集助手-portable-v3\达人采集助手-portable-v3\app\MediaCrawler-main\media_platform\douyin\core.py", line 306, in fetch_one_creator creator_info: Dict = await self.dy_client.get_user_info(user_id) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "C:\Users\EDY\Desktop\达人采集助手-portable-v3\达人采集助手-portable-v3\app\MediaCrawler-main\media_platform\douyin\client.py", line 319, in get_user_info return await self.get(uri, params) ^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "C:\Users\EDY\Desktop\达人采集助手-portable-v3\达人采集助手-portable-v3\app\MediaCrawler-main\media_platform\douyin\client.py", line 141, in get await self.__process_req_params(uri, params, headers) File "C:\Users\EDY\Desktop\达人采集助手-portable-v3\达人采集助手-portable-v3\app\MediaCrawler-main\media_platform\douyin\client.py", line 120, in __process_req_params a_bogus = await get_a_bogus(uri, query_string, post_data, headers["User-Agent"], self.playwright_page) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "C:\Users\EDY\Desktop\达人采集助手-portable-v3\达人采集助手-portable-v3\app\MediaCrawler-main\media_platform\douyin\help.py", line 81, in get_a_bogus return get_a_bogus_from_js(url, params, user_agent) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "C:\Users\EDY\Desktop\达人采集助手-portable-v3\达人采集助手-portable-v3\app\MediaCrawler-main\media_platform\douyin\help.py", line 100, in get_a_bogus_from_js result = subprocess.run( ^^^^^^^^^^^^^^^ File "C:\Users\EDY\Desktop\达人采集助手-portable-v3\达人采集助手-portable-v3\app\runtime\python\Lib\subprocess.py", line 548, in run with Popen(*popenargs, **kwargs) as process: ^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "C:\Users\EDY\Desktop\达人采集助手-portable-v3\达人采集助手-portable-v3\app\runtime\python\Lib\subprocess.py", line 1026, in __init__ self._execute_child(args, executable, preexec_fn, close_fds, File "C:\Users\EDY\Desktop\达人采集助手-portable-v3\达人采集助手-portable-v3\app\runtime\python\Lib\subprocess.py", line 1538, in _execute_child hp, ht, pid, tid = _winapi.CreateProcess(executable, args, ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ FileNotFoundError: [WinError 2] 系统找不到指定的文件。
煮啵 主页采集失败:2026-09-17 16:32:21 MediaCrawler INFO (core.py:77) - [DouYinCrawler] 使用CDP模式启动浏览器 2026-09-17 16:32:21 MediaCrawler INFO (cdp_browser.py:152) - [CDPBrowserManager] Connecting to existing browser on port 9222... 2026-09-17 16:32:21 MediaCrawler INFO (cdp_browser.py:155) - [CDPBrowserManager] Make sure remote debugging is enabled in your browser: chrome://inspect/#remote-debugging 2026-09-17 16:32:21 MediaCrawler INFO (cdp_browser.py:163) - [CDPBrowserManager] Waiting up to 60s for browser CDP connection... 2026-09-17 16:32:21 MediaCrawler INFO (cdp_browser.py:237) - [CDPBrowserManager] CDP port 9222 is accessible 2026-09-17 16:32:21 MediaCrawler INFO (cdp_browser.py:301) - [CDPBrowserManager] Got browser WebSocket URL: ws://localhost:9222/devtools/browser/b6166241-0447-4b83-98ca-78fdbeb71daf 2026-09-17 16:32:21 MediaCrawler INFO (cdp_browser.py:329) - [CDPBrowserManager] Connecting to existing browser via discovered CDP (attempt 1/3): ws://localhost:9222/devtools/browser/b6166241-0447-4b83-98ca-78fdbeb71daf 2026-09-17 16:32:21 MediaCrawler INFO (cdp_browser.py:333) - [CDPBrowserManager] If Chrome asks whether to allow remote debugging, accept it in the already logged-in browser window 2026-09-17 16:32:24 MediaCrawler INFO (cdp_browser.py:364) - [CDPBrowserManager] Successfully connected to browser 2026-09-17 16:32:24 MediaCrawler INFO (cdp_browser.py:365) - [CDPBrowserManager] Browser contexts count: 1 2026-09-17 16:32:24 MediaCrawler INFO (cdp_browser.py:390) - [CDPBrowserManager] Using existing browser context 2026-09-17 16:32:24 MediaCrawler INFO (cdp_browser.py:194) - [CDPBrowserManager] Successfully connected to existing browser 2026-09-17 16:32:24 MediaCrawler INFO (cdp_browser.py:422) - [CDPBrowserManager] Added anti-detection script: libs/stealth.min.js 2026-09-17 16:32:24 MediaCrawler INFO (core.py:450) - [DouYinCrawler] CDP浏览器信息: {'version': '152.0.7977.83', 'contexts_count': 1, 'debug_port': 9222, 'is_connected': True} 2026-09-17 16:32:27 MediaCrawler INFO (core.py:293) - [DouYinCrawler.get_creators_and_videos] Begin get douyin creators 2026-09-17 16:32:27 MediaCrawler INFO (core.py:294) - [DouYinCrawler.get_creators_and_videos] Parsing creator URLs... 2026-09-17 16:32:27 MediaCrawler INFO (core.py:339) - [DouYinCrawler.get_creators_and_videos] Creator concurrency: 2 2026-09-17 16:32:27 MediaCrawler INFO (core.py:301) - [DouYinCrawler.get_creators_and_videos] Parsed sec_user_id: MS4wLjABAAAA-lrSCRUoQrZ3T90QjJW3gK4NunZk2NiwozoW6cgIjXk from MS4wLjABAAAA-lrSCRUoQrZ3T90QjJW3gK4NunZk2NiwozoW6cgIjXk 2026-09-17 16:32:27 MediaCrawler INFO (core.py:301) - [DouYinCrawler.get_creators_and_videos] Parsed sec_user_id: MS4wLjABAAAAaUCQ_gwp7gjbk7sn3X1c9wHG3pZbZOoVYl1moKnPUFE from MS4wLjABAAAAaUCQ_gwp7gjbk7sn3X1c9wHG3pZbZOoVYl1moKnPUFE 2026-09-17 16:32:27 MediaCrawler INFO (core.py:301) - [DouYinCrawler.get_creators_and_videos] Parsed sec_user_id: MS4wLjABAAAADZejdQI5YhjZ1QeUKxivOtGsf6AhGeE4zDwmR5kV-dA from MS4wLjABAAAADZejdQI5YhjZ1QeUKxivOtGsf6AhGeE4zDwmR5kV-dA 2026-09-17 16:32:28 MediaCrawler INFO (cdp_browser.py:490) - [CDPBrowserManager] Browser connection disconnected 2026-09-17 16:32:28 MediaCrawler INFO (cdp_browser.py:507) - [CDPBrowserManager] Connected to existing browser, skipping process cleanup 2026-09-17 16:32:28 MediaCrawler INFO (core.py:301) - [DouYinCrawler.get_creators_and_videos] Parsed sec_user_id: MS4wLjABAAAAPehcz5UItwBKHRUS91h52oDNA9gIZEGFD_GWmVoJwT__BGgBpgVbyrjErpzLEpZS from MS4wLjABAAAAPehcz5UItwBKHRUS91h52oDNA9gIZEGFD_GWmVoJwT__BGgBpgVbyrjErpzLEpZS 2026-09-17 16:32:28 MediaCrawler INFO (core.py:301) - [DouYinCrawler.get_creators_and_videos] Parsed sec_user_id: MS4wLjABAAAAptZpQBCAT2dBWpLYcYQqHINRueD9_pUH5Dvq1qAwhNA from MS4wLjABAAAAptZpQBCAT2dBWpLYcYQqHINRueD9_pUH5Dvq1qAwhNA Traceback (most recent call last): File "C:\Users\EDY\Desktop\达人采集助手-portable-v2\app\scripts\run-mediacrawler.py", line 21, in <module> runpy.run_path(os.path.join(crawler_root, "main.py"), run_name="__main__") File "<frozen runpy>", line 291, in run_path File "<frozen runpy>", line 98, in _run_module_code File "<frozen runpy>", line 88, in _run_code File "C:\Users\EDY\Desktop\达人采集助手-portable-v2\app\MediaCrawler-main\main.py", line 174, in <module> run(main, async_cleanup, cleanup_timeout_seconds=15.0, on_first_interrupt=_force_stop) File "C:\Users\EDY\Desktop\达人采集助手-portable-v2\app\MediaCrawler-main\tools\app_runner.py", line 109, in run asyncio.run(_runner()) File "C:\Users\EDY\Desktop\达人采集助手-portable-v2\app\runtime\python\Lib\asyncio\runners.py", line 190, in run return runner.run(main) ^^^^^^^^^^^^^^^^ File "C:\Users\EDY\Desktop\达人采集助手-portable-v2\app\runtime\python\Lib\asyncio\runners.py", line 118, in run return self._loop.run_until_complete(task) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "C:\Users\EDY\Desktop\达人采集助手-portable-v2\app\runtime\python\Lib\asyncio\base_events.py", line 654, in run_until_complete return future.result() ^^^^^^^^^^^^^^^ File "C:\Users\EDY\Desktop\达人采集助手-portable-v2\app\MediaCrawler-main\tools\app_runner.py", line 96, in _runner await app_main() File "C:\Users\EDY\Desktop\达人采集助手-portable-v2\app\MediaCrawler-main\main.py", line 114, in main await crawler.start() File "C:\Users\EDY\Desktop\达人采集助手-portable-v2\app\MediaCrawler-main\media_platform\douyin\core.py", line 141, in start await self.get_creators_and_videos() File "C:\Users\EDY\Desktop\达人采集助手-portable-v2\app\MediaCrawler-main\media_platform\douyin\core.py", line 342, in get_creators_and_videos creator_work_counts = await asyncio.gather( ^^^^^^^^^^^^^^^^^^^^^ File "C:\Users\EDY\Desktop\达人采集助手-portable-v2\app\MediaCrawler-main\media_platform\douyin\core.py", line 306, in fetch_one_creator creator_info: Dict = await self.dy_client.get_user_info(user_id) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "C:\Users\EDY\Desktop\达人采集助手-portable-v2\app\MediaCrawler-main\media_platform\douyin\client.py", line 319, in get_user_info return await self.get(uri, params) ^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "C:\Users\EDY\Desktop\达人采集助手-portable-v2\app\MediaCrawler-main\media_platform\douyin\client.py", line 141, in get await self.__process_req_params(uri, params, headers) File "C:\Users\EDY\Desktop\达人采集助手-portable-v2\app\MediaCrawler-main\media_platform\douyin\client.py", line 120, in __process_req_params a_bogus = await get_a_bogus(uri, query_string, post_data, headers["User-Agent"], self.playwright_page) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "C:\Users\EDY\Desktop\达人采集助手-portable-v2\app\MediaCrawler-main\media_platform\douyin\help.py", line 81, in get_a_bogus return get_a_bogus_from_js(url, params, user_agent) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "C:\Users\EDY\Desktop\达人采集助手-portable-v2\app\MediaCrawler-main\media_platform\douyin\help.py", line 100, in get_a_bogus_from_js result = subprocess.run( ^^^^^^^^^^^^^^^ File "C:\Users\EDY\Desktop\达人采集助手-portable-v2\app\runtime\python\Lib\subprocess.py", line 548, in run with Popen(*popenargs, **kwargs) as process: ^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "C:\Users\EDY\Desktop\达人采集助手-portable-v2\app\runtime\python\Lib\subprocess.py", line 1026, in __init__ self._execute_child(args, executable, preexec_fn, close_fds, File "C:\Users\EDY\Desktop\达人采集助手-portable-v2\app\runtime\python\Lib\subprocess.py", line 1538, in _execute_child hp, ht, pid, tid = _winapi.CreateProcess(executable, args, ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ FileNotFoundError: [WinError 2] 系统找不到指定的文件。
z1x 主页采集失败:2026-09-17 14:23:08 MediaCrawler INFO (core.py:77) - [DouYinCrawler] 使用CDP模式启动浏览器 2026-09-17 14:23:08 MediaCrawler INFO (cdp_browser.py:152) - [CDPBrowserManager] Connecting to existing browser on port 9222... 2026-09-17 14:23:08 MediaCrawler INFO (cdp_browser.py:155) - [CDPBrowserManager] Make sure remote debugging is enabled in your browser: chrome://inspect/#remote-debugging 2026-09-17 14:23:08 MediaCrawler INFO (cdp_browser.py:163) - [CDPBrowserManager] Waiting up to 60s for browser CDP connection... 2026-09-17 14:23:08 MediaCrawler INFO (cdp_browser.py:237) - [CDPBrowserManager] CDP port 9222 is accessible 2026-09-17 14:23:09 MediaCrawler INFO (cdp_browser.py:301) - [CDPBrowserManager] Got browser WebSocket URL: ws://localhost:9222/devtools/browser/f079b23d-96c5-4a1d-989c-33629bf0f438 2026-09-17 14:23:09 MediaCrawler INFO (cdp_browser.py:329) - [CDPBrowserManager] Connecting to existing browser via discovered CDP (attempt 1/3): ws://localhost:9222/devtools/browser/f079b23d-96c5-4a1d-989c-33629bf0f438 2026-09-17 14:23:09 MediaCrawler INFO (cdp_browser.py:333) - [CDPBrowserManager] If Chrome asks whether to allow remote debugging, accept it in the already logged-in browser window 2026-09-17 14:23:15 MediaCrawler INFO (cdp_browser.py:364) - [CDPBrowserManager] Successfully connected to browser 2026-09-17 14:23:15 MediaCrawler INFO (cdp_browser.py:365) - [CDPBrowserManager] Browser contexts count: 1 2026-09-17 14:23:15 MediaCrawler INFO (cdp_browser.py:390) - [CDPBrowserManager] Using existing browser context 2026-09-17 14:23:15 MediaCrawler INFO (cdp_browser.py:194) - [CDPBrowserManager] Successfully connected to existing browser 2026-09-17 14:23:15 MediaCrawler INFO (cdp_browser.py:422) - [CDPBrowserManager] Added anti-detection script: libs/stealth.min.js 2026-09-17 14:23:15 MediaCrawler INFO (core.py:450) - [DouYinCrawler] CDP浏览器信息: {'version': '152.0.7977.83', 'contexts_count': 1, 'debug_port': 9222, 'is_connected': True} 2026-09-17 14:23:17 MediaCrawler INFO (core.py:293) - [DouYinCrawler.get_creators_and_videos] Begin get douyin creators 2026-09-17 14:23:17 MediaCrawler INFO (core.py:294) - [DouYinCrawler.get_creators_and_videos] Parsing creator URLs... 2026-09-17 14:23:17 MediaCrawler INFO (core.py:339) - [DouYinCrawler.get_creators_and_videos] Creator concurrency: 2 2026-09-17 14:23:17 MediaCrawler INFO (core.py:301) - [DouYinCrawler.get_creators_and_videos] Parsed sec_user_id: MS4wLjABAAAA5J1at3eNYvBIq0LPStmnic3qki9abHbVip06xsmLR5Q from MS4wLjABAAAA5J1at3eNYvBIq0LPStmnic3qki9abHbVip06xsmLR5Q 2026-09-17 14:23:17 MediaCrawler INFO (core.py:301) - [DouYinCrawler.get_creators_and_videos] Parsed sec_user_id: MS4wLjABAAAAKGlyiiqm6MURKXfZ--_XQ_8gBuieitxG5ssup1lV49U from MS4wLjABAAAAKGlyiiqm6MURKXfZ--_XQ_8gBuieitxG5ssup1lV49U 2026-09-17 14:23:18 MediaCrawler INFO (core.py:301) - [DouYinCrawler.get_creators_and_videos] Parsed sec_user_id: MS4wLjABAAAAmboKEPDcsZorAd48osemDt-nJ1lCj4jI2mGvI_CNP5k from MS4wLjABAAAAmboKEPDcsZorAd48osemDt-nJ1lCj4jI2mGvI_CNP5k 2026-09-17 14:23:18 MediaCrawler INFO (cdp_browser.py:490) - [CDPBrowserManager] Browser connection disconnected 2026-09-17 14:23:18 MediaCrawler INFO (cdp_browser.py:507) - [CDPBrowserManager] Connected to existing browser, skipping process cleanup 2026-09-17 14:23:18 MediaCrawler INFO (core.py:301) - [DouYinCrawler.get_creators_and_videos] Parsed sec_user_id: MS4wLjABAAAAmVpfR85F39psDPXGeEBcEtjA4_VSOwFRJxzkFAaBlr6TTi00oD5k09f-OMXlTbiJ from MS4wLjABAAAAmVpfR85F39psDPXGeEBcEtjA4_VSOwFRJxzkFAaBlr6TTi00oD5k09f-OMXlTbiJ 2026-09-17 14:23:18 MediaCrawler INFO (core.py:301) - [DouYinCrawler.get_creators_and_videos] Parsed sec_user_id: MS4wLjABAAAAqZjPCuJ3HQreEUAnK-Qo_AY03Y_mKRb0Q63zz7-KLnqgQU52rcWGtpoGaho_lFa3 from MS4wLjABAAAAqZjPCuJ3HQreEUAnK-Qo_AY03Y_mKRb0Q63zz7-KLnqgQU52rcWGtpoGaho_lFa3 Traceback (most recent call last): File "C:\Users\EDY\Documents\流程\kol-crm-next\scripts\run-mediacrawler.py", line 21, in <module> runpy.run_path(os.path.join(crawler_root, "main.py"), run_name="__main__") File "<frozen runpy>", line 291, in run_path File "<frozen runpy>", line 98, in _run_module_code File "<frozen runpy>", line 88, in _run_code File "C:\Users\EDY\Desktop\达人采集助手-portable-v3\达人采集助手-portable-v3\app\MediaCrawler-main\main.py", line 174, in <module> run(main, async_cleanup, cleanup_timeout_seconds=15.0, on_first_interrupt=_force_stop) File "C:\Users\EDY\Desktop\达人采集助手-portable-v3\达人采集助手-portable-v3\app\MediaCrawler-main\tools\app_runner.py", line 109, in run asyncio.run(_runner()) File "C:\Users\EDY\Desktop\达人采集助手-portable-v3\达人采集助手-portable-v3\app\runtime\python\Lib\asyncio\runners.py", line 190, in run return runner.run(main) ^^^^^^^^^^^^^^^^ File "C:\Users\EDY\Desktop\达人采集助手-portable-v3\达人采集助手-portable-v3\app\runtime\python\Lib\asyncio\runners.py", line 118, in run return self._loop.run_until_complete(task) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "C:\Users\EDY\Desktop\达人采集助手-portable-v3\达人采集助手-portable-v3\app\runtime\python\Lib\asyncio\base_events.py", line 654, in run_until_complete return future.result() ^^^^^^^^^^^^^^^ File "C:\Users\EDY\Desktop\达人采集助手-portable-v3\达人采集助手-portable-v3\app\MediaCrawler-main\tools\app_runner.py", line 96, in _runner await app_main() File "C:\Users\EDY\Desktop\达人采集助手-portable-v3\达人采集助手-portable-v3\app\MediaCrawler-main\main.py", line 114, in main await crawler.start() File "C:\Users\EDY\Desktop\达人采集助手-portable-v3\达人采集助手-portable-v3\app\MediaCrawler-main\media_platform\douyin\core.py", line 141, in start await self.get_creators_and_videos() File "C:\Users\EDY\Desktop\达人采集助手-portable-v3\达人采集助手-portable-v3\app\MediaCrawler-main\media_platform\douyin\core.py", line 342, in get_creators_and_videos creator_work_counts = await asyncio.gather( ^^^^^^^^^^^^^^^^^^^^^ File "C:\Users\EDY\Desktop\达人采集助手-portable-v3\达人采集助手-portable-v3\app\MediaCrawler-main\media_platform\douyin\core.py", line 306, in fetch_one_creator creator_info: Dict = await self.dy_client.get_user_info(user_id) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "C:\Users\EDY\Desktop\达人采集助手-portable-v3\达人采集助手-portable-v3\app\MediaCrawler-main\media_platform\douyin\client.py", line 319, in get_user_info return await self.get(uri, params) ^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "C:\Users\EDY\Desktop\达人采集助手-portable-v3\达人采集助手-portable-v3\app\MediaCrawler-main\media_platform\douyin\client.py", line 141, in get await self.__process_req_params(uri, params, headers) File "C:\Users\EDY\Desktop\达人采集助手-portable-v3\达人采集助手-portable-v3\app\MediaCrawler-main\media_platform\douyin\client.py", line 120, in __process_req_params a_bogus = await get_a_bogus(uri, query_string, post_data, headers["User-Agent"], self.playwright_page) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "C:\Users\EDY\Desktop\达人采集助手-portable-v3\达人采集助手-portable-v3\app\MediaCrawler-main\media_platform\douyin\help.py", line 81, in get_a_bogus return get_a_bogus_from_js(url, params, user_agent) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "C:\Users\EDY\Desktop\达人采集助手-portable-v3\达人采集助手-portable-v3\app\MediaCrawler-main\media_platform\douyin\help.py", line 100, in get_a_bogus_from_js result = subprocess.run( ^^^^^^^^^^^^^^^ File "C:\Users\EDY\Desktop\达人采集助手-portable-v3\达人采集助手-portable-v3\app\runtime\python\Lib\subprocess.py", line 548, in run with Popen(*popenargs, **kwargs) as process: ^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "C:\Users\EDY\Desktop\达人采集助手-portable-v3\达人采集助手-portable-v3\app\runtime\python\Lib\subprocess.py", line 1026, in __init__ self._execute_child(args, executable, preexec_fn, close_fds, File "C:\Users\EDY\Desktop\达人采集助手-portable-v3\达人采集助手-portable-v3\app\runtime\python\Lib\subprocess.py", line 1538, in _execute_child hp, ht, pid, tid = _winapi.CreateProcess(executable, args, ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ FileNotFoundError: [WinError 2] 系统找不到指定的文件。
哲 主页采集失败:2026-09-17 16:32:06 MediaCrawler INFO (core.py:77) - [DouYinCrawler] 使用CDP模式启动浏览器 2026-09-17 16:32:06 MediaCrawler INFO (cdp_browser.py:152) - [CDPBrowserManager] Connecting to existing browser on port 9222... 2026-09-17 16:32:06 MediaCrawler INFO (cdp_browser.py:155) - [CDPBrowserManager] Make sure remote debugging is enabled in your browser: chrome://inspect/#remote-debugging 2026-09-17 16:32:06 MediaCrawler INFO (cdp_browser.py:163) - [CDPBrowserManager] Waiting up to 60s for browser CDP connection... 2026-09-17 16:32:06 MediaCrawler INFO (cdp_browser.py:237) - [CDPBrowserManager] CDP port 9222 is accessible 2026-09-17 16:32:07 MediaCrawler INFO (cdp_browser.py:301) - [CDPBrowserManager] Got browser WebSocket URL: ws://localhost:9222/devtools/browser/b6166241-0447-4b83-98ca-78fdbeb71daf 2026-09-17 16:32:07 MediaCrawler INFO (cdp_browser.py:329) - [CDPBrowserManager] Connecting to existing browser via discovered CDP (attempt 1/3): ws://localhost:9222/devtools/browser/b6166241-0447-4b83-98ca-78fdbeb71daf 2026-09-17 16:32:07 MediaCrawler INFO (cdp_browser.py:333) - [CDPBrowserManager] If Chrome asks whether to allow remote debugging, accept it in the already logged-in browser window 2026-09-17 16:32:08 MediaCrawler INFO (cdp_browser.py:364) - [CDPBrowserManager] Successfully connected to browser 2026-09-17 16:32:08 MediaCrawler INFO (cdp_browser.py:365) - [CDPBrowserManager] Browser contexts count: 1 2026-09-17 16:32:08 MediaCrawler INFO (cdp_browser.py:390) - [CDPBrowserManager] Using existing browser context 2026-09-17 16:32:08 MediaCrawler INFO (cdp_browser.py:194) - [CDPBrowserManager] Successfully connected to existing browser 2026-09-17 16:32:08 MediaCrawler INFO (cdp_browser.py:422) - [CDPBrowserManager] Added anti-detection script: libs/stealth.min.js 2026-09-17 16:32:08 MediaCrawler INFO (core.py:450) - [DouYinCrawler] CDP浏览器信息: {'version': '152.0.7977.83', 'contexts_count': 1, 'debug_port': 9222, 'is_connected': True} 2026-09-17 16:32:09 MediaCrawler INFO (core.py:293) - [DouYinCrawler.get_creators_and_videos] Begin get douyin creators 2026-09-17 16:32:09 MediaCrawler INFO (core.py:294) - [DouYinCrawler.get_creators_and_videos] Parsing creator URLs... 2026-09-17 16:32:09 MediaCrawler INFO (core.py:339) - [DouYinCrawler.get_creators_and_videos] Creator concurrency: 2 2026-09-17 16:32:09 MediaCrawler INFO (core.py:301) - [DouYinCrawler.get_creators_and_videos] Parsed sec_user_id: MS4wLjABAAAABkqrnqUzQnYv9Bvc8H2B6CZYc7SQMjDxScMpw3d18KA_554bLTOHgm2LpbMX8JWI from MS4wLjABAAAABkqrnqUzQnYv9Bvc8H2B6CZYc7SQMjDxScMpw3d18KA_554bLTOHgm2LpbMX8JWI 2026-09-17 16:32:09 MediaCrawler INFO (core.py:301) - [DouYinCrawler.get_creators_and_videos] Parsed sec_user_id: MS4wLjABAAAAexFpM7HqDksih6OlKdppTTEcyvdXFPDNOZyNRAatvKA from MS4wLjABAAAAexFpM7HqDksih6OlKdppTTEcyvdXFPDNOZyNRAatvKA 2026-09-17 16:32:09 MediaCrawler INFO (core.py:301) - [DouYinCrawler.get_creators_and_videos] Parsed sec_user_id: MS4wLjABAAAAFsF3Anolfk5DcVAWJrXZbyxwgqi4vZ4xJy4UtuG6vMX1-pezz0oJm2BeC1QxvMzv from MS4wLjABAAAAFsF3Anolfk5DcVAWJrXZbyxwgqi4vZ4xJy4UtuG6vMX1-pezz0oJm2BeC1QxvMzv 2026-09-17 16:32:09 MediaCrawler INFO (cdp_browser.py:490) - [CDPBrowserManager] Browser connection disconnected 2026-09-17 16:32:09 MediaCrawler INFO (cdp_browser.py:507) - [CDPBrowserManager] Connected to existing browser, skipping process cleanup 2026-09-17 16:32:09 MediaCrawler INFO (core.py:301) - [DouYinCrawler.get_creators_and_videos] Parsed sec_user_id: MS4wLjABAAAAI3Q32U3Y-_VBcSYDbhYk6hzup9SytpGZHe50rncdOB0 from MS4wLjABAAAAI3Q32U3Y-_VBcSYDbhYk6hzup9SytpGZHe50rncdOB0 2026-09-17 16:32:09 MediaCrawler INFO (core.py:301) - [DouYinCrawler.get_creators_and_videos] Parsed sec_user_id: MS4wLjABAAAAJ1hIJ93r2PJqj9aQEtYxb59XpFCQU2KK_Wi2ZybDQ08 from MS4wLjABAAAAJ1hIJ93r2PJqj9aQEtYxb59XpFCQU2KK_Wi2ZybDQ08 Traceback (most recent call last): File "C:\Users\EDY\Desktop\达人采集助手-portable-v2\app\scripts\run-mediacrawler.py", line 21, in <module> runpy.run_path(os.path.join(crawler_root, "main.py"), run_name="__main__") File "<frozen runpy>", line 291, in run_path File "<frozen runpy>", line 98, in _run_module_code File "<frozen runpy>", line 88, in _run_code File "C:\Users\EDY\Desktop\达人采集助手-portable-v2\app\MediaCrawler-main\main.py", line 174, in <module> run(main, async_cleanup, cleanup_timeout_seconds=15.0, on_first_interrupt=_force_stop) File "C:\Users\EDY\Desktop\达人采集助手-portable-v2\app\MediaCrawler-main\tools\app_runner.py", line 109, in run asyncio.run(_runner()) File "C:\Users\EDY\Desktop\达人采集助手-portable-v2\app\runtime\python\Lib\asyncio\runners.py", line 190, in run return runner.run(main) ^^^^^^^^^^^^^^^^ File "C:\Users\EDY\Desktop\达人采集助手-portable-v2\app\runtime\python\Lib\asyncio\runners.py", line 118, in run return self._loop.run_until_complete(task) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "C:\Users\EDY\Desktop\达人采集助手-portable-v2\app\runtime\python\Lib\asyncio\base_events.py", line 654, in run_until_complete return future.result() ^^^^^^^^^^^^^^^ File "C:\Users\EDY\Desktop\达人采集助手-portable-v2\app\MediaCrawler-main\tools\app_runner.py", line 96, in _runner await app_main() File "C:\Users\EDY\Desktop\达人采集助手-portable-v2\app\MediaCrawler-main\main.py", line 114, in main await crawler.start() File "C:\Users\EDY\Desktop\达人采集助手-portable-v2\app\MediaCrawler-main\media_platform\douyin\core.py", line 141, in start await self.get_creators_and_videos() File "C:\Users\EDY\Desktop\达人采集助手-portable-v2\app\MediaCrawler-main\media_platform\douyin\core.py", line 342, in get_creators_and_videos creator_work_counts = await asyncio.gather( ^^^^^^^^^^^^^^^^^^^^^ File "C:\Users\EDY\Desktop\达人采集助手-portable-v2\app\MediaCrawler-main\media_platform\douyin\core.py", line 306, in fetch_one_creator creator_info: Dict = await self.dy_client.get_user_info(user_id) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "C:\Users\EDY\Desktop\达人采集助手-portable-v2\app\MediaCrawler-main\media_platform\douyin\client.py", line 319, in get_user_info return await self.get(uri, params) ^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "C:\Users\EDY\Desktop\达人采集助手-portable-v2\app\MediaCrawler-main\media_platform\douyin\client.py", line 141, in get await self.__process_req_params(uri, params, headers) File "C:\Users\EDY\Desktop\达人采集助手-portable-v2\app\MediaCrawler-main\media_platform\douyin\client.py", line 120, in __process_req_params a_bogus = await get_a_bogus(uri, query_string, post_data, headers["User-Agent"], self.playwright_page) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "C:\Users\EDY\Desktop\达人采集助手-portable-v2\app\MediaCrawler-main\media_platform\douyin\help.py", line 81, in get_a_bogus return get_a_bogus_from_js(url, params, user_agent) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "C:\Users\EDY\Desktop\达人采集助手-portable-v2\app\MediaCrawler-main\media_platform\douyin\help.py", line 100, in get_a_bogus_from_js result = subprocess.run( ^^^^^^^^^^^^^^^ File "C:\Users\EDY\Desktop\达人采集助手-portable-v2\app\runtime\python\Lib\subprocess.py", line 548, in run with Popen(*popenargs, **kwargs) as process: ^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "C:\Users\EDY\Desktop\达人采集助手-portable-v2\app\runtime\python\Lib\subprocess.py", line 1026, in __init__ self._execute_child(args, executable, preexec_fn, close_fds, File "C:\Users\EDY\Desktop\达人采集助手-portable-v2\app\runtime\python\Lib\subprocess.py", line 1538, in _execute_child hp, ht, pid, tid = _winapi.CreateProcess(executable, args, ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ FileNotFoundError: [WinError 2] 系统找不到指定的文件。
拽面哥 主页采集失败:2026-09-17 16:31:53 MediaCrawler INFO (core.py:77) - [DouYinCrawler] 使用CDP模式启动浏览器 2026-09-17 16:31:53 MediaCrawler INFO (cdp_browser.py:152) - [CDPBrowserManager] Connecting to existing browser on port 9222... 2026-09-17 16:31:53 MediaCrawler INFO (cdp_browser.py:155) - [CDPBrowserManager] Make sure remote debugging is enabled in your browser: chrome://inspect/#remote-debugging 2026-09-17 16:31:53 MediaCrawler INFO (cdp_browser.py:163) - [CDPBrowserManager] Waiting up to 60s for browser CDP connection... 2026-09-17 16:31:53 MediaCrawler INFO (cdp_browser.py:237) - [CDPBrowserManager] CDP port 9222 is accessible 2026-09-17 16:31:53 MediaCrawler INFO (cdp_browser.py:301) - [CDPBrowserManager] Got browser WebSocket URL: ws://localhost:9222/devtools/browser/b6166241-0447-4b83-98ca-78fdbeb71daf 2026-09-17 16:31:53 MediaCrawler INFO (cdp_browser.py:329) - [CDPBrowserManager] Connecting to existing browser via discovered CDP (attempt 1/3): ws://localhost:9222/devtools/browser/b6166241-0447-4b83-98ca-78fdbeb71daf 2026-09-17 16:31:53 MediaCrawler INFO (cdp_browser.py:333) - [CDPBrowserManager] If Chrome asks whether to allow remote debugging, accept it in the already logged-in browser window 2026-09-17 16:31:54 MediaCrawler INFO (cdp_browser.py:364) - [CDPBrowserManager] Successfully connected to browser 2026-09-17 16:31:54 MediaCrawler INFO (cdp_browser.py:365) - [CDPBrowserManager] Browser contexts count: 1 2026-09-17 16:31:54 MediaCrawler INFO (cdp_browser.py:390) - [CDPBrowserManager] Using existing browser context 2026-09-17 16:31:54 MediaCrawler INFO (cdp_browser.py:194) - [CDPBrowserManager] Successfully connected to existing browser 2026-09-17 16:31:54 MediaCrawler INFO (cdp_browser.py:422) - [CDPBrowserManager] Added anti-detection script: libs/stealth.min.js 2026-09-17 16:31:54 MediaCrawler INFO (core.py:450) - [DouYinCrawler] CDP浏览器信息: {'version': '152.0.7977.83', 'contexts_count': 1, 'debug_port': 9222, 'is_connected': True} 2026-09-17 16:31:55 MediaCrawler INFO (core.py:293) - [DouYinCrawler.get_creators_and_videos] Begin get douyin creators 2026-09-17 16:31:55 MediaCrawler INFO (core.py:294) - [DouYinCrawler.get_creators_and_videos] Parsing creator URLs... 2026-09-17 16:31:55 MediaCrawler INFO (core.py:339) - [DouYinCrawler.get_creators_and_videos] Creator concurrency: 2 2026-09-17 16:31:55 MediaCrawler INFO (core.py:301) - [DouYinCrawler.get_creators_and_videos] Parsed sec_user_id: MS4wLjABAAAA7Dv4Pfbq-BlpMpZ7_yBpNEq2BNCBNCMnS7rmaR78NpuJ2aS-8QhwZGhneEKhljEW from MS4wLjABAAAA7Dv4Pfbq-BlpMpZ7_yBpNEq2BNCBNCMnS7rmaR78NpuJ2aS-8QhwZGhneEKhljEW 2026-09-17 16:31:55 MediaCrawler INFO (core.py:301) - [DouYinCrawler.get_creators_and_videos] Parsed sec_user_id: MS4wLjABAAAAj4jCfgYculNXkB9VnC-aG-hvfteBhOuyLPOtqIoDWxBgWSUfhfbL-wVH5plAyLNO from MS4wLjABAAAAj4jCfgYculNXkB9VnC-aG-hvfteBhOuyLPOtqIoDWxBgWSUfhfbL-wVH5plAyLNO 2026-09-17 16:31:56 MediaCrawler INFO (core.py:301) - [DouYinCrawler.get_creators_and_videos] Parsed sec_user_id: MS4wLjABAAAAPJ4PEF3IYjZVVIpdLpXvaha7KN4plh9IVqlCCg22kRg from MS4wLjABAAAAPJ4PEF3IYjZVVIpdLpXvaha7KN4plh9IVqlCCg22kRg 2026-09-17 16:31:56 MediaCrawler INFO (cdp_browser.py:490) - [CDPBrowserManager] Browser connection disconnected 2026-09-17 16:31:56 MediaCrawler INFO (cdp_browser.py:507) - [CDPBrowserManager] Connected to existing browser, skipping process cleanup 2026-09-17 16:31:56 MediaCrawler INFO (core.py:301) - [DouYinCrawler.get_creators_and_videos] Parsed sec_user_id: MS4wLjABAAAAyWYKxw_oNK_teavPvEOU5pEy3cCHKoDdbM_tMeXDaKM from MS4wLjABAAAAyWYKxw_oNK_teavPvEOU5pEy3cCHKoDdbM_tMeXDaKM 2026-09-17 16:31:56 MediaCrawler INFO (core.py:301) - [DouYinCrawler.get_creators_and_videos] Parsed sec_user_id: MS4wLjABAAAAZN4FZfAK6hB4K0zWbg5ZT8Rjy3a6UEfUQUs8-WB1TdE from MS4wLjABAAAAZN4FZfAK6hB4K0zWbg5ZT8Rjy3a6UEfUQUs8-WB1TdE Traceback (most recent call last): File "C:\Users\EDY\Desktop\达人采集助手-portable-v2\app\scripts\run-mediacrawler.py", line 21, in <module> runpy.run_path(os.path.join(crawler_root, "main.py"), run_name="__main__") File "<frozen runpy>", line 291, in run_path File "<frozen runpy>", line 98, in _run_module_code File "<frozen runpy>", line 88, in _run_code File "C:\Users\EDY\Desktop\达人采集助手-portable-v2\app\MediaCrawler-main\main.py", line 174, in <module> run(main, async_cleanup, cleanup_timeout_seconds=15.0, on_first_interrupt=_force_stop) File "C:\Users\EDY\Desktop\达人采集助手-portable-v2\app\MediaCrawler-main\tools\app_runner.py", line 109, in run asyncio.run(_runner()) File "C:\Users\EDY\Desktop\达人采集助手-portable-v2\app\runtime\python\Lib\asyncio\runners.py", line 190, in run return runner.run(main) ^^^^^^^^^^^^^^^^ File "C:\Users\EDY\Desktop\达人采集助手-portable-v2\app\runtime\python\Lib\asyncio\runners.py", line 118, in run return self._loop.run_until_complete(task) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "C:\Users\EDY\Desktop\达人采集助手-portable-v2\app\runtime\python\Lib\asyncio\base_events.py", line 654, in run_until_complete return future.result() ^^^^^^^^^^^^^^^ File "C:\Users\EDY\Desktop\达人采集助手-portable-v2\app\MediaCrawler-main\tools\app_runner.py", line 96, in _runner await app_main() File "C:\Users\EDY\Desktop\达人采集助手-portable-v2\app\MediaCrawler-main\main.py", line 114, in main await crawler.start() File "C:\Users\EDY\Desktop\达人采集助手-portable-v2\app\MediaCrawler-main\media_platform\douyin\core.py", line 141, in start await self.get_creators_and_videos() File "C:\Users\EDY\Desktop\达人采集助手-portable-v2\app\MediaCrawler-main\media_platform\douyin\core.py", line 342, in get_creators_and_videos creator_work_counts = await asyncio.gather( ^^^^^^^^^^^^^^^^^^^^^ File "C:\Users\EDY\Desktop\达人采集助手-portable-v2\app\MediaCrawler-main\media_platform\douyin\core.py", line 306, in fetch_one_creator creator_info: Dict = await self.dy_client.get_user_info(user_id) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "C:\Users\EDY\Desktop\达人采集助手-portable-v2\app\MediaCrawler-main\media_platform\douyin\client.py", line 319, in get_user_info return await self.get(uri, params) ^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "C:\Users\EDY\Desktop\达人采集助手-portable-v2\app\MediaCrawler-main\media_platform\douyin\client.py", line 141, in get await self.__process_req_params(uri, params, headers) File "C:\Users\EDY\Desktop\达人采集助手-portable-v2\app\MediaCrawler-main\media_platform\douyin\client.py", line 120, in __process_req_params a_bogus = await get_a_bogus(uri, query_string, post_data, headers["User-Agent"], self.playwright_page) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "C:\Users\EDY\Desktop\达人采集助手-portable-v2\app\MediaCrawler-main\media_platform\douyin\help.py", line 81, in get_a_bogus return get_a_bogus_from_js(url, params, user_agent) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "C:\Users\EDY\Desktop\达人采集助手-portable-v2\app\MediaCrawler-main\media_platform\douyin\help.py", line 100, in get_a_bogus_from_js result = subprocess.run( ^^^^^^^^^^^^^^^ File "C:\Users\EDY\Desktop\达人采集助手-portable-v2\app\runtime\python\Lib\subprocess.py", line 548, in run with Popen(*popenargs, **kwargs) as process: ^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "C:\Users\EDY\Desktop\达人采集助手-portable-v2\app\runtime\python\Lib\subprocess.py", line 1026, in __init__ self._execute_child(args, executable, preexec_fn, close_fds, File "C:\Users\EDY\Desktop\达人采集助手-portable-v2\app\runtime\python\Lib\subprocess.py", line 1538, in _execute_child hp, ht, pid, tid = _winapi.CreateProcess(executable, args, ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ FileNotFoundError: [WinError 2] 系统找不到指定的文件。
鴻 主页采集失败:2026-09-17 16:17:13 MediaCrawler INFO (core.py:77) - [DouYinCrawler] 使用CDP模式启动浏览器 2026-09-17 16:17:13 MediaCrawler INFO (cdp_browser.py:152) - [CDPBrowserManager] Connecting to existing browser on port 9222... 2026-09-17 16:17:13 MediaCrawler INFO (cdp_browser.py:155) - [CDPBrowserManager] Make sure remote debugging is enabled in your browser: chrome://inspect/#remote-debugging 2026-09-17 16:17:13 MediaCrawler INFO (cdp_browser.py:163) - [CDPBrowserManager] Waiting up to 60s for browser CDP connection... 2026-09-17 16:17:14 MediaCrawler INFO (cdp_browser.py:237) - [CDPBrowserManager] CDP port 9222 is accessible 2026-09-17 16:17:14 MediaCrawler INFO (cdp_browser.py:301) - [CDPBrowserManager] Got browser WebSocket URL: ws://localhost:9222/devtools/browser/b6166241-0447-4b83-98ca-78fdbeb71daf 2026-09-17 16:17:14 MediaCrawler INFO (cdp_browser.py:329) - [CDPBrowserManager] Connecting to existing browser via discovered CDP (attempt 1/3): ws://localhost:9222/devtools/browser/b6166241-0447-4b83-98ca-78fdbeb71daf 2026-09-17 16:17:14 MediaCrawler INFO (cdp_browser.py:333) - [CDPBrowserManager] If Chrome asks whether to allow remote debugging, accept it in the already logged-in browser window 2026-09-17 16:17:14 MediaCrawler INFO (cdp_browser.py:364) - [CDPBrowserManager] Successfully connected to browser 2026-09-17 16:17:14 MediaCrawler INFO (cdp_browser.py:365) - [CDPBrowserManager] Browser contexts count: 1 2026-09-17 16:17:14 MediaCrawler INFO (cdp_browser.py:390) - [CDPBrowserManager] Using existing browser context 2026-09-17 16:17:14 MediaCrawler INFO (cdp_browser.py:194) - [CDPBrowserManager] Successfully connected to existing browser 2026-09-17 16:17:14 MediaCrawler INFO (cdp_browser.py:422) - [CDPBrowserManager] Added anti-detection script: libs/stealth.min.js 2026-09-17 16:17:14 MediaCrawler INFO (core.py:450) - [DouYinCrawler] CDP浏览器信息: {'version': '152.0.7977.83', 'contexts_count': 1, 'debug_port': 9222, 'is_connected': True} 2026-09-17 16:17:18 MediaCrawler INFO (core.py:293) - [DouYinCrawler.get_creators_and_videos] Begin get douyin creators 2026-09-17 16:17:18 MediaCrawler INFO (core.py:294) - [DouYinCrawler.get_creators_and_videos] Parsing creator URLs... 2026-09-17 16:17:18 MediaCrawler INFO (core.py:339) - [DouYinCrawler.get_creators_and_videos] Creator concurrency: 2 2026-09-17 16:17:18 MediaCrawler INFO (core.py:301) - [DouYinCrawler.get_creators_and_videos] Parsed sec_user_id: MS4wLjABAAAAGnlBtD4-AsC8Ezxp9dgKUyV1GiM2RiMihANay61ZmUs from MS4wLjABAAAAGnlBtD4-AsC8Ezxp9dgKUyV1GiM2RiMihANay61ZmUs 2026-09-17 16:17:18 MediaCrawler INFO (core.py:301) - [DouYinCrawler.get_creators_and_videos] Parsed sec_user_id: MS4wLjABAAAAi0_jiOyKGmyXvRlgE9mqEIMaU2W9s5fbNmyzbOUeqGY from MS4wLjABAAAAi0_jiOyKGmyXvRlgE9mqEIMaU2W9s5fbNmyzbOUeqGY 2026-09-17 16:17:18 MediaCrawler INFO (core.py:301) - [DouYinCrawler.get_creators_and_videos] Parsed sec_user_id: MS4wLjABAAAAmaMNwqGz64X_iW0WLCQn204vTjM41tex3s990hacBPg from MS4wLjABAAAAmaMNwqGz64X_iW0WLCQn204vTjM41tex3s990hacBPg 2026-09-17 16:17:18 MediaCrawler INFO (cdp_browser.py:490) - [CDPBrowserManager] Browser connection disconnected 2026-09-17 16:17:18 MediaCrawler INFO (cdp_browser.py:507) - [CDPBrowserManager] Connected to existing browser, skipping process cleanup 2026-09-17 16:17:18 MediaCrawler INFO (core.py:301) - [DouYinCrawler.get_creators_and_videos] Parsed sec_user_id: MS4wLjABAAAAw-pkFR8XUgai9LX22iR33Ybn_glmy2IFgPFbQEr32gmG_sDF6WB6bAVWljgzRY5- from MS4wLjABAAAAw-pkFR8XUgai9LX22iR33Ybn_glmy2IFgPFbQEr32gmG_sDF6WB6bAVWljgzRY5- 2026-09-17 16:17:18 MediaCrawler INFO (core.py:301) - [DouYinCrawler.get_creators_and_videos] Parsed sec_user_id: MS4wLjABAAAAYX8rlU8_TmzMyvkYTwk9XGCVvU9rwDa46hZgTUOZJ-UpFsP52mOYE_gJ9FSLkNW9 from MS4wLjABAAAAYX8rlU8_TmzMyvkYTwk9XGCVvU9rwDa46hZgTUOZJ-UpFsP52mOYE_gJ9FSLkNW9 Traceback (most recent call last): File "C:\Users\EDY\Desktop\达人采集助手-portable-v2\app\scripts\run-mediacrawler.py", line 21, in <module> runpy.run_path(os.path.join(crawler_root, "main.py"), run_name="__main__") File "<frozen runpy>", line 291, in run_path File "<frozen runpy>", line 98, in _run_module_code File "<frozen runpy>", line 88, in _run_code File "C:\Users\EDY\Desktop\达人采集助手-portable-v2\app\MediaCrawler-main\main.py", line 174, in <module> run(main, async_cleanup, cleanup_timeout_seconds=15.0, on_first_interrupt=_force_stop) File "C:\Users\EDY\Desktop\达人采集助手-portable-v2\app\MediaCrawler-main\tools\app_runner.py", line 109, in run asyncio.run(_runner()) File "C:\Users\EDY\Desktop\达人采集助手-portable-v2\app\runtime\python\Lib\asyncio\runners.py", line 190, in run return runner.run(main) ^^^^^^^^^^^^^^^^ File "C:\Users\EDY\Desktop\达人采集助手-portable-v2\app\runtime\python\Lib\asyncio\runners.py", line 118, in run return self._loop.run_until_complete(task) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "C:\Users\EDY\Desktop\达人采集助手-portable-v2\app\runtime\python\Lib\asyncio\base_events.py", line 654, in run_until_complete return future.result() ^^^^^^^^^^^^^^^ File "C:\Users\EDY\Desktop\达人采集助手-portable-v2\app\MediaCrawler-main\tools\app_runner.py", line 96, in _runner await app_main() File "C:\Users\EDY\Desktop\达人采集助手-portable-v2\app\MediaCrawler-main\main.py", line 114, in main await crawler.start() File "C:\Users\EDY\Desktop\达人采集助手-portable-v2\app\MediaCrawler-main\media_platform\douyin\core.py", line 141, in start await self.get_creators_and_videos() File "C:\Users\EDY\Desktop\达人采集助手-portable-v2\app\MediaCrawler-main\media_platform\douyin\core.py", line 342, in get_creators_and_videos creator_work_counts = await asyncio.gather( ^^^^^^^^^^^^^^^^^^^^^ File "C:\Users\EDY\Desktop\达人采集助手-portable-v2\app\MediaCrawler-main\media_platform\douyin\core.py", line 306, in fetch_one_creator creator_info: Dict = await self.dy_client.get_user_info(user_id) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "C:\Users\EDY\Desktop\达人采集助手-portable-v2\app\MediaCrawler-main\media_platform\douyin\client.py", line 319, in get_user_info return await self.get(uri, params) ^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "C:\Users\EDY\Desktop\达人采集助手-portable-v2\app\MediaCrawler-main\media_platform\douyin\client.py", line 141, in get await self.__process_req_params(uri, params, headers) File "C:\Users\EDY\Desktop\达人采集助手-portable-v2\app\MediaCrawler-main\media_platform\douyin\client.py", line 120, in __process_req_params a_bogus = await get_a_bogus(uri, query_string, post_data, headers["User-Agent"], self.playwright_page) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "C:\Users\EDY\Desktop\达人采集助手-portable-v2\app\MediaCrawler-main\media_platform\douyin\help.py", line 81, in get_a_bogus return get_a_bogus_from_js(url, params, user_agent) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "C:\Users\EDY\Desktop\达人采集助手-portable-v2\app\MediaCrawler-main\media_platform\douyin\help.py", line 100, in get_a_bogus_from_js result = subprocess.run( ^^^^^^^^^^^^^^^ File "C:\Users\EDY\Desktop\达人采集助手-portable-v2\app\runtime\python\Lib\subprocess.py", line 548, in run with Popen(*popenargs, **kwargs) as process: ^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "C:\Users\EDY\Desktop\达人采集助手-portable-v2\app\runtime\python\Lib\subprocess.py", line 1026, in __init__ self._execute_child(args, executable, preexec_fn, close_fds, File "C:\Users\EDY\Desktop\达人采集助手-portable-v2\app\runtime\python\Lib\subprocess.py", line 1538, in _execute_child hp, ht, pid, tid = _winapi.CreateProcess(executable, args, ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ FileNotFoundError: [WinError 2] 系统找不到指定的文件。
跑跑跑丢了 主页采集失败:2026-09-17 16:34:28 MediaCrawler INFO (core.py:77) - [DouYinCrawler] 使用CDP模式启动浏览器 2026-09-17 16:34:28 MediaCrawler INFO (cdp_browser.py:152) - [CDPBrowserManager] Connecting to existing browser on port 9222... 2026-09-17 16:34:28 MediaCrawler INFO (cdp_browser.py:155) - [CDPBrowserManager] Make sure remote debugging is enabled in your browser: chrome://inspect/#remote-debugging 2026-09-17 16:34:28 MediaCrawler INFO (cdp_browser.py:163) - [CDPBrowserManager] Waiting up to 60s for browser CDP connection... 2026-09-17 16:34:28 MediaCrawler INFO (cdp_browser.py:237) - [CDPBrowserManager] CDP port 9222 is accessible 2026-09-17 16:34:28 MediaCrawler INFO (cdp_browser.py:301) - [CDPBrowserManager] Got browser WebSocket URL: ws://localhost:9222/devtools/browser/53c8b36c-7017-453a-996c-e22b078eb53d 2026-09-17 16:34:28 MediaCrawler INFO (cdp_browser.py:329) - [CDPBrowserManager] Connecting to existing browser via discovered CDP (attempt 1/3): ws://localhost:9222/devtools/browser/53c8b36c-7017-453a-996c-e22b078eb53d 2026-09-17 16:34:28 MediaCrawler INFO (cdp_browser.py:333) - [CDPBrowserManager] If Chrome asks whether to allow remote debugging, accept it in the already logged-in browser window 2026-09-17 16:34:28 MediaCrawler INFO (cdp_browser.py:364) - [CDPBrowserManager] Successfully connected to browser 2026-09-17 16:34:28 MediaCrawler INFO (cdp_browser.py:365) - [CDPBrowserManager] Browser contexts count: 1 2026-09-17 16:34:28 MediaCrawler INFO (cdp_browser.py:390) - [CDPBrowserManager] Using existing browser context 2026-09-17 16:34:28 MediaCrawler INFO (cdp_browser.py:194) - [CDPBrowserManager] Successfully connected to existing browser 2026-09-17 16:34:29 MediaCrawler INFO (cdp_browser.py:422) - [CDPBrowserManager] Added anti-detection script: libs/stealth.min.js 2026-09-17 16:34:29 MediaCrawler INFO (core.py:450) - [DouYinCrawler] CDP浏览器信息: {'version': '152.0.7977.83', 'contexts_count': 1, 'debug_port': 9222, 'is_connected': True} 2026-09-17 16:34:30 MediaCrawler INFO (core.py:293) - [DouYinCrawler.get_creators_and_videos] Begin get douyin creators 2026-09-17 16:34:30 MediaCrawler INFO (core.py:294) - [DouYinCrawler.get_creators_and_videos] Parsing creator URLs... 2026-09-17 16:34:30 MediaCrawler INFO (core.py:339) - [DouYinCrawler.get_creators_and_videos] Creator concurrency: 2 2026-09-17 16:34:30 MediaCrawler INFO (core.py:301) - [DouYinCrawler.get_creators_and_videos] Parsed sec_user_id: MS4wLjABAAAA5gA59x6FUCiI1n5NoVtbXOeZu5QRW2tYcrwY5meKWVU from MS4wLjABAAAA5gA59x6FUCiI1n5NoVtbXOeZu5QRW2tYcrwY5meKWVU 2026-09-17 16:34:30 MediaCrawler INFO (core.py:301) - [DouYinCrawler.get_creators_and_videos] Parsed sec_user_id: MS4wLjABAAAAftBwvA2SGUePfeyw1S1RxJE-wORR_wZm-qrnhgWYZYNTL7CeQG3HxsjlONW8dwcp from MS4wLjABAAAAftBwvA2SGUePfeyw1S1RxJE-wORR_wZm-qrnhgWYZYNTL7CeQG3HxsjlONW8dwcp 2026-09-17 16:34:30 MediaCrawler INFO (cdp_browser.py:490) - [CDPBrowserManager] Browser connection disconnected 2026-09-17 16:34:30 MediaCrawler INFO (cdp_browser.py:507) - [CDPBrowserManager] Connected to existing browser, skipping process cleanup Traceback (most recent call last): File "C:\Users\EDY\Desktop\达人采集助手-portable-v2\app\scripts\run-mediacrawler.py", line 21, in <module> runpy.run_path(os.path.join(crawler_root, "main.py"), run_name="__main__") File "<frozen runpy>", line 291, in run_path File "<frozen runpy>", line 98, in _run_module_code File "<frozen runpy>", line 88, in _run_code File "C:\Users\EDY\Desktop\达人采集助手-portable-v2\app\MediaCrawler-main\main.py", line 174, in <module> run(main, async_cleanup, cleanup_timeout_seconds=15.0, on_first_interrupt=_force_stop) File "C:\Users\EDY\Desktop\达人采集助手-portable-v2\app\MediaCrawler-main\tools\app_runner.py", line 109, in run asyncio.run(_runner()) File "C:\Users\EDY\Desktop\达人采集助手-portable-v2\app\runtime\python\Lib\asyncio\runners.py", line 190, in run return runner.run(main) ^^^^^^^^^^^^^^^^ File "C:\Users\EDY\Desktop\达人采集助手-portable-v2\app\runtime\python\Lib\asyncio\runners.py", line 118, in run return self._loop.run_until_complete(task) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "C:\Users\EDY\Desktop\达人采集助手-portable-v2\app\runtime\python\Lib\asyncio\base_events.py", line 654, in run_until_complete return future.result() ^^^^^^^^^^^^^^^ File "C:\Users\EDY\Desktop\达人采集助手-portable-v2\app\MediaCrawler-main\tools\app_runner.py", line 96, in _runner await app_main() File "C:\Users\EDY\Desktop\达人采集助手-portable-v2\app\MediaCrawler-main\main.py", line 114, in main await crawler.start() File "C:\Users\EDY\Desktop\达人采集助手-portable-v2\app\MediaCrawler-main\media_platform\douyin\core.py", line 141, in start await self.get_creators_and_videos() File "C:\Users\EDY\Desktop\达人采集助手-portable-v2\app\MediaCrawler-main\media_platform\douyin\core.py", line 342, in get_creators_and_videos creator_work_counts = await asyncio.gather( ^^^^^^^^^^^^^^^^^^^^^ File "C:\Users\EDY\Desktop\达人采集助手-portable-v2\app\MediaCrawler-main\media_platform\douyin\core.py", line 306, in fetch_one_creator creator_info: Dict = await self.dy_client.get_user_info(user_id) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "C:\Users\EDY\Desktop\达人采集助手-portable-v2\app\MediaCrawler-main\media_platform\douyin\client.py", line 319, in get_user_info return await self.get(uri, params) ^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "C:\Users\EDY\Desktop\达人采集助手-portable-v2\app\MediaCrawler-main\media_platform\douyin\client.py", line 141, in get await self.__process_req_params(uri, params, headers) File "C:\Users\EDY\Desktop\达人采集助手-portable-v2\app\MediaCrawler-main\media_platform\douyin\client.py", line 120, in __process_req_params a_bogus = await get_a_bogus(uri, query_string, post_data, headers["User-Agent"], self.playwright_page) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "C:\Users\EDY\Desktop\达人采集助手-portable-v2\app\MediaCrawler-main\media_platform\douyin\help.py", line 81, in get_a_bogus return get_a_bogus_from_js(url, params, user_agent) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "C:\Users\EDY\Desktop\达人采集助手-portable-v2\app\MediaCrawler-main\media_platform\douyin\help.py", line 100, in get_a_bogus_from_js result = subprocess.run( ^^^^^^^^^^^^^^^ File "C:\Users\EDY\Desktop\达人采集助手-portable-v2\app\runtime\python\Lib\subprocess.py", line 548, in run with Popen(*popenargs, **kwargs) as process: ^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "C:\Users\EDY\Desktop\达人采集助手-portable-v2\app\runtime\python\Lib\subprocess.py", line 1026, in __init__ self._execute_child(args, executable, preexec_fn, close_fds, File "C:\Users\EDY\Desktop\达人采集助手-portable-v2\app\runtime\python\Lib\subprocess.py", line 1538, in _execute_child hp, ht, pid, tid = _winapi.CreateProcess(executable, args, ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ FileNotFoundError: [WinError 2] 系统找不到指定的文件。
飞飞跑不快 主页采集失败:2026-09-17 16:15:10 MediaCrawler INFO (core.py:77) - [DouYinCrawler] 使用CDP模式启动浏览器 2026-09-17 16:15:10 MediaCrawler INFO (cdp_browser.py:152) - [CDPBrowserManager] Connecting to existing browser on port 9222... 2026-09-17 16:15:10 MediaCrawler INFO (cdp_browser.py:155) - [CDPBrowserManager] Make sure remote debugging is enabled in your browser: chrome://inspect/#remote-debugging 2026-09-17 16:15:10 MediaCrawler INFO (cdp_browser.py:163) - [CDPBrowserManager] Waiting up to 60s for browser CDP connection... 2026-09-17 16:15:10 MediaCrawler INFO (cdp_browser.py:237) - [CDPBrowserManager] CDP port 9222 is accessible 2026-09-17 16:15:10 MediaCrawler INFO (cdp_browser.py:301) - [CDPBrowserManager] Got browser WebSocket URL: ws://localhost:9222/devtools/browser/de0c60f3-2b1a-4fcc-adf5-d6c8e827445b 2026-09-17 16:15:10 MediaCrawler INFO (cdp_browser.py:329) - [CDPBrowserManager] Connecting to existing browser via discovered CDP (attempt 1/3): ws://localhost:9222/devtools/browser/de0c60f3-2b1a-4fcc-adf5-d6c8e827445b 2026-09-17 16:15:10 MediaCrawler INFO (cdp_browser.py:333) - [CDPBrowserManager] If Chrome asks whether to allow remote debugging, accept it in the already logged-in browser window 2026-09-17 16:15:11 MediaCrawler INFO (cdp_browser.py:364) - [CDPBrowserManager] Successfully connected to browser 2026-09-17 16:15:11 MediaCrawler INFO (cdp_browser.py:365) - [CDPBrowserManager] Browser contexts count: 1 2026-09-17 16:15:11 MediaCrawler INFO (cdp_browser.py:390) - [CDPBrowserManager] Using existing browser context 2026-09-17 16:15:11 MediaCrawler INFO (cdp_browser.py:194) - [CDPBrowserManager] Successfully connected to existing browser 2026-09-17 16:15:11 MediaCrawler INFO (cdp_browser.py:422) - [CDPBrowserManager] Added anti-detection script: libs/stealth.min.js 2026-09-17 16:15:11 MediaCrawler INFO (core.py:450) - [DouYinCrawler] CDP浏览器信息: {'version': '152.0.7977.83', 'contexts_count': 1, 'debug_port': 9222, 'is_connected': True} 2026-09-17 16:15:13 MediaCrawler INFO (core.py:293) - [DouYinCrawler.get_creators_and_videos] Begin get douyin creators 2026-09-17 16:15:13 MediaCrawler INFO (core.py:294) - [DouYinCrawler.get_creators_and_videos] Parsing creator URLs... 2026-09-17 16:15:13 MediaCrawler INFO (core.py:339) - [DouYinCrawler.get_creators_and_videos] Creator concurrency: 2 2026-09-17 16:15:13 MediaCrawler INFO (core.py:301) - [DouYinCrawler.get_creators_and_videos] Parsed sec_user_id: MS4wLjABAAAAjepLlzNdaOp_DUwK3JDAqN0lq-uF20KK8-z0LJWlp1xEWQtVRdeVLbuvSTUX8LFZ from MS4wLjABAAAAjepLlzNdaOp_DUwK3JDAqN0lq-uF20KK8-z0LJWlp1xEWQtVRdeVLbuvSTUX8LFZ 2026-09-17 16:15:13 MediaCrawler INFO (core.py:301) - [DouYinCrawler.get_creators_and_videos] Parsed sec_user_id: MS4wLjABAAAAwAqR3qxA7AgpSCqEUVz7VJsMos2x6uFNNwQ3bFO3dUk from MS4wLjABAAAAwAqR3qxA7AgpSCqEUVz7VJsMos2x6uFNNwQ3bFO3dUk 2026-09-17 16:15:13 MediaCrawler INFO (cdp_browser.py:490) - [CDPBrowserManager] Browser connection disconnected 2026-09-17 16:15:13 MediaCrawler INFO (cdp_browser.py:507) - [CDPBrowserManager] Connected to existing browser, skipping process cleanup Traceback (most recent call last): File "C:\Users\EDY\Desktop\达人采集助手-portable-v2\app\scripts\run-mediacrawler.py", line 21, in <module> runpy.run_path(os.path.join(crawler_root, "main.py"), run_name="__main__") File "<frozen runpy>", line 291, in run_path File "<frozen runpy>", line 98, in _run_module_code File "<frozen runpy>", line 88, in _run_code File "C:\Users\EDY\Desktop\达人采集助手-portable-v2\app\MediaCrawler-main\main.py", line 174, in <module> run(main, async_cleanup, cleanup_timeout_seconds=15.0, on_first_interrupt=_force_stop) File "C:\Users\EDY\Desktop\达人采集助手-portable-v2\app\MediaCrawler-main\tools\app_runner.py", line 109, in run asyncio.run(_runner()) File "C:\Users\EDY\Desktop\达人采集助手-portable-v2\app\runtime\python\Lib\asyncio\runners.py", line 190, in run return runner.run(main) ^^^^^^^^^^^^^^^^ File "C:\Users\EDY\Desktop\达人采集助手-portable-v2\app\runtime\python\Lib\asyncio\runners.py", line 118, in run return self._loop.run_until_complete(task) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "C:\Users\EDY\Desktop\达人采集助手-portable-v2\app\runtime\python\Lib\asyncio\base_events.py", line 654, in run_until_complete return future.result() ^^^^^^^^^^^^^^^ File "C:\Users\EDY\Desktop\达人采集助手-portable-v2\app\MediaCrawler-main\tools\app_runner.py", line 96, in _runner await app_main() File "C:\Users\EDY\Desktop\达人采集助手-portable-v2\app\MediaCrawler-main\main.py", line 114, in main await crawler.start() File "C:\Users\EDY\Desktop\达人采集助手-portable-v2\app\MediaCrawler-main\media_platform\douyin\core.py", line 141, in start await self.get_creators_and_videos() File "C:\Users\EDY\Desktop\达人采集助手-portable-v2\app\MediaCrawler-main\media_platform\douyin\core.py", line 342, in get_creators_and_videos creator_work_counts = await asyncio.gather( ^^^^^^^^^^^^^^^^^^^^^ File "C:\Users\EDY\Desktop\达人采集助手-portable-v2\app\MediaCrawler-main\media_platform\douyin\core.py", line 306, in fetch_one_creator creator_info: Dict = await self.dy_client.get_user_info(user_id) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "C:\Users\EDY\Desktop\达人采集助手-portable-v2\app\MediaCrawler-main\media_platform\douyin\client.py", line 319, in get_user_info return await self.get(uri, params) ^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "C:\Users\EDY\Desktop\达人采集助手-portable-v2\app\MediaCrawler-main\media_platform\douyin\client.py", line 141, in get await self.__process_req_params(uri, params, headers) File "C:\Users\EDY\Desktop\达人采集助手-portable-v2\app\MediaCrawler-main\media_platform\douyin\client.py", line 120, in __process_req_params a_bogus = await get_a_bogus(uri, query_string, post_data, headers["User-Agent"], self.playwright_page) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "C:\Users\EDY\Desktop\达人采集助手-portable-v2\app\MediaCrawler-main\media_platform\douyin\help.py", line 81, in get_a_bogus return get_a_bogus_from_js(url, params, user_agent) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "C:\Users\EDY\Desktop\达人采集助手-portable-v2\app\MediaCrawler-main\media_platform\douyin\help.py", line 100, in get_a_bogus_from_js result = subprocess.run( ^^^^^^^^^^^^^^^ File "C:\Users\EDY\Desktop\达人采集助手-portable-v2\app\runtime\python\Lib\subprocess.py", line 548, in run with Popen(*popenargs, **kwargs) as process: ^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "C:\Users\EDY\Desktop\达人采集助手-portable-v2\app\runtime\python\Lib\subprocess.py", line 1026, in __init__ self._execute_child(args, executable, preexec_fn, close_fds, File "C:\Users\EDY\Desktop\达人采集助手-portable-v2\app\runtime\python\Lib\subprocess.py", line 1538, in _execute_child hp, ht, pid, tid = _winapi.CreateProcess(executable, args, ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ FileNotFoundError: [WinError 2] 系统找不到指定的文件。
萬平安. 主页采集失败:2026-09-17 16:17:49 MediaCrawler INFO (core.py:77) - [DouYinCrawler] 使用CDP模式启动浏览器 2026-09-17 16:17:49 MediaCrawler INFO (cdp_browser.py:152) - [CDPBrowserManager] Connecting to existing browser on port 9222... 2026-09-17 16:17:49 MediaCrawler INFO (cdp_browser.py:155) - [CDPBrowserManager] Make sure remote debugging is enabled in your browser: chrome://inspect/#remote-debugging 2026-09-17 16:17:49 MediaCrawler INFO (cdp_browser.py:163) - [CDPBrowserManager] Waiting up to 60s for browser CDP connection... 2026-09-17 16:17:49 MediaCrawler INFO (cdp_browser.py:237) - [CDPBrowserManager] CDP port 9222 is accessible 2026-09-17 16:17:50 MediaCrawler INFO (cdp_browser.py:301) - [CDPBrowserManager] Got browser WebSocket URL: ws://localhost:9222/devtools/browser/b6166241-0447-4b83-98ca-78fdbeb71daf 2026-09-17 16:17:50 MediaCrawler INFO (cdp_browser.py:329) - [CDPBrowserManager] Connecting to existing browser via discovered CDP (attempt 1/3): ws://localhost:9222/devtools/browser/b6166241-0447-4b83-98ca-78fdbeb71daf 2026-09-17 16:17:50 MediaCrawler INFO (cdp_browser.py:333) - [CDPBrowserManager] If Chrome asks whether to allow remote debugging, accept it in the already logged-in browser window 2026-09-17 16:17:50 MediaCrawler INFO (cdp_browser.py:364) - [CDPBrowserManager] Successfully connected to browser 2026-09-17 16:17:50 MediaCrawler INFO (cdp_browser.py:365) - [CDPBrowserManager] Browser contexts count: 1 2026-09-17 16:17:50 MediaCrawler INFO (cdp_browser.py:390) - [CDPBrowserManager] Using existing browser context 2026-09-17 16:17:50 MediaCrawler INFO (cdp_browser.py:194) - [CDPBrowserManager] Successfully connected to existing browser 2026-09-17 16:17:51 MediaCrawler INFO (cdp_browser.py:422) - [CDPBrowserManager] Added anti-detection script: libs/stealth.min.js 2026-09-17 16:17:51 MediaCrawler INFO (core.py:450) - [DouYinCrawler] CDP浏览器信息: {'version': '152.0.7977.83', 'contexts_count': 1, 'debug_port': 9222, 'is_connected': True} 2026-09-17 16:17:54 MediaCrawler INFO (core.py:293) - [DouYinCrawler.get_creators_and_videos] Begin get douyin creators 2026-09-17 16:17:54 MediaCrawler INFO (core.py:294) - [DouYinCrawler.get_creators_and_videos] Parsing creator URLs... 2026-09-17 16:17:54 MediaCrawler INFO (core.py:339) - [DouYinCrawler.get_creators_and_videos] Creator concurrency: 2 2026-09-17 16:17:54 MediaCrawler INFO (core.py:301) - [DouYinCrawler.get_creators_and_videos] Parsed sec_user_id: MS4wLjABAAAA18r2rGm6-Fy4pWOBsuMKjiyaL00HVb8OXByyIJQefEjT2SSeRkCjNE9sUUiD5-QW from MS4wLjABAAAA18r2rGm6-Fy4pWOBsuMKjiyaL00HVb8OXByyIJQefEjT2SSeRkCjNE9sUUiD5-QW 2026-09-17 16:17:54 MediaCrawler INFO (core.py:301) - [DouYinCrawler.get_creators_and_videos] Parsed sec_user_id: MS4wLjABAAAA6yTSKg65reefWJZ1z9Ru9Fp2WheNP5ASIWlxJs4IYu3ZuatbcbNtImRNFQsZQkbV from MS4wLjABAAAA6yTSKg65reefWJZ1z9Ru9Fp2WheNP5ASIWlxJs4IYu3ZuatbcbNtImRNFQsZQkbV 2026-09-17 16:17:54 MediaCrawler INFO (core.py:301) - [DouYinCrawler.get_creators_and_videos] Parsed sec_user_id: MS4wLjABAAAAp2_PotlQmQPekOddQvZmlyk6ViEmyjlEwWyJqX9piNhSSD9e8LQHfXWneOZFZvPX from MS4wLjABAAAAp2_PotlQmQPekOddQvZmlyk6ViEmyjlEwWyJqX9piNhSSD9e8LQHfXWneOZFZvPX 2026-09-17 16:17:54 MediaCrawler INFO (cdp_browser.py:490) - [CDPBrowserManager] Browser connection disconnected 2026-09-17 16:17:54 MediaCrawler INFO (cdp_browser.py:507) - [CDPBrowserManager] Connected to existing browser, skipping process cleanup 2026-09-17 16:17:54 MediaCrawler INFO (core.py:301) - [DouYinCrawler.get_creators_and_videos] Parsed sec_user_id: MS4wLjABAAAAtGmbhJG4JeO_tTYOltQxkIrgfMmzZaTuVQeofYJ_V0M from MS4wLjABAAAAtGmbhJG4JeO_tTYOltQxkIrgfMmzZaTuVQeofYJ_V0M Traceback (most recent call last): File "C:\Users\EDY\Desktop\达人采集助手-portable-v2\app\scripts\run-mediacrawler.py", line 21, in <module> runpy.run_path(os.path.join(crawler_root, "main.py"), run_name="__main__") File "<frozen runpy>", line 291, in run_path File "<frozen runpy>", line 98, in _run_module_code File "<frozen runpy>", line 88, in _run_code File "C:\Users\EDY\Desktop\达人采集助手-portable-v2\app\MediaCrawler-main\main.py", line 174, in <module> run(main, async_cleanup, cleanup_timeout_seconds=15.0, on_first_interrupt=_force_stop) File "C:\Users\EDY\Desktop\达人采集助手-portable-v2\app\MediaCrawler-main\tools\app_runner.py", line 109, in run asyncio.run(_runner()) File "C:\Users\EDY\Desktop\达人采集助手-portable-v2\app\runtime\python\Lib\asyncio\runners.py", line 190, in run return runner.run(main) ^^^^^^^^^^^^^^^^ File "C:\Users\EDY\Desktop\达人采集助手-portable-v2\app\runtime\python\Lib\asyncio\runners.py", line 118, in run return self._loop.run_until_complete(task) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "C:\Users\EDY\Desktop\达人采集助手-portable-v2\app\runtime\python\Lib\asyncio\base_events.py", line 654, in run_until_complete return future.result() ^^^^^^^^^^^^^^^ File "C:\Users\EDY\Desktop\达人采集助手-portable-v2\app\MediaCrawler-main\tools\app_runner.py", line 96, in _runner await app_main() File "C:\Users\EDY\Desktop\达人采集助手-portable-v2\app\MediaCrawler-main\main.py", line 114, in main await crawler.start() File "C:\Users\EDY\Desktop\达人采集助手-portable-v2\app\MediaCrawler-main\media_platform\douyin\core.py", line 141, in start await self.get_creators_and_videos() File "C:\Users\EDY\Desktop\达人采集助手-portable-v2\app\MediaCrawler-main\media_platform\douyin\core.py", line 342, in get_creators_and_videos creator_work_counts = await asyncio.gather( ^^^^^^^^^^^^^^^^^^^^^ File "C:\Users\EDY\Desktop\达人采集助手-portable-v2\app\MediaCrawler-main\media_platform\douyin\core.py", line 306, in fetch_one_creator creator_info: Dict = await self.dy_client.get_user_info(user_id) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "C:\Users\EDY\Desktop\达人采集助手-portable-v2\app\MediaCrawler-main\media_platform\douyin\client.py", line 319, in get_user_info return await self.get(uri, params) ^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "C:\Users\EDY\Desktop\达人采集助手-portable-v2\app\MediaCrawler-main\media_platform\douyin\client.py", line 141, in get await self.__process_req_params(uri, params, headers) File "C:\Users\EDY\Desktop\达人采集助手-portable-v2\app\MediaCrawler-main\media_platform\douyin\client.py", line 120, in __process_req_params a_bogus = await get_a_bogus(uri, query_string, post_data, headers["User-Agent"], self.playwright_page) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "C:\Users\EDY\Desktop\达人采集助手-portable-v2\app\MediaCrawler-main\media_platform\douyin\help.py", line 81, in get_a_bogus return get_a_bogus_from_js(url, params, user_agent) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "C:\Users\EDY\Desktop\达人采集助手-portable-v2\app\MediaCrawler-main\media_platform\douyin\help.py", line 100, in get_a_bogus_from_js result = subprocess.run( ^^^^^^^^^^^^^^^ File "C:\Users\EDY\Desktop\达人采集助手-portable-v2\app\runtime\python\Lib\subprocess.py", line 548, in run with Popen(*popenargs, **kwargs) as process: ^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "C:\Users\EDY\Desktop\达人采集助手-portable-v2\app\runtime\python\Lib\subprocess.py", line 1026, in __init__ self._execute_child(args, executable, preexec_fn, close_fds, File "C:\Users\EDY\Desktop\达人采集助手-portable-v2\app\runtime\python\Lib\subprocess.py", line 1538, in _execute_child hp, ht, pid, tid = _winapi.CreateProcess(executable, args, ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ FileNotFoundError: [WinError 2] 系统找不到指定的文件。
三木 主页采集失败:2026-09-17 14:22:42 MediaCrawler INFO (core.py:77) - [DouYinCrawler] 使用CDP模式启动浏览器 2026-09-17 14:22:42 MediaCrawler INFO (cdp_browser.py:152) - [CDPBrowserManager] Connecting to existing browser on port 9222... 2026-09-17 14:22:42 MediaCrawler INFO (cdp_browser.py:155) - [CDPBrowserManager] Make sure remote debugging is enabled in your browser: chrome://inspect/#remote-debugging 2026-09-17 14:22:42 MediaCrawler INFO (cdp_browser.py:163) - [CDPBrowserManager] Waiting up to 60s for browser CDP connection... 2026-09-17 14:22:42 MediaCrawler INFO (cdp_browser.py:237) - [CDPBrowserManager] CDP port 9222 is accessible 2026-09-17 14:22:42 MediaCrawler INFO (cdp_browser.py:301) - [CDPBrowserManager] Got browser WebSocket URL: ws://localhost:9222/devtools/browser/f079b23d-96c5-4a1d-989c-33629bf0f438 2026-09-17 14:22:42 MediaCrawler INFO (cdp_browser.py:329) - [CDPBrowserManager] Connecting to existing browser via discovered CDP (attempt 1/3): ws://localhost:9222/devtools/browser/f079b23d-96c5-4a1d-989c-33629bf0f438 2026-09-17 14:22:42 MediaCrawler INFO (cdp_browser.py:333) - [CDPBrowserManager] If Chrome asks whether to allow remote debugging, accept it in the already logged-in browser window 2026-09-17 14:22:43 MediaCrawler INFO (cdp_browser.py:364) - [CDPBrowserManager] Successfully connected to browser 2026-09-17 14:22:43 MediaCrawler INFO (cdp_browser.py:365) - [CDPBrowserManager] Browser contexts count: 1 2026-09-17 14:22:43 MediaCrawler INFO (cdp_browser.py:390) - [CDPBrowserManager] Using existing browser context 2026-09-17 14:22:43 MediaCrawler INFO (cdp_browser.py:194) - [CDPBrowserManager] Successfully connected to existing browser 2026-09-17 14:22:43 MediaCrawler INFO (cdp_browser.py:422) - [CDPBrowserManager] Added anti-detection script: libs/stealth.min.js 2026-09-17 14:22:43 MediaCrawler INFO (core.py:450) - [DouYinCrawler] CDP浏览器信息: {'version': '152.0.7977.83', 'contexts_count': 1, 'debug_port': 9222, 'is_connected': True} 2026-09-17 14:22:47 MediaCrawler INFO (core.py:293) - [DouYinCrawler.get_creators_and_videos] Begin get douyin creators 2026-09-17 14:22:47 MediaCrawler INFO (core.py:294) - [DouYinCrawler.get_creators_and_videos] Parsing creator URLs... 2026-09-17 14:22:47 MediaCrawler INFO (core.py:339) - [DouYinCrawler.get_creators_and_videos] Creator concurrency: 2 2026-09-17 14:22:47 MediaCrawler INFO (core.py:301) - [DouYinCrawler.get_creators_and_videos] Parsed sec_user_id: MS4wLjABAAAAcdV0gXMX-2NowbEBz6sIOitjtNkS6OrMFboOXglN_24 from MS4wLjABAAAAcdV0gXMX-2NowbEBz6sIOitjtNkS6OrMFboOXglN_24 2026-09-17 14:22:47 MediaCrawler INFO (core.py:301) - [DouYinCrawler.get_creators_and_videos] Parsed sec_user_id: MS4wLjABAAAAcoB7wwtHNv_SA37jK1z1FHvzg0PPR6G7C7ar3T5J0rE from MS4wLjABAAAAcoB7wwtHNv_SA37jK1z1FHvzg0PPR6G7C7ar3T5J0rE 2026-09-17 14:22:47 MediaCrawler INFO (core.py:301) - [DouYinCrawler.get_creators_and_videos] Parsed sec_user_id: MS4wLjABAAAAhPcICW7ccBHl3NXTO7YtlCBbDdnQpJINPc5qu4Dqj6he_-YeQ7G80iK_LFTVBZvc from MS4wLjABAAAAhPcICW7ccBHl3NXTO7YtlCBbDdnQpJINPc5qu4Dqj6he_-YeQ7G80iK_LFTVBZvc 2026-09-17 14:22:47 MediaCrawler INFO (cdp_browser.py:490) - [CDPBrowserManager] Browser connection disconnected 2026-09-17 14:22:47 MediaCrawler INFO (cdp_browser.py:507) - [CDPBrowserManager] Connected to existing browser, skipping process cleanup 2026-09-17 14:22:47 MediaCrawler INFO (core.py:301) - [DouYinCrawler.get_creators_and_videos] Parsed sec_user_id: MS4wLjABAAAAt0TXuTMnoUvY_UkXiXPdrR-f-SHqWcgN9mRYW_nsq-4 from MS4wLjABAAAAt0TXuTMnoUvY_UkXiXPdrR-f-SHqWcgN9mRYW_nsq-4 2026-09-17 14:22:47 MediaCrawler INFO (core.py:301) - [DouYinCrawler.get_creators_and_videos] Parsed sec_user_id: MS4wLjABAAAAxz6zLvaThtHTFH90gjHMDsA24teKLo77ks4IcrNMaeMzfDpFWDty7XPstW76-uI- from MS4wLjABAAAAxz6zLvaThtHTFH90gjHMDsA24teKLo77ks4IcrNMaeMzfDpFWDty7XPstW76-uI- Traceback (most recent call last): File "C:\Users\EDY\Documents\流程\kol-crm-next\scripts\run-mediacrawler.py", line 21, in <module> runpy.run_path(os.path.join(crawler_root, "main.py"), run_name="__main__") File "<frozen runpy>", line 291, in run_path File "<frozen runpy>", line 98, in _run_module_code File "<frozen runpy>", line 88, in _run_code File "C:\Users\EDY\Desktop\达人采集助手-portable-v3\达人采集助手-portable-v3\app\MediaCrawler-main\main.py", line 174, in <module> run(main, async_cleanup, cleanup_timeout_seconds=15.0, on_first_interrupt=_force_stop) File "C:\Users\EDY\Desktop\达人采集助手-portable-v3\达人采集助手-portable-v3\app\MediaCrawler-main\tools\app_runner.py", line 109, in run asyncio.run(_runner()) File "C:\Users\EDY\Desktop\达人采集助手-portable-v3\达人采集助手-portable-v3\app\runtime\python\Lib\asyncio\runners.py", line 190, in run return runner.run(main) ^^^^^^^^^^^^^^^^ File "C:\Users\EDY\Desktop\达人采集助手-portable-v3\达人采集助手-portable-v3\app\runtime\python\Lib\asyncio\runners.py", line 118, in run return self._loop.run_until_complete(task) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "C:\Users\EDY\Desktop\达人采集助手-portable-v3\达人采集助手-portable-v3\app\runtime\python\Lib\asyncio\base_events.py", line 654, in run_until_complete return future.result() ^^^^^^^^^^^^^^^ File "C:\Users\EDY\Desktop\达人采集助手-portable-v3\达人采集助手-portable-v3\app\MediaCrawler-main\tools\app_runner.py", line 96, in _runner await app_main() File "C:\Users\EDY\Desktop\达人采集助手-portable-v3\达人采集助手-portable-v3\app\MediaCrawler-main\main.py", line 114, in main await crawler.start() File "C:\Users\EDY\Desktop\达人采集助手-portable-v3\达人采集助手-portable-v3\app\MediaCrawler-main\media_platform\douyin\core.py", line 141, in start await self.get_creators_and_videos() File "C:\Users\EDY\Desktop\达人采集助手-portable-v3\达人采集助手-portable-v3\app\MediaCrawler-main\media_platform\douyin\core.py", line 342, in get_creators_and_videos creator_work_counts = await asyncio.gather( ^^^^^^^^^^^^^^^^^^^^^ File "C:\Users\EDY\Desktop\达人采集助手-portable-v3\达人采集助手-portable-v3\app\MediaCrawler-main\media_platform\douyin\core.py", line 306, in fetch_one_creator creator_info: Dict = await self.dy_client.get_user_info(user_id) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "C:\Users\EDY\Desktop\达人采集助手-portable-v3\达人采集助手-portable-v3\app\MediaCrawler-main\media_platform\douyin\client.py", line 319, in get_user_info return await self.get(uri, params) ^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "C:\Users\EDY\Desktop\达人采集助手-portable-v3\达人采集助手-portable-v3\app\MediaCrawler-main\media_platform\douyin\client.py", line 141, in get await self.__process_req_params(uri, params, headers) File "C:\Users\EDY\Desktop\达人采集助手-portable-v3\达人采集助手-portable-v3\app\MediaCrawler-main\media_platform\douyin\client.py", line 120, in __process_req_params a_bogus = await get_a_bogus(uri, query_string, post_data, headers["User-Agent"], self.playwright_page) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "C:\Users\EDY\Desktop\达人采集助手-portable-v3\达人采集助手-portable-v3\app\MediaCrawler-main\media_platform\douyin\help.py", line 81, in get_a_bogus return get_a_bogus_from_js(url, params, user_agent) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "C:\Users\EDY\Desktop\达人采集助手-portable-v3\达人采集助手-portable-v3\app\MediaCrawler-main\media_platform\douyin\help.py", line 100, in get_a_bogus_from_js result = subprocess.run( ^^^^^^^^^^^^^^^ File "C:\Users\EDY\Desktop\达人采集助手-portable-v3\达人采集助手-portable-v3\app\runtime\python\Lib\subprocess.py", line 548, in run with Popen(*popenargs, **kwargs) as process: ^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "C:\Users\EDY\Desktop\达人采集助手-portable-v3\达人采集助手-portable-v3\app\runtime\python\Lib\subprocess.py", line 1026, in __init__ self._execute_child(args, executable, preexec_fn, close_fds, File "C:\Users\EDY\Desktop\达人采集助手-portable-v3\达人采集助手-portable-v3\app\runtime\python\Lib\subprocess.py", line 1538, in _execute_child hp, ht, pid, tid = _winapi.CreateProcess(executable, args, ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ FileNotFoundError: [WinError 2] 系统找不到指定的文件。
有只🐷仔摔进泥 主页采集失败:2026-09-17 16:16:08 MediaCrawler INFO (core.py:77) - [DouYinCrawler] 使用CDP模式启动浏览器 2026-09-17 16:16:08 MediaCrawler INFO (cdp_browser.py:152) - [CDPBrowserManager] Connecting to existing browser on port 9222... 2026-09-17 16:16:08 MediaCrawler INFO (cdp_browser.py:155) - [CDPBrowserManager] Make sure remote debugging is enabled in your browser: chrome://inspect/#remote-debugging 2026-09-17 16:16:08 MediaCrawler INFO (cdp_browser.py:163) - [CDPBrowserManager] Waiting up to 60s for browser CDP connection... 2026-09-17 16:16:08 MediaCrawler INFO (cdp_browser.py:237) - [CDPBrowserManager] CDP port 9222 is accessible 2026-09-17 16:16:09 MediaCrawler INFO (cdp_browser.py:301) - [CDPBrowserManager] Got browser WebSocket URL: ws://localhost:9222/devtools/browser/e796ab07-a99a-42fa-8efa-c7e137271037 2026-09-17 16:16:09 MediaCrawler INFO (cdp_browser.py:329) - [CDPBrowserManager] Connecting to existing browser via discovered CDP (attempt 1/3): ws://localhost:9222/devtools/browser/e796ab07-a99a-42fa-8efa-c7e137271037 2026-09-17 16:16:09 MediaCrawler INFO (cdp_browser.py:333) - [CDPBrowserManager] If Chrome asks whether to allow remote debugging, accept it in the already logged-in browser window 2026-09-17 16:16:09 MediaCrawler INFO (cdp_browser.py:364) - [CDPBrowserManager] Successfully connected to browser 2026-09-17 16:16:09 MediaCrawler INFO (cdp_browser.py:365) - [CDPBrowserManager] Browser contexts count: 1 2026-09-17 16:16:09 MediaCrawler INFO (cdp_browser.py:390) - [CDPBrowserManager] Using existing browser context 2026-09-17 16:16:09 MediaCrawler INFO (cdp_browser.py:194) - [CDPBrowserManager] Successfully connected to existing browser 2026-09-17 16:16:09 MediaCrawler INFO (cdp_browser.py:422) - [CDPBrowserManager] Added anti-detection script: libs/stealth.min.js 2026-09-17 16:16:09 MediaCrawler INFO (core.py:450) - [DouYinCrawler] CDP浏览器信息: {'version': '152.0.7977.83', 'contexts_count': 1, 'debug_port': 9222, 'is_connected': True} 2026-09-17 16:16:11 MediaCrawler INFO (core.py:293) - [DouYinCrawler.get_creators_and_videos] Begin get douyin creators 2026-09-17 16:16:11 MediaCrawler INFO (core.py:294) - [DouYinCrawler.get_creators_and_videos] Parsing creator URLs... 2026-09-17 16:16:11 MediaCrawler INFO (core.py:339) - [DouYinCrawler.get_creators_and_videos] Creator concurrency: 2 2026-09-17 16:16:11 MediaCrawler INFO (core.py:301) - [DouYinCrawler.get_creators_and_videos] Parsed sec_user_id: MS4wLjABAAAAHfC77BDXPOuxyBk0zSObig0tfC5V1xjHEEH3T2kEMd4OD3ZFe_pMUDqsAj9P5n90 from MS4wLjABAAAAHfC77BDXPOuxyBk0zSObig0tfC5V1xjHEEH3T2kEMd4OD3ZFe_pMUDqsAj9P5n90 2026-09-17 16:16:11 MediaCrawler INFO (core.py:301) - [DouYinCrawler.get_creators_and_videos] Parsed sec_user_id: MS4wLjABAAAAhKV9O3uHtuxI2fpIyM970jZfWPpVAwVKM8rDmAJRSK-QbjvBjZPIkSXdz7PzehWh from MS4wLjABAAAAhKV9O3uHtuxI2fpIyM970jZfWPpVAwVKM8rDmAJRSK-QbjvBjZPIkSXdz7PzehWh 2026-09-17 16:16:11 MediaCrawler INFO (core.py:301) - [DouYinCrawler.get_creators_and_videos] Parsed sec_user_id: MS4wLjABAAAAJ3bK1EqCNdOvi_BQycwgSxMqM1bECeJcOn7WKzDnIn2Qp47ia7SFaZwSSEIHVY9b from MS4wLjABAAAAJ3bK1EqCNdOvi_BQycwgSxMqM1bECeJcOn7WKzDnIn2Qp47ia7SFaZwSSEIHVY9b 2026-09-17 16:16:11 MediaCrawler INFO (cdp_browser.py:490) - [CDPBrowserManager] Browser connection disconnected 2026-09-17 16:16:11 MediaCrawler INFO (cdp_browser.py:507) - [CDPBrowserManager] Connected to existing browser, skipping process cleanup 2026-09-17 16:16:11 MediaCrawler INFO (core.py:301) - [DouYinCrawler.get_creators_and_videos] Parsed sec_user_id: MS4wLjABAAAAr5oeZ6Qq-dxRZqUuMl5_km-5L7iQD73ATwXeOzR20wE from MS4wLjABAAAAr5oeZ6Qq-dxRZqUuMl5_km-5L7iQD73ATwXeOzR20wE 2026-09-17 16:16:11 MediaCrawler INFO (core.py:301) - [DouYinCrawler.get_creators_and_videos] Parsed sec_user_id: MS4wLjABAAAAVpXiRoVi3mPmcvg7BQh5cVQn_GTgSz1rWDs-w0vC_rwAjJhQebWSC5GlxJ8e9HpA from MS4wLjABAAAAVpXiRoVi3mPmcvg7BQh5cVQn_GTgSz1rWDs-w0vC_rwAjJhQebWSC5GlxJ8e9HpA Traceback (most recent call last): File "C:\Users\EDY\Desktop\达人采集助手-portable-v2\app\scripts\run-mediacrawler.py", line 21, in <module> runpy.run_path(os.path.join(crawler_root, "main.py"), run_name="__main__") File "<frozen runpy>", line 291, in run_path File "<frozen runpy>", line 98, in _run_module_code File "<frozen runpy>", line 88, in _run_code File "C:\Users\EDY\Desktop\达人采集助手-portable-v2\app\MediaCrawler-main\main.py", line 174, in <module> run(main, async_cleanup, cleanup_timeout_seconds=15.0, on_first_interrupt=_force_stop) File "C:\Users\EDY\Desktop\达人采集助手-portable-v2\app\MediaCrawler-main\tools\app_runner.py", line 109, in run asyncio.run(_runner()) File "C:\Users\EDY\Desktop\达人采集助手-portable-v2\app\runtime\python\Lib\asyncio\runners.py", line 190, in run return runner.run(main) ^^^^^^^^^^^^^^^^ File "C:\Users\EDY\Desktop\达人采集助手-portable-v2\app\runtime\python\Lib\asyncio\runners.py", line 118, in run return self._loop.run_until_complete(task) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "C:\Users\EDY\Desktop\达人采集助手-portable-v2\app\runtime\python\Lib\asyncio\base_events.py", line 654, in run_until_complete return future.result() ^^^^^^^^^^^^^^^ File "C:\Users\EDY\Desktop\达人采集助手-portable-v2\app\MediaCrawler-main\tools\app_runner.py", line 96, in _runner await app_main() File "C:\Users\EDY\Desktop\达人采集助手-portable-v2\app\MediaCrawler-main\main.py", line 114, in main await crawler.start() File "C:\Users\EDY\Desktop\达人采集助手-portable-v2\app\MediaCrawler-main\media_platform\douyin\core.py", line 141, in start await self.get_creators_and_videos() File "C:\Users\EDY\Desktop\达人采集助手-portable-v2\app\MediaCrawler-main\media_platform\douyin\core.py", line 342, in get_creators_and_videos creator_work_counts = await asyncio.gather( ^^^^^^^^^^^^^^^^^^^^^ File "C:\Users\EDY\Desktop\达人采集助手-portable-v2\app\MediaCrawler-main\media_platform\douyin\core.py", line 306, in fetch_one_creator creator_info: Dict = await self.dy_client.get_user_info(user_id) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "C:\Users\EDY\Desktop\达人采集助手-portable-v2\app\MediaCrawler-main\media_platform\douyin\client.py", line 319, in get_user_info return await self.get(uri, params) ^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "C:\Users\EDY\Desktop\达人采集助手-portable-v2\app\MediaCrawler-main\media_platform\douyin\client.py", line 141, in get await self.__process_req_params(uri, params, headers) File "C:\Users\EDY\Desktop\达人采集助手-portable-v2\app\MediaCrawler-main\media_platform\douyin\client.py", line 120, in __process_req_params a_bogus = await get_a_bogus(uri, query_string, post_data, headers["User-Agent"], self.playwright_page) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "C:\Users\EDY\Desktop\达人采集助手-portable-v2\app\MediaCrawler-main\media_platform\douyin\help.py", line 81, in get_a_bogus return get_a_bogus_from_js(url, params, user_agent) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "C:\Users\EDY\Desktop\达人采集助手-portable-v2\app\MediaCrawler-main\media_platform\douyin\help.py", line 100, in get_a_bogus_from_js result = subprocess.run( ^^^^^^^^^^^^^^^ File "C:\Users\EDY\Desktop\达人采集助手-portable-v2\app\runtime\python\Lib\subprocess.py", line 548, in run with Popen(*popenargs, **kwargs) as process: ^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "C:\Users\EDY\Desktop\达人采集助手-portable-v2\app\runtime\python\Lib\subprocess.py", line 1026, in __init__ self._execute_child(args, executable, preexec_fn, close_fds, File "C:\Users\EDY\Desktop\达人采集助手-portable-v2\app\runtime\python\Lib\subprocess.py", line 1538, in _execute_child hp, ht, pid, tid = _winapi.CreateProcess(executable, args, ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ FileNotFoundError: [WinError 2] 系统找不到指定的文件。
雷霆茄子 主页采集失败:2026-09-17 14:25:19 MediaCrawler INFO (core.py:77) - [DouYinCrawler] 使用CDP模式启动浏览器 2026-09-17 14:25:19 MediaCrawler INFO (cdp_browser.py:152) - [CDPBrowserManager] Connecting to existing browser on port 9222... 2026-09-17 14:25:19 MediaCrawler INFO (cdp_browser.py:155) - [CDPBrowserManager] Make sure remote debugging is enabled in your browser: chrome://inspect/#remote-debugging 2026-09-17 14:25:19 MediaCrawler INFO (cdp_browser.py:163) - [CDPBrowserManager] Waiting up to 60s for browser CDP connection... 2026-09-17 14:25:19 MediaCrawler INFO (cdp_browser.py:237) - [CDPBrowserManager] CDP port 9222 is accessible 2026-09-17 14:25:19 MediaCrawler INFO (cdp_browser.py:301) - [CDPBrowserManager] Got browser WebSocket URL: ws://localhost:9222/devtools/browser/dd177f4d-bf6e-46f8-95b1-c136a2211654 2026-09-17 14:25:19 MediaCrawler INFO (cdp_browser.py:329) - [CDPBrowserManager] Connecting to existing browser via discovered CDP (attempt 1/3): ws://localhost:9222/devtools/browser/dd177f4d-bf6e-46f8-95b1-c136a2211654 2026-09-17 14:25:19 MediaCrawler INFO (cdp_browser.py:333) - [CDPBrowserManager] If Chrome asks whether to allow remote debugging, accept it in the already logged-in browser window 2026-09-17 14:25:22 MediaCrawler INFO (cdp_browser.py:364) - [CDPBrowserManager] Successfully connected to browser 2026-09-17 14:25:22 MediaCrawler INFO (cdp_browser.py:365) - [CDPBrowserManager] Browser contexts count: 1 2026-09-17 14:25:22 MediaCrawler INFO (cdp_browser.py:390) - [CDPBrowserManager] Using existing browser context 2026-09-17 14:25:22 MediaCrawler INFO (cdp_browser.py:194) - [CDPBrowserManager] Successfully connected to existing browser 2026-09-17 14:25:25 MediaCrawler INFO (cdp_browser.py:422) - [CDPBrowserManager] Added anti-detection script: libs/stealth.min.js 2026-09-17 14:25:25 MediaCrawler INFO (core.py:450) - [DouYinCrawler] CDP浏览器信息: {'version': '152.0.7977.83', 'contexts_count': 1, 'debug_port': 9222, 'is_connected': True} 2026-09-17 14:25:27 MediaCrawler INFO (core.py:293) - [DouYinCrawler.get_creators_and_videos] Begin get douyin creators 2026-09-17 14:25:27 MediaCrawler INFO (core.py:294) - [DouYinCrawler.get_creators_and_videos] Parsing creator URLs... 2026-09-17 14:25:27 MediaCrawler INFO (core.py:339) - [DouYinCrawler.get_creators_and_videos] Creator concurrency: 2 2026-09-17 14:25:27 MediaCrawler INFO (core.py:301) - [DouYinCrawler.get_creators_and_videos] Parsed sec_user_id: MS4wLjABAAAAHJn1n52sPggn_QNyNxunPk2-0t-oiuFO6aK8nVcO3HjlMosy-t_Hp8EursruwaMt from MS4wLjABAAAAHJn1n52sPggn_QNyNxunPk2-0t-oiuFO6aK8nVcO3HjlMosy-t_Hp8EursruwaMt 2026-09-17 14:25:27 MediaCrawler INFO (core.py:301) - [DouYinCrawler.get_creators_and_videos] Parsed sec_user_id: MS4wLjABAAAAKpfsUujf9V9ojHgB4JtAnHIlGiWoUey3U5fBnaqXGBI from MS4wLjABAAAAKpfsUujf9V9ojHgB4JtAnHIlGiWoUey3U5fBnaqXGBI 2026-09-17 14:25:28 MediaCrawler INFO (core.py:301) - [DouYinCrawler.get_creators_and_videos] Parsed sec_user_id: MS4wLjABAAAAOiyWd0V2y5S3dHfv_2-WHSf8J8Pd5OUWltcmC80LUM-1KLMBvvOK1F8Jaf0IZfcQ from MS4wLjABAAAAOiyWd0V2y5S3dHfv_2-WHSf8J8Pd5OUWltcmC80LUM-1KLMBvvOK1F8Jaf0IZfcQ 2026-09-17 14:25:28 MediaCrawler INFO (cdp_browser.py:490) - [CDPBrowserManager] Browser connection disconnected 2026-09-17 14:25:28 MediaCrawler INFO (cdp_browser.py:507) - [CDPBrowserManager] Connected to existing browser, skipping process cleanup 2026-09-17 14:25:28 MediaCrawler INFO (core.py:301) - [DouYinCrawler.get_creators_and_videos] Parsed sec_user_id: MS4wLjABAAAApoTVRwtjRkH9-71u8STF4XVp2FmcWObNTDSXlYCdwyY from MS4wLjABAAAApoTVRwtjRkH9-71u8STF4XVp2FmcWObNTDSXlYCdwyY 2026-09-17 14:25:28 MediaCrawler INFO (core.py:301) - [DouYinCrawler.get_creators_and_videos] Parsed sec_user_id: MS4wLjABAAAASR13xAfkF1Z3qSKPHxfPCGHzgxdl-1qthC_cxOzDGpSDcGCao8NkVraM15mJk2K_ from MS4wLjABAAAASR13xAfkF1Z3qSKPHxfPCGHzgxdl-1qthC_cxOzDGpSDcGCao8NkVraM15mJk2K_ Traceback (most recent call last): File "C:\Users\EDY\Documents\流程\kol-crm-next\scripts\run-mediacrawler.py", line 21, in <module> runpy.run_path(os.path.join(crawler_root, "main.py"), run_name="__main__") File "<frozen runpy>", line 291, in run_path File "<frozen runpy>", line 98, in _run_module_code File "<frozen runpy>", line 88, in _run_code File "C:\Users\EDY\Desktop\达人采集助手-portable-v3\达人采集助手-portable-v3\app\MediaCrawler-main\main.py", line 174, in <module> run(main, async_cleanup, cleanup_timeout_seconds=15.0, on_first_interrupt=_force_stop) File "C:\Users\EDY\Desktop\达人采集助手-portable-v3\达人采集助手-portable-v3\app\MediaCrawler-main\tools\app_runner.py", line 109, in run asyncio.run(_runner()) File "C:\Users\EDY\Desktop\达人采集助手-portable-v3\达人采集助手-portable-v3\app\runtime\python\Lib\asyncio\runners.py", line 190, in run return runner.run(main) ^^^^^^^^^^^^^^^^ File "C:\Users\EDY\Desktop\达人采集助手-portable-v3\达人采集助手-portable-v3\app\runtime\python\Lib\asyncio\runners.py", line 118, in run return self._loop.run_until_complete(task) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "C:\Users\EDY\Desktop\达人采集助手-portable-v3\达人采集助手-portable-v3\app\runtime\python\Lib\asyncio\base_events.py", line 654, in run_until_complete return future.result() ^^^^^^^^^^^^^^^ File "C:\Users\EDY\Desktop\达人采集助手-portable-v3\达人采集助手-portable-v3\app\MediaCrawler-main\tools\app_runner.py", line 96, in _runner await app_main() File "C:\Users\EDY\Desktop\达人采集助手-portable-v3\达人采集助手-portable-v3\app\MediaCrawler-main\main.py", line 114, in main await crawler.start() File "C:\Users\EDY\Desktop\达人采集助手-portable-v3\达人采集助手-portable-v3\app\MediaCrawler-main\media_platform\douyin\core.py", line 141, in start await self.get_creators_and_videos() File "C:\Users\EDY\Desktop\达人采集助手-portable-v3\达人采集助手-portable-v3\app\MediaCrawler-main\media_platform\douyin\core.py", line 342, in get_creators_and_videos creator_work_counts = await asyncio.gather( ^^^^^^^^^^^^^^^^^^^^^ File "C:\Users\EDY\Desktop\达人采集助手-portable-v3\达人采集助手-portable-v3\app\MediaCrawler-main\media_platform\douyin\core.py", line 306, in fetch_one_creator creator_info: Dict = await self.dy_client.get_user_info(user_id) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "C:\Users\EDY\Desktop\达人采集助手-portable-v3\达人采集助手-portable-v3\app\MediaCrawler-main\media_platform\douyin\client.py", line 319, in get_user_info return await self.get(uri, params) ^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "C:\Users\EDY\Desktop\达人采集助手-portable-v3\达人采集助手-portable-v3\app\MediaCrawler-main\media_platform\douyin\client.py", line 141, in get await self.__process_req_params(uri, params, headers) File "C:\Users\EDY\Desktop\达人采集助手-portable-v3\达人采集助手-portable-v3\app\MediaCrawler-main\media_platform\douyin\client.py", line 120, in __process_req_params a_bogus = await get_a_bogus(uri, query_string, post_data, headers["User-Agent"], self.playwright_page) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "C:\Users\EDY\Desktop\达人采集助手-portable-v3\达人采集助手-portable-v3\app\MediaCrawler-main\media_platform\douyin\help.py", line 81, in get_a_bogus return get_a_bogus_from_js(url, params, user_agent) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "C:\Users\EDY\Desktop\达人采集助手-portable-v3\达人采集助手-portable-v3\app\MediaCrawler-main\media_platform\douyin\help.py", line 100, in get_a_bogus_from_js result = subprocess.run( ^^^^^^^^^^^^^^^ File "C:\Users\EDY\Desktop\达人采集助手-portable-v3\达人采集助手-portable-v3\app\runtime\python\Lib\subprocess.py", line 548, in run with Popen(*popenargs, **kwargs) as process: ^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "C:\Users\EDY\Desktop\达人采集助手-portable-v3\达人采集助手-portable-v3\app\runtime\python\Lib\subprocess.py", line 1026, in __init__ self._execute_child(args, executable, preexec_fn, close_fds, File "C:\Users\EDY\Desktop\达人采集助手-portable-v3\达人采集助手-portable-v3\app\runtime\python\Lib\subprocess.py", line 1538, in _execute_child hp, ht, pid, tid = _winapi.CreateProcess(executable, args, ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ FileNotFoundError: [WinError 2] 系统找不到指定的文件。
爱吃巧克力🍫 主页采集失败:MediaCrawler 主页采集超时(90 秒)
孙师傅的职业盲盒 主页采集失败:2026-09-17 16:15:10 MediaCrawler INFO (core.py:77) - [DouYinCrawler] 使用CDP模式启动浏览器 2026-09-17 16:15:10 MediaCrawler INFO (cdp_browser.py:152) - [CDPBrowserManager] Connecting to existing browser on port 9222... 2026-09-17 16:15:10 MediaCrawler INFO (cdp_browser.py:155) - [CDPBrowserManager] Make sure remote debugging is enabled in your browser: chrome://inspect/#remote-debugging 2026-09-17 16:15:10 MediaCrawler INFO (cdp_browser.py:163) - [CDPBrowserManager] Waiting up to 60s for browser CDP connection... 2026-09-17 16:15:10 MediaCrawler INFO (cdp_browser.py:237) - [CDPBrowserManager] CDP port 9222 is accessible 2026-09-17 16:15:10 MediaCrawler INFO (cdp_browser.py:301) - [CDPBrowserManager] Got browser WebSocket URL: ws://localhost:9222/devtools/browser/de0c60f3-2b1a-4fcc-adf5-d6c8e827445b 2026-09-17 16:15:10 MediaCrawler INFO (cdp_browser.py:329) - [CDPBrowserManager] Connecting to existing browser via discovered CDP (attempt 1/3): ws://localhost:9222/devtools/browser/de0c60f3-2b1a-4fcc-adf5-d6c8e827445b 2026-09-17 16:15:10 MediaCrawler INFO (cdp_browser.py:333) - [CDPBrowserManager] If Chrome asks whether to allow remote debugging, accept it in the already logged-in browser window 2026-09-17 16:15:11 MediaCrawler INFO (cdp_browser.py:364) - [CDPBrowserManager] Successfully connected to browser 2026-09-17 16:15:11 MediaCrawler INFO (cdp_browser.py:365) - [CDPBrowserManager] Browser contexts count: 1 2026-09-17 16:15:11 MediaCrawler INFO (cdp_browser.py:390) - [CDPBrowserManager] Using existing browser context 2026-09-17 16:15:11 MediaCrawler INFO (cdp_browser.py:194) - [CDPBrowserManager] Successfully connected to existing browser 2026-09-17 16:15:11 MediaCrawler INFO (cdp_browser.py:422) - [CDPBrowserManager] Added anti-detection script: libs/stealth.min.js 2026-09-17 16:15:11 MediaCrawler INFO (core.py:450) - [DouYinCrawler] CDP浏览器信息: {'version': '152.0.7977.83', 'contexts_count': 1, 'debug_port': 9222, 'is_connected': True} 2026-09-17 16:15:13 MediaCrawler INFO (core.py:293) - [DouYinCrawler.get_creators_and_videos] Begin get douyin creators 2026-09-17 16:15:13 MediaCrawler INFO (core.py:294) - [DouYinCrawler.get_creators_and_videos] Parsing creator URLs... 2026-09-17 16:15:13 MediaCrawler INFO (core.py:339) - [DouYinCrawler.get_creators_and_videos] Creator concurrency: 2 2026-09-17 16:15:13 MediaCrawler INFO (core.py:301) - [DouYinCrawler.get_creators_and_videos] Parsed sec_user_id: MS4wLjABAAAAjepLlzNdaOp_DUwK3JDAqN0lq-uF20KK8-z0LJWlp1xEWQtVRdeVLbuvSTUX8LFZ from MS4wLjABAAAAjepLlzNdaOp_DUwK3JDAqN0lq-uF20KK8-z0LJWlp1xEWQtVRdeVLbuvSTUX8LFZ 2026-09-17 16:15:13 MediaCrawler INFO (core.py:301) - [DouYinCrawler.get_creators_and_videos] Parsed sec_user_id: MS4wLjABAAAAwAqR3qxA7AgpSCqEUVz7VJsMos2x6uFNNwQ3bFO3dUk from MS4wLjABAAAAwAqR3qxA7AgpSCqEUVz7VJsMos2x6uFNNwQ3bFO3dUk 2026-09-17 16:15:13 MediaCrawler INFO (cdp_browser.py:490) - [CDPBrowserManager] Browser connection disconnected 2026-09-17 16:15:13 MediaCrawler INFO (cdp_browser.py:507) - [CDPBrowserManager] Connected to existing browser, skipping process cleanup Traceback (most recent call last): File "C:\Users\EDY\Desktop\达人采集助手-portable-v2\app\scripts\run-mediacrawler.py", line 21, in <module> runpy.run_path(os.path.join(crawler_root, "main.py"), run_name="__main__") File "<frozen runpy>", line 291, in run_path File "<frozen runpy>", line 98, in _run_module_code File "<frozen runpy>", line 88, in _run_code File "C:\Users\EDY\Desktop\达人采集助手-portable-v2\app\MediaCrawler-main\main.py", line 174, in <module> run(main, async_cleanup, cleanup_timeout_seconds=15.0, on_first_interrupt=_force_stop) File "C:\Users\EDY\Desktop\达人采集助手-portable-v2\app\MediaCrawler-main\tools\app_runner.py", line 109, in run asyncio.run(_runner()) File "C:\Users\EDY\Desktop\达人采集助手-portable-v2\app\runtime\python\Lib\asyncio\runners.py", line 190, in run return runner.run(main) ^^^^^^^^^^^^^^^^ File "C:\Users\EDY\Desktop\达人采集助手-portable-v2\app\runtime\python\Lib\asyncio\runners.py", line 118, in run return self._loop.run_until_complete(task) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "C:\Users\EDY\Desktop\达人采集助手-portable-v2\app\runtime\python\Lib\asyncio\base_events.py", line 654, in run_until_complete return future.result() ^^^^^^^^^^^^^^^ File "C:\Users\EDY\Desktop\达人采集助手-portable-v2\app\MediaCrawler-main\tools\app_runner.py", line 96, in _runner await app_main() File "C:\Users\EDY\Desktop\达人采集助手-portable-v2\app\MediaCrawler-main\main.py", line 114, in main await crawler.start() File "C:\Users\EDY\Desktop\达人采集助手-portable-v2\app\MediaCrawler-main\media_platform\douyin\core.py", line 141, in start await self.get_creators_and_videos() File "C:\Users\EDY\Desktop\达人采集助手-portable-v2\app\MediaCrawler-main\media_platform\douyin\core.py", line 342, in get_creators_and_videos creator_work_counts = await asyncio.gather( ^^^^^^^^^^^^^^^^^^^^^ File "C:\Users\EDY\Desktop\达人采集助手-portable-v2\app\MediaCrawler-main\media_platform\douyin\core.py", line 306, in fetch_one_creator creator_info: Dict = await self.dy_client.get_user_info(user_id) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "C:\Users\EDY\Desktop\达人采集助手-portable-v2\app\MediaCrawler-main\media_platform\douyin\client.py", line 319, in get_user_info return await self.get(uri, params) ^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "C:\Users\EDY\Desktop\达人采集助手-portable-v2\app\MediaCrawler-main\media_platform\douyin\client.py", line 141, in get await self.__process_req_params(uri, params, headers) File "C:\Users\EDY\Desktop\达人采集助手-portable-v2\app\MediaCrawler-main\media_platform\douyin\client.py", line 120, in __process_req_params a_bogus = await get_a_bogus(uri, query_string, post_data, headers["User-Agent"], self.playwright_page) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "C:\Users\EDY\Desktop\达人采集助手-portable-v2\app\MediaCrawler-main\media_platform\douyin\help.py", line 81, in get_a_bogus return get_a_bogus_from_js(url, params, user_agent) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "C:\Users\EDY\Desktop\达人采集助手-portable-v2\app\MediaCrawler-main\media_platform\douyin\help.py", line 100, in get_a_bogus_from_js result = subprocess.run( ^^^^^^^^^^^^^^^ File "C:\Users\EDY\Desktop\达人采集助手-portable-v2\app\runtime\python\Lib\subprocess.py", line 548, in run with Popen(*popenargs, **kwargs) as process: ^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "C:\Users\EDY\Desktop\达人采集助手-portable-v2\app\runtime\python\Lib\subprocess.py", line 1026, in __init__ self._execute_child(args, executable, preexec_fn, close_fds, File "C:\Users\EDY\Desktop\达人采集助手-portable-v2\app\runtime\python\Lib\subprocess.py", line 1538, in _execute_child hp, ht, pid, tid = _winapi.CreateProcess(executable, args, ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ FileNotFoundError: [WinError 2] 系统找不到指定的文件。
说句不好吃der 主页采集失败:2026-09-17 16:17:49 MediaCrawler INFO (core.py:77) - [DouYinCrawler] 使用CDP模式启动浏览器 2026-09-17 16:17:49 MediaCrawler INFO (cdp_browser.py:152) - [CDPBrowserManager] Connecting to existing browser on port 9222... 2026-09-17 16:17:49 MediaCrawler INFO (cdp_browser.py:155) - [CDPBrowserManager] Make sure remote debugging is enabled in your browser: chrome://inspect/#remote-debugging 2026-09-17 16:17:49 MediaCrawler INFO (cdp_browser.py:163) - [CDPBrowserManager] Waiting up to 60s for browser CDP connection... 2026-09-17 16:17:49 MediaCrawler INFO (cdp_browser.py:237) - [CDPBrowserManager] CDP port 9222 is accessible 2026-09-17 16:17:50 MediaCrawler INFO (cdp_browser.py:301) - [CDPBrowserManager] Got browser WebSocket URL: ws://localhost:9222/devtools/browser/b6166241-0447-4b83-98ca-78fdbeb71daf 2026-09-17 16:17:50 MediaCrawler INFO (cdp_browser.py:329) - [CDPBrowserManager] Connecting to existing browser via discovered CDP (attempt 1/3): ws://localhost:9222/devtools/browser/b6166241-0447-4b83-98ca-78fdbeb71daf 2026-09-17 16:17:50 MediaCrawler INFO (cdp_browser.py:333) - [CDPBrowserManager] If Chrome asks whether to allow remote debugging, accept it in the already logged-in browser window 2026-09-17 16:17:50 MediaCrawler INFO (cdp_browser.py:364) - [CDPBrowserManager] Successfully connected to browser 2026-09-17 16:17:50 MediaCrawler INFO (cdp_browser.py:365) - [CDPBrowserManager] Browser contexts count: 1 2026-09-17 16:17:50 MediaCrawler INFO (cdp_browser.py:390) - [CDPBrowserManager] Using existing browser context 2026-09-17 16:17:50 MediaCrawler INFO (cdp_browser.py:194) - [CDPBrowserManager] Successfully connected to existing browser 2026-09-17 16:17:51 MediaCrawler INFO (cdp_browser.py:422) - [CDPBrowserManager] Added anti-detection script: libs/stealth.min.js 2026-09-17 16:17:51 MediaCrawler INFO (core.py:450) - [DouYinCrawler] CDP浏览器信息: {'version': '152.0.7977.83', 'contexts_count': 1, 'debug_port': 9222, 'is_connected': True} 2026-09-17 16:17:54 MediaCrawler INFO (core.py:293) - [DouYinCrawler.get_creators_and_videos] Begin get douyin creators 2026-09-17 16:17:54 MediaCrawler INFO (core.py:294) - [DouYinCrawler.get_creators_and_videos] Parsing creator URLs... 2026-09-17 16:17:54 MediaCrawler INFO (core.py:339) - [DouYinCrawler.get_creators_and_videos] Creator concurrency: 2 2026-09-17 16:17:54 MediaCrawler INFO (core.py:301) - [DouYinCrawler.get_creators_and_videos] Parsed sec_user_id: MS4wLjABAAAA18r2rGm6-Fy4pWOBsuMKjiyaL00HVb8OXByyIJQefEjT2SSeRkCjNE9sUUiD5-QW from MS4wLjABAAAA18r2rGm6-Fy4pWOBsuMKjiyaL00HVb8OXByyIJQefEjT2SSeRkCjNE9sUUiD5-QW 2026-09-17 16:17:54 MediaCrawler INFO (core.py:301) - [DouYinCrawler.get_creators_and_videos] Parsed sec_user_id: MS4wLjABAAAA6yTSKg65reefWJZ1z9Ru9Fp2WheNP5ASIWlxJs4IYu3ZuatbcbNtImRNFQsZQkbV from MS4wLjABAAAA6yTSKg65reefWJZ1z9Ru9Fp2WheNP5ASIWlxJs4IYu3ZuatbcbNtImRNFQsZQkbV 2026-09-17 16:17:54 MediaCrawler INFO (core.py:301) - [DouYinCrawler.get_creators_and_videos] Parsed sec_user_id: MS4wLjABAAAAp2_PotlQmQPekOddQvZmlyk6ViEmyjlEwWyJqX9piNhSSD9e8LQHfXWneOZFZvPX from MS4wLjABAAAAp2_PotlQmQPekOddQvZmlyk6ViEmyjlEwWyJqX9piNhSSD9e8LQHfXWneOZFZvPX 2026-09-17 16:17:54 MediaCrawler INFO (cdp_browser.py:490) - [CDPBrowserManager] Browser connection disconnected 2026-09-17 16:17:54 MediaCrawler INFO (cdp_browser.py:507) - [CDPBrowserManager] Connected to existing browser, skipping process cleanup 2026-09-17 16:17:54 MediaCrawler INFO (core.py:301) - [DouYinCrawler.get_creators_and_videos] Parsed sec_user_id: MS4wLjABAAAAtGmbhJG4JeO_tTYOltQxkIrgfMmzZaTuVQeofYJ_V0M from MS4wLjABAAAAtGmbhJG4JeO_tTYOltQxkIrgfMmzZaTuVQeofYJ_V0M Traceback (most recent call last): File "C:\Users\EDY\Desktop\达人采集助手-portable-v2\app\scripts\run-mediacrawler.py", line 21, in <module> runpy.run_path(os.path.join(crawler_root, "main.py"), run_name="__main__") File "<frozen runpy>", line 291, in run_path File "<frozen runpy>", line 98, in _run_module_code File "<frozen runpy>", line 88, in _run_code File "C:\Users\EDY\Desktop\达人采集助手-portable-v2\app\MediaCrawler-main\main.py", line 174, in <module> run(main, async_cleanup, cleanup_timeout_seconds=15.0, on_first_interrupt=_force_stop) File "C:\Users\EDY\Desktop\达人采集助手-portable-v2\app\MediaCrawler-main\tools\app_runner.py", line 109, in run asyncio.run(_runner()) File "C:\Users\EDY\Desktop\达人采集助手-portable-v2\app\runtime\python\Lib\asyncio\runners.py", line 190, in run return runner.run(main) ^^^^^^^^^^^^^^^^ File "C:\Users\EDY\Desktop\达人采集助手-portable-v2\app\runtime\python\Lib\asyncio\runners.py", line 118, in run return self._loop.run_until_complete(task) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "C:\Users\EDY\Desktop\达人采集助手-portable-v2\app\runtime\python\Lib\asyncio\base_events.py", line 654, in run_until_complete return future.result() ^^^^^^^^^^^^^^^ File "C:\Users\EDY\Desktop\达人采集助手-portable-v2\app\MediaCrawler-main\tools\app_runner.py", line 96, in _runner await app_main() File "C:\Users\EDY\Desktop\达人采集助手-portable-v2\app\MediaCrawler-main\main.py", line 114, in main await crawler.start() File "C:\Users\EDY\Desktop\达人采集助手-portable-v2\app\MediaCrawler-main\media_platform\douyin\core.py", line 141, in start await self.get_creators_and_videos() File "C:\Users\EDY\Desktop\达人采集助手-portable-v2\app\MediaCrawler-main\media_platform\douyin\core.py", line 342, in get_creators_and_videos creator_work_counts = await asyncio.gather( ^^^^^^^^^^^^^^^^^^^^^ File "C:\Users\EDY\Desktop\达人采集助手-portable-v2\app\MediaCrawler-main\media_platform\douyin\core.py", line 306, in fetch_one_creator creator_info: Dict = await self.dy_client.get_user_info(user_id) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "C:\Users\EDY\Desktop\达人采集助手-portable-v2\app\MediaCrawler-main\media_platform\douyin\client.py", line 319, in get_user_info return await self.get(uri, params) ^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "C:\Users\EDY\Desktop\达人采集助手-portable-v2\app\MediaCrawler-main\media_platform\douyin\client.py", line 141, in get await self.__process_req_params(uri, params, headers) File "C:\Users\EDY\Desktop\达人采集助手-portable-v2\app\MediaCrawler-main\media_platform\douyin\client.py", line 120, in __process_req_params a_bogus = await get_a_bogus(uri, query_string, post_data, headers["User-Agent"], self.playwright_page) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "C:\Users\EDY\Desktop\达人采集助手-portable-v2\app\MediaCrawler-main\media_platform\douyin\help.py", line 81, in get_a_bogus return get_a_bogus_from_js(url, params, user_agent) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "C:\Users\EDY\Desktop\达人采集助手-portable-v2\app\MediaCrawler-main\media_platform\douyin\help.py", line 100, in get_a_bogus_from_js result = subprocess.run( ^^^^^^^^^^^^^^^ File "C:\Users\EDY\Desktop\达人采集助手-portable-v2\app\runtime\python\Lib\subprocess.py", line 548, in run with Popen(*popenargs, **kwargs) as process: ^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "C:\Users\EDY\Desktop\达人采集助手-portable-v2\app\runtime\python\Lib\subprocess.py", line 1026, in __init__ self._execute_child(args, executable, preexec_fn, close_fds, File "C:\Users\EDY\Desktop\达人采集助手-portable-v2\app\runtime\python\Lib\subprocess.py", line 1538, in _execute_child hp, ht, pid, tid = _winapi.CreateProcess(executable, args, ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ FileNotFoundError: [WinError 2] 系统找不到指定的文件。