这个文章需要有一点技术的人才能折腾,否则看不明白。小白如果想下载视频号的视频,可以加机器人微信进行下载,内测阶段可能不稳定。wzh25143
上个月折腾了一阵子微信HOOK监测公众号发布这玩意,搞了好几天完善好了。一开始用一个比较少人用的py的hook,结果代码写好自己微信号才挂了2天,就被腾讯警告了,说我外挂。
后面继续折腾,换成了E小天那玩意,相当稳定,只是要付费13一个月。
后面还是折腾,就搞了一款软注的Hook,安全性很高,只是功能少。但是消息发送监测基本都有。
下面看大概流程:
一、首先视频号下载的话,腾讯是加密的,目前通用方法都是抓包,然后下载加密的视频文件,在本地解密视频文件。(这个方法工具很多哈,自己搜)
二、后面还发现一种个人号,你转发视频给它,它会回复你真正的下载链接。后面针对这个,折腾了大半天。
这个方案要满足一个条件,就是你要有hook的机器人,获取到微信聊天内容里面视频号的两个id,拿到这两个id之后,才可以通过接口解密出真实的视频地址。
hook的机器人用的这个https://github.com/jwping/wxbot,是一个群友介绍的,后面看了下比较简单,就直接拿过来挂了一周,也比较稳定,估计是软注的原因,没有注入dll所以安全一点。
机器人用的http通讯,本地python运行个http服务器接收机器人post过来的数据进行处理,处理完了之后,再给机器人接口post过去需要回复的内容就可以。
中间处理的过程,就把视频解析接口加进去就OK了。
步骤一:
下载wxbot机器人,然后在机器人bin目录下新建一个wxbot.json的配置文件,具体看机器人文档。文件里面写上通用的信息回调地址
然后直接运行wxbot-sidecar.exe,只会会弹出一个cmd提示8080端口运行成功
这个窗口要一直打开不要关闭,这样代表已经回调成功。general-msg的消息都会post过去对应的接口8000/videos这里。这个接口是本地python运行的一个http接口用于接收数据并处理然后做出相应动作的。这个接口可以是远程的,具体看机器人文档。这里不多说。
然后python里面用到fastapi,这个不用多说了吧。
拿到objectId跟objectNonceId之后,通过接口拿到真实的下载地址。
具体接口的话这里不便于公布,不再多叙述,想了解的可以加我微信一起探讨。
最终效果实现如下:
转发视频号给机器人,机器人自动回复你标题,跟下载链接。这个链接直接去外部浏览器就可以播放跟下载了。