文 | 某某白米饭
来源:Python 技术「ID: pythonall」
微信公众号可以发视频了,但是这个视频似乎没有直接能下载到本地的功能,小编就写一个 Python 小脚本将视频下载到本地。
分析
将公众号文章在默认的浏览器中打开
浏览器中的 url 才是我们最需要的
在 F12 控制面板的网络面板找到视频的播放地址,这个地址隐藏的有点深。找到一个 https://mp.weixin.qq/mp/videoplayer?action=get_mp_video_play_url&preview=0&__biz=MzU0NjAxMzAyMQ==&mid=2247546485&idx=1&vid=wxv_2319653037964951553&uin=&key=&pass_ticket=&wxtoken=777&devicetype=&clientversion=&__biz=MzU0NjAxMzAyMQ%3D%3D&appmsg_token=&x5=0&f=json
的 url 返回值中带有 .mp4
的 url。
下面是他的返回值。
这时就简单了,我们只要分析 https://mp.weixin.qq/mp/videoplayer
url 就可以了。可以看到这里的 mid、vid、_biz 都是需要修改的,这些内容在文章中就能找到。
分析完了链接,下面就开始写代码:
import requests,re
url = 'https://mp.weixin.qq/s/C6P5RwIejmUrnovom3lZFg'
result = requests.get(url).text
biz = re.search(r'__biz=(.*?)&',result)[1]
mid = re.search(r'mid=(.*?)&',result)[1]
vid = re.search(r'wxv_(.*?)\"',result)[0].replace('\"', '')
video_url = f'https://mp.weixin.qq/mp/videoplayer?action=get_mp_video_play_url&preview=0&__biz={biz}&mid={mid}&idx=1&vid={vid}&uin=&key=&pass_ticket=&wxtoken=777&devicetype=&clientversion=&__biz={biz}&appmsg_token=&x5=0&f=json'
url_info = requests.get(video_url).json()['url_info'][0]['url']
resp = requests.get(url_info, stream=True)
with open('day10', 'wb') as f:
f.write(resp.content)
print('视频下载完成')
总结
公众号的视频下载还是挺简单的。大家学会了吗?
PS:公号内回复「Python」即可进入Python 新手学习交流群,一起 100 天计划!
老规矩,兄弟们还记得么,右下角的 “在看” 点一下,如果感觉文章内容不错的话,记得分享朋友圈让更多的人知道!
【代码获取方式】
识别文末二维码,回复:某某白米饭
更多推荐
微信公众号里的视频下载
发布评论