Install
openclaw skills install @huangm199/huangm-doubao-media豆包网页端媒体提取与抓包。用于:通过浏览器 Cookie 调用豆包 chat/completion、抓取 SSE 回复、提取和下载图片/视频资产、监控豆包网页生成流程并保存最终媒体 URL 与文件。适用于“继续研究豆包 skill”“把豆包生成的图片/视频拿到”“抓豆包网页请求/媒体资源”“提取豆包生成结果”等场景。
openclaw skills install @huangm199/huangm-doubao-media把这个 skill 当成两条并行路线:
chat/completion,适合验证 prompt、拿文本、顺便尝试从 SSE 里提取媒体 URL。scripts/doubao_api.js:刷新 Cookie、验证文本聊天链路scripts/doubao_media_api.js:调用 chat/completion,提取并下载图片/视频资产scripts/capture_doubao_media.js:监听浏览器网络流量,抓最终媒体 URL,适合视频排查本地工作区保留了 scripts/legacy/ 作为逆向参考,但公开发布版本不包含这些历史文件。
最省事的一条命令:
npm run ready
或直接:
node doubao_api.js ready
它会自动完成:
available / unavailable需要手动拆开排查时,再用:
npm run check-session
npm run login-if-needed
npm run verify-chat
逻辑是:
check-session:检查本地 ~/.doubao_chat_session.json 是否存在且仍可用login-if-needed:如果 session 失效,则先尝试直接抓当前浏览器 Cookie;若仍不可用,会自动打开 https://www.doubao.com/ 并等待你完成登录,然后刷新本地 sessionverify-chat:验证 Cookie/API 链路是否正常默认等待登录约 120 秒。也可用:
node doubao_api.js login-if-needed --timeout-ms 180000
node doubao_media_api.js chat "生成一张赛博朋克老虎头像"
node doubao_media_api.js chat "生成一张赛博朋克老虎头像" --download --output ./captures
npm run extract-media
输出里重点看:
assets[].bestUrl:当前最推荐直接下载的链接assets[].variants:同一素材的其他预览/水印/原图变体download.manifestPath:批量下载后的清单文件如果返回 JSON 中带 assets / mediaUrls,优先走这条,最省事。
node capture_doubao_media.js monitor --download --output ./captures
npm run capture-media
然后在已登录的浏览器里实际操作豆包:生成图片、生成视频、打开结果页、点击预览/播放/下载。
脚本会:
.jsonl 清单、summary.txt,以及筛选后的 *-curated.json适合视频链路排查:如果豆包视频不是直接在 API SSE 里给出下载地址,通常也会在网页后续请求里出现 mp4、webm、m3u8、poster、cover、play_addr 等线索。
豆包网页参数、字段名、资源域名都可能变化,所以:
如果用户要“最终把豆包生成的图片和视频都拿到”,就按这个顺序推进:
login/chatdoubao_media_api.js 看 SSE 里是否已暴露素材 URLcapture_doubao_media.js 监听真实生成过程18800