python最新视频号下载方法
不言仙声最新视频号下载的方法因为涉及到抓包,以及对链接的修改操作,抓包还好,修改有的人觉得很麻烦,刚好懂一点python,再讯飞星火AI的帮助下完成了以下代码,感谢星火AI~
脚本的总体思路就是把20302换成20304,这一步直接影响到视频下载的最终结果,然后是普通视频和高清视频之间的不同,通过保留url中的&encfilekey和&token,删掉其它的&xxx来实现。
如果想直接下载脚本可以公众号下载
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42
| import requests from urllib.parse import parse_qs, urlencode, urlparse, urlunparse from datetime import datetime print('########## _ ##########') print('欢迎关注微信公众号:软件仙声') print('免费去水印短视频下载小程序:我要本地看\n') print('PS:') print('此软件不能单独使用,请先使用其他抓包软件获取视频号链接') print('将抓包到链接链接粘贴到此,即可将视频下载到本程序所在目录\n ') while True: url = input('请输入链接(输入 q 退出):') if url == 'q': break else: ###先通过替换,把复杂的链接转成高清视频的链接 parsed_url = urlparse(url) query = parse_qs(parsed_url.query) encfilekey = query.get('encfilekey', [ ''])[0] token = query.get('token', [ ''])[0] new_query = { 'encfilekey': encfilekey, 'token': token} new_query_str = urlencode(new_query) new_parsed_url = parsed_url._replace(query=new_query_str) new_url = urlunparse(new_parsed_url) ###再把20302替换成20304,这一步为重中之重 new_url = new_url.replace('20302', '20304') response = requests.get(new_url, stream=True, verify=True) ###以日期时间为名称创建文件 current_time = datetime.now().strftime('%Y%m%d%H%M%S') filename = current_time + '.MP4' print('\n***文件名***:' + filename + '\n') ###把视频写入文件 with open(filename, 'wb') as file: for chunk in response.iter_content(chunk_size=8192): if chunk: file.write(chunk) else: print('哎哟,下载出错了') file.close()
|