diff --git a/docs/superpowers/specs/2026-05-06-douyin-recommendation-crawling-design.md b/docs/superpowers/specs/2026-05-06-douyin-recommendation-crawling-design.md index 44bcdb0..3a5ac01 100644 --- a/docs/superpowers/specs/2026-05-06-douyin-recommendation-crawling-design.md +++ b/docs/superpowers/specs/2026-05-06-douyin-recommendation-crawling-design.md @@ -61,12 +61,12 @@ RECOMMENDATION_URL_PATTERN = re.compile( - `browser_port`: 浏览器调试端口(默认9223) **行为:** -1. 打开或切换到推荐流页面 -2. 启动监听,目标接口:`web/aweme/post/` 或推荐流专用接口 +1. 通过 `page.get("https://www.douyin.com/")` 打开推荐流页面(复用现有页面打开逻辑,不切换标签页) +2. 启动监听,目标接口:`web/aweme/post/`(推荐流与博主页共用此接口) 3. 循环直到收集够 `max_videos` 条或无法继续加载: - 等待接口响应 - 解析视频列表,提取:标题、视频ID、视频URL、博主信息 - - 过滤已下载(去重) + - 过滤已下载(按 `video_id` 去重,使用 `seen_ids: set[str]` 集合) - 下载视频 - 向下滚动加载更多 4. 返回实际下载数量 @@ -110,11 +110,11 @@ RECOMMENDATION_URL_PATTERN = re.compile( # 零参数,自动识别当前页面 ./.venv/bin/python Douyin.py -# 显式指定推荐流(可选) -./.venv/bin/python Douyin.py "https://www.douyin.com/" - -# 自定义抓取数量 +# 自定义抓取数量(仅对推荐流有效) ./.venv/bin/python Douyin.py --max-videos 30 + +# 显式传入URL时,--max-videos 不适用(博主页和单视频页忽略此参数) +./.venv/bin/python Douyin.py "https://www.douyin.com/user/xxx" ``` ### 7. 错误处理