下载微信公众号文章中的视频、音频和音乐卡片。适用于:保存一个或多个视频、多个音频/音乐;解决微信‘环境异常/去验证’拦截;通过可见 Chrome + 人工验证 + 远程调试获取真实媒体地址,自动下载、提取标题、重命名并整理输出。优先使用可见 Chrome + 人工验证 +远程调试。
仅在用户有权访问和保存目标媒体时使用。
不要和微信反爬硬碰硬。最稳的成功路径是:
优先用户级安装,不要求 sudo。
需要:
playwrightyt-dlp(可选;有时直接 HTTP 下载更稳)推荐命令:
bash
python3 -m pip install --user playwright yt-dlp
让用户执行:
bash
google-chrome --remote-debugging-port=9222 --user-data-dir=/tmp/openclaw-wechat-debug
然后让用户:
使用:
scripts/capture_wechat_media.py做法:
http://127.0.0.1:9222/json/versionwebSocketDebuggerUrl若只抓到视频没抓到音频:
mpvideo.qpic.cn 直链https://res.wx.qq.com/voice/getvoice?mediaid=<voice_encode_fileid>注意:
yt-dlp 可能卡收尾;这时直接用 Python HTTP 流式下载反而更稳。从文章 HTML 中提取:
<mp-common-mpaudio ... name="..." voice_encode_fileid="...">按文章顺序输出成:
00. <视频标题>.mp401. <音频标题>.mp302. <音频标题>.mp3.part、乱码副本、抓取脚本输出connect_over_cdp('http://127.0.0.1:9222') 返回 400,不要死磕;先取 /json/version 里的 websocket 地址再连接。scripts/capture_wechat_media.py:连接 Chrome 调试端口,抓取视频/音频请求与页面 HTMLscripts/download_wechat_media.py:下载视频和音频,并根据文章内容重命名references/reusable-workflow.md:可复用操作清单与故障处理