吾爱破解 - 52pojie.cn

 找回密码
 注册[Register]

QQ登录

只需一步,快速开始

查看: 22589|回复: 488
上一主题 下一主题
收起左侧

[Python 原创] 微信视频号下载器 v1.0(2023.10.16已失效)

    [复制链接]
跳转到指定楼层
楼主
我真的爱发明 发表于 2023-8-18 16:42 回帖奖励
本帖最后由 我真的爱发明 于 2023-10-16 12:42 编辑

前言

  • 不得不说,微信视频号的下载真的是一个老大难问题,每隔一段时间,之前的方法总会失效,然后又需要去找新的工具。翻来覆去颠倒几次之后烦的不行,于是想着直接通过抓包的方法来下载微信视频号,只要自己实时更新一下微信的解析规则,那么这种手动抓包下载的方法基本上就永久可用,说干就干,我们马上开始搞起来。

具体操作

下载标清版本

  • 将要下载的视频分享到微信的文件传输助手中,防止下载错了,之后打开这个视频
  • 然后打开Http debug进行抓包,找到finder开头的网址,应该是get方法,资源类型为mp4,复制出来这个网址
https://finder.video.qq.com/251/20302/stodownload?encfilekey=Cvvj5Ix3eewK0tHtibORqcsqchXNh0Gf3sJcaYqC2rQDtxG4xibUK1iceLfkxcFazFHEwU39NworItlIaibb4CKaA4GFibfcCmeicicX7a9Fw1BZK9kYr1YtcpQIL2iawt1DvmPN&bizid=1023&dotrans=0&hy=SH&idx=1&m=&upid=0&web=1&token=6xykWLEnztKNJfMkDJQkqv7NTNo7B8TYJljUNmdpz0wQiaQhxbdvZXsJiapiapSibPzSajy3BRO9QJhmUicOcMeZcYibsxib6ica0T4pj99Pkic1lGe1ibSdLGMF9XBTXUJ4db4Gkib&extg=10f002e&svrbypass=AAuL%2FQsFAAABAAAAAAAXIkT4jXzES8%2BxLuTeZBAAAADnaHZTnGbFfAj9RgZXfw6VXkxwlWjwX%2BxfEW6SmjDgkchRBCMywhVTMnVoJS5LWXuv&svrnonce=1692329006&fexam=1&X-snsvideoflag=xWT96
  • 之后将这个网址中的20302修改成20304,

    一个样例
https://finder.video.qq.com/251/20304/stodownload?encfilekey=Cvvj5Ix3eewK0tHtibORqcsqchXNh0Gf3sJcaYqC2rQDtxG4xibUK1iceLfkxcFazFHEwU39NworItlIaibb4CKaA4GFibfcCmeicicX7a9Fw1BZK9kYr1YtcpQIL2iawt1DvmPN&bizid=1023&dotrans=0&hy=SH&idx=1&m=&upid=0&web=1&token=6xykWLEnztKNJfMkDJQkqv7NTNo7B8TYJljUNmdpz0wQiaQhxbdvZXsJiapiapSibPzSajy3BRO9QJhmUicOcMeZcYibsxib6ica0T4pj99Pkic1lGe1ibSdLGMF9XBTXUJ4db4Gkib&extg=10f002e&svrbypass=AAuL%2FQsFAAABAAAAAAAXIkT4jXzES8%2BxLuTeZBAAAADnaHZTnGbFfAj9RgZXfw6VXkxwlWjwX%2BxfEW6SmjDgkchRBCMywhVTMnVoJS5LWXuv&svrnonce=1692329006&fexam=1&X-snsvideoflag=xWT96
  • 之后就可以放到IDM中进行下载了

  • 如果下载的格式是jpg的,不用管它,直接强制改成mp4的就行了

  • 可以看到这个视频是可以正常查看与播放的

下载高清的微信号视频

  • 不过这个视频下载的是标清版的,如果想下载高清版的还需要对链接进行进一步的处理
  • 保留encfilekey以及token部分,其他的参数全部删掉

标清的视频链接

### https://finder.video.qq.com/251/20304/stodownload?encfilekey=Cvvj5Ix3eewK0tHtibORqcsqchXNh0Gf3sJcaYqC2rQDtxG4xibUK1iceLfkxcFazFHEwU39NworItlIaibb4CKaA4GFibfcCmeicicX7a9Fw1BZK9kYr1YtcpQIL2iawt1DvmPN&bizid=1023&dotrans=0&hy=SH&idx=1&m=&upid=0&web=1&token=6xykWLEnztKNJfMkDJQkqv7NTNo7B8TYJljUNmdpz0wQiaQhxbdvZXsJiapiapSibPzSajy3BRO9QJhmUicOcMeZcYibsxib6ica0T4pj99Pkic1lGe1ibSdLGMF9XBTXUJ4db4Gkib&extg=10f002e&svrbypass=AAuL%2FQsFAAABAAAAAAAXIkT4jXzES8%2BxLuTeZBAAAADnaHZTnGbFfAj9RgZXfw6VXkxwlWjwX%2BxfEW6SmjDgkchRBCMywhVTMnVoJS5LWXuv&svrnonce=1692329006&fexam=1&X-snsvideoflag=xWT96

高清的视频链接

### https://finder.video.qq.com/251/20304/stodownload?encfilekey=Cvvj5Ix3eewK0tHtibORqcsqchXNh0Gf3sJcaYqC2rQDtxG4xibUK1iceLfkxcFazFHEwU39NworItlIaibb4CKaA4GFibfcCmeicicX7a9Fw1BZK9kYr1YtcpQIL2iawt1DvmPN&bizid=1023&dotrans=0&hy=SH&idx=1&m=&upid=0&web=1&token=6xykWLEnztKNJfMkDJQkqv7NTNo7B8TYJljUNmdpz0wQiaQhxbdvZXsJiapiapSibPzSajy3BRO9QJhmUicOcMeZcYibsxib6ica0T4pj99Pkic1lGe1ibSdLGMF9XBTXUJ4db4Gkib
  • 可以看到这个视频的尺寸已相较之前大了很多
  • 播放起来的清晰度也相较之前清晰了很多

自动化操作

  • 当然了,这个删除参数的操作很繁琐,而且一不小心就容易出错,因此我把它写成一个Python小程序,可以直接下载下来这个地址中的视频

代码

import tkinter as tk
from tkinter import filedialog
from urllib.parse import urlparse, parse_qs, urlencode, urlunparse
import tkinter.font as tkfont
from datetime import datetime
import warnings
import requests

warnings.filterwarnings("ignore")

class AutoClosingDialog(tk.Toplevel):
    def __init__(self, parent, text='', title=None, timeout=2000):
        super().__init__(parent)
        if title:
            self.title(title)
        self.timeout = timeout
        tk.Label(self, text=text).pack()
        self.after(self.timeout, self.destroy)

def remove_parameters(url, params_to_keep):
    parsed_url = urlparse(url)
    query_params = parse_qs(parsed_url.query)
    query_params = {param: query_params[param] for param in params_to_keep if param in query_params}
    encoded_query = urlencode(query_params, doseq=True)
    new_url = urlunparse((
        parsed_url.scheme,
        parsed_url.netloc,
        parsed_url.path,
        parsed_url.params,
        encoded_query,
        parsed_url.fragment
    ))
    return new_url

def download_file(url, save_path):
    response = requests.get(url, stream=True, verify=False)
    response.raise_for_status()
    with open(save_path, 'wb') as file:
        for chunk in response.iter_content(chunk_size=8192):
            file.write(chunk)

def process_url(quality):
    url = entry.get().replace('20302', '20304')

    if quality == 'hd':
        # params_to_keep = ['encfilekey', 'token']
        # new_url = remove_parameters(new_url, params_to_keep=params_to_keep)
        video_type = '(高清)'

    else:
        new_url = url
        video_type = '(标清)'

    current_datetime = datetime.now()
    current_date = current_datetime.strftime("%Y.%m.%d")
    current_time = current_datetime.strftime("%H%M%S")
    filename = f'{current_date}-{current_time}-{quality}{video_type}.mp4'
    save_path = save_path_var.get() + '/' + filename
    print(f"下载链接:{new_url}")
    print(f"保存路径:{save_path}")
    try:
        download_file(new_url, save_path)
        AutoClosingDialog(window, text=f"{quality.upper()} 视频已成功下载到:" + save_path, title="成功")
    except Exception as e:
        AutoClosingDialog(window, text=f"下载{quality.upper()}视频时发生错误:" + str(e), title="错误")

def process_normal_url():
    download_button.config(state='disabled')
    download_hd_button.config(state='disabled')
    process_url('normal')
    download_button.config(state='normal')
    download_hd_button.config(state='normal')

def process_hd_url():
    download_button.config(state='disabled')
    download_hd_button.config(state='disabled')
    process_url('hd')
    download_button.config(state='normal')
    download_hd_button.config(state='normal')

window = tk.Tk()
window.title("微信视频号下载工具 v1.0")
window_width = 700
window_height = 300
screen_width = window.winfo_screenwidth()
screen_height = window.winfo_screenheight()
position_top = int(screen_height / 2 - window_height / 2)
position_right = int(screen_width / 2 - window_width / 2)
window.geometry(f'{window_width}x{window_height}+{position_right}+{position_top}')
font_style = tkfont.Font(family="Arial", size=16)

label = tk.Label(window, text="请输入微信视频号链接", font=font_style)
label.pack()
entry = tk.Entry(window, font=font_style, width=50)
entry.pack()

save_path_var = tk.StringVar()
save_path_var.set("E:/Documents/Desktop")

def choose_save_path():
    save_path = filedialog.askdirectory()
    save_path_var.set(save_path)

save_path_button = tk.Button(window, text="选择保存路径", command=choose_save_path, font=font_style)
save_path_button.pack()

save_path_entry = tk.Entry(window, textvariable=save_path_var, font=font_style, width=50)
save_path_entry.pack()

download_button = tk.Button(window, text="下载普通质量", command=process_normal_url, font=font_style)
download_button.pack()

download_hd_button = tk.Button(window, text="下载高清质量", command=process_hd_url, font=font_style)
download_hd_button.pack()

window.mainloop()
  • 操作界面很简单,没有什么需要说明的地方

微信视频号下载器v1.0.zip (1.73 KB, 下载次数: 2712)



免费评分

参与人数 125吾爱币 +123 热心值 +107 收起 理由
端木竹 + 1 谢谢@Thanks!
11lxm + 1 + 1 用心讨论,共获提升!
junjia215 + 1 + 1 用心讨论,共获提升!
beijing_tianye + 1 + 1 热心回复!
Nianx + 1 + 1 热心回复!
姜子牙 + 1 + 1 谢谢@Thanks!
zhimaluobo + 1 + 1 谢谢@Thanks!
bobruig + 1 下载后打不开看
c123go + 1 可以下载,但下载下来的视频无法播放
iftomorrow2005 + 1 + 1 谢谢@Thanks!
qhjzbm + 1 + 1 谢谢@Thanks!
pwrgod + 1 + 1 我也下下来了,谢谢!
lawsherman + 1 + 1 谢谢@Thanks!
星空迷徒 + 1 谢谢@Thanks!工具没用上,方法用上了
Bitshelf + 1 谢谢@Thanks!
kaxiha + 1 谢谢@Thanks!
lmxhn + 1 + 1 谢谢@Thanks!
NickyKwan + 1 我很赞同!
52lsc + 1 + 1 谢谢@Thanks!
hkhkhk + 1 + 1 我很赞同!
shanfei + 1 + 1 谢谢@Thanks!
smallchop + 1 + 1 我很赞同!
dazhi1882 + 1 + 1 下了试了下,要微信号视频链接,关键是哪儿有获取得到微信号视频链接?有了.
funythings + 1 + 1 谢谢@Thanks!
米多爹 + 1 + 1 谢谢@Thanks!
xpf123 + 1 + 1 我很赞同!
passtoworld + 1 谢谢@Thanks!
xuna2009 + 1 + 1 用心讨论,共获提升!
423 + 1 + 1 用心讨论,共获提升!
qas127 + 1 我很赞同!
yzqgeorge + 1 + 1 谢谢@Thanks!
Cleverwwh + 1 + 1 热心回复!
shrayy + 1 + 1 谢谢@Thanks!
JY125 + 1 + 1 谢谢@Thanks!
_zw + 1 + 1 谢谢@Thanks!
zjyl125 + 1 + 1 谢谢@Thanks!
ycdtbs924 + 1 + 1 用心讨论,共获提升!
GS9452 + 1 我很赞同!
wydangie + 1 + 1 鼓励转贴优秀软件安全工具和文档!
诸葛文诚 + 1 + 1 谢谢@Thanks!
june28th + 1 + 1 我很赞同!
masaphy + 1 谢谢@Thanks!
wsj01 + 1 谢谢@Thanks!
绾涵 + 2 + 1 感谢发布原创作品,吾爱破解论坛因你更精彩!
江南晚來客 + 1 + 1 谢谢@Thanks!
szy4444 + 1 + 1 感谢发布原创作品,吾爱破解论坛因你更精彩!
Myy8421 + 1 用心讨论,共获提升!
bin_chb + 1 谢谢@Thanks!
zj_tj + 1 + 1 热心回复!
ind + 1 + 1 谢谢@Thanks!
yaan + 1 + 1 我很赞同!
guiyidegui + 1 + 1 谢谢@Thanks!
twl288 + 1 我很赞同!
Hcj665766 + 1 + 1 谢谢@Thanks!
ARondMan + 1 热心回复!
134wap + 1 + 1 谢谢@Thanks!
逐风之雷霆之怒 + 1 + 1 用心讨论,共获提升!
感谢主 + 1 我很赞同!
crackercn + 1 + 1 我很赞同!
fessicon + 1 成功啦,感谢!!!!!
bitpig + 1 + 1 热心回复!
kk1212 + 1 + 1 谢谢@Thanks!
holes + 1 + 1 谢谢@Thanks!
Bear777 + 1 + 1 热心回复!
ShaBiForum + 1 我很赞同!
lshin + 1 + 1 谢谢@Thanks!
lxw3254 + 1 + 1 谢谢@Thanks!
tree8023 + 1 测试了,但好像下载不了
zjh106 + 1 + 1 谢谢@Thanks!
挚爱红蓝 + 1 热心回复!
天天暴富 + 1 + 1 用心讨论,共获提升!
mtm + 1 + 1 我很赞同!
wuboxun + 1 谢谢@Thanks!
冬日安好 + 1 + 1 我很赞同!
blackstrike + 1 + 1 谢谢@Thanks!
少侠丶 + 1 我很赞同!
pntvmin + 1 + 1 谢谢@Thanks!
十五彩虹 + 1 + 1 谢谢@Thanks!
mhaitao + 1 + 1 我很赞同!
apor999 + 1 + 1 我很赞同!
Xiaoyinwonderfu + 1 + 1 我很赞同!
hello95271 + 1 + 1 我很赞同!
夕阳枫 + 1 热心回复!
763742228 + 1 + 1 热心回复!
linkst + 1 我很赞同!
ijie + 1 我很赞同!
lishixin23 + 1 + 1 用心讨论,共获提升!
sunwrain + 1 + 1 谢谢@Thanks!
jie520yun + 1 + 1 我很赞同!
TYukito + 1 我很赞同!
谢单单 + 1 + 1 谢谢@Thanks!
zr2019 + 1 + 1 谢谢@Thanks!
C9527C + 1 + 1 谢谢@Thanks!
zhangweiyi9 + 1 和https://www.52pojie.cn/thread-1822034-1-1.html这个帖有什么区别?
苏紫方璇 + 7 + 1 欢迎分析讨论交流,吾爱破解论坛有你更精彩!
sharenle + 1 + 1 我很赞同!
Doulze + 1 谢谢@Thanks!
pbgz + 1 + 1 谢谢@Thanks!
hi52 + 1 + 1 下载标清没问题,下载高清报错。
zhaoyuji7 + 1 热心回复!

查看全部评分

本帖被以下淘专辑推荐:

发帖前要善用论坛搜索功能,那里可能会有你要找的答案或者已经有人发布过相同内容了,请勿重复发帖。

推荐
羅少 发表于 2023-8-18 18:24
我用Win11 x64编译了一个开箱即用的exe
https://www.123pan.com/s/UajA-WRUaH.html

点评

666666  发表于 2023-8-25 13:41

免费评分

参与人数 23吾爱币 +24 热心值 +20 收起 理由
never_paul + 1 + 1 +1
dhwl9899 + 1 + 1 谢谢@Thanks!
CELLDA + 1 + 1 谢谢@Thanks!
shixiaoyu + 1 + 1 谢谢@Thanks!
dx163 + 1 + 1 热心回复!
ajinxixi + 1 + 1 我很赞同!
ARondMan + 1 谢谢@Thanks!
kk1212 + 1 + 1 谢谢@Thanks!
lives2014 + 1 + 1 谢谢@Thanks!
william0712 + 1 + 1 用心讨论,共获提升!
苦瓜电影 + 1 + 1 谢谢@Thanks!
ooodx + 1 + 1 谢谢@Thanks!
victoryliu2004 + 1 + 1 热心回复!
i7_720qm + 1 + 1 谢谢@Thanks!
gaotian88 + 1 + 1 我很赞同!
vitas5566 + 1 + 1 要能获取到链接就好了
sosaid + 1 + 1 谢谢@Thanks!
wjm831 + 1 谢谢@Thanks!
scourgeofevil + 2 谢谢@Thanks!
caiduyi127 + 1 + 1 谢谢@Thanks!
jackybros + 1 + 1 谢谢@Thanks!
suko + 1 + 1 谢谢@Thanks!
愷龍 + 1 + 1 谢谢@Thanks!

查看全部评分

推荐
djxding 发表于 2023-8-20 08:59
本帖最后由 djxding 于 2023-8-29 13:55 编辑
cao_jf 发表于 2023-8-18 17:30
我下载的也不是楼主截图的成品小程序

扩展名是.py  ,要Python环境的。
运行后就看到界面了。

发一个打包好了的,WIN7能运行,需要的自取。
https://gangwan.lanzoul.com/imkcH15vheti

有坛友反馈说:“ 链接能打开,但是不能下载。 ”   

我这边是能正常下载到本地电脑上的呢,应该是你自己的系统有问题吧。

免费评分

参与人数 6吾爱币 +5 热心值 +4 收起 理由
jwmcmy + 1 链接可以打开,但不能下载!请修复
diy606 + 1 + 1 谢谢@Thanks!
dazhi1882 + 1 + 1 非常不错,随便找20302标识的url链接,就是想要下载的视频号
wsj01 + 1 谢谢@Thanks!
shiqu + 1 鼓励转贴优秀软件安全工具和文档!
ljm57 + 1 + 1 用心讨论,共获提升!

查看全部评分

推荐
xihawuzu 发表于 2023-8-18 16:57
推荐
 楼主| 我真的爱发明 发表于 2023-10-10 12:52 |楼主
sexbomb 发表于 2023-10-9 12:41
楼主快来,现在下载下来的不能播放了!估计又升级了,可恶的tx

哈哈,我随后再研究一下新的抓包规则
推荐
Lider 发表于 2023-8-18 17:11
感谢楼主
头像被屏蔽
推荐
bant 发表于 2023-8-24 11:02
提示: 作者被禁止或删除 内容自动屏蔽
头像被屏蔽
推荐
bant 发表于 2023-8-23 16:27
提示: 作者被禁止或删除 内容自动屏蔽
推荐
djxding 发表于 2023-8-23 21:03
dazhi1882 发表于 2023-8-23 21:01
安装好了,已经解决了。要用原版的微信才可以,总之要放得出视频才可以的。但有个问题是,HTTPDebuggerUI ...

在播放视频时,鼠标不要乱停留,多注意一下细节,就明白了。

最好是:鼠标只停留在要播放的视频区域 !

免费评分

参与人数 1吾爱币 +1 热心值 +1 收起 理由
dazhi1882 + 1 + 1 热心回复!

查看全部评分

推荐
chengzengsen 发表于 2023-8-18 21:07
实际这个小程序需要安装python,才能用,这是其一,其二是如何获取视频号链接也是个问题

推荐
huang9126 发表于 2023-8-18 17:17
@我真的爱发明 麻烦想问一下
请输入微信视频号链接
这个链接需要怎么拿到?
这个没太搞明白,也需要用HTTP Debugger捕获吗?还是有比较直接的获取方式?
4#
xiaotwins 发表于 2023-8-18 16:55
牛皮克拉斯
5#
Roadman1 发表于 2023-8-18 16:56
不懂就问:为什么下载不是楼主截图的成品小程序呀,是因为没有Python环境吗?
6#
xwmly 发表于 2023-8-18 16:57
前排支持,谢谢分享
7#
xys52pj 发表于 2023-8-18 17:05
前排支持,谢谢分享
8#
lty66456 发表于 2023-8-18 17:07
我没有Python环境   不能使用是么?
9#
pigmorning 发表于 2023-8-18 17:07
感谢楼主的无私奉献
10#
lty66456 发表于 2023-8-18 17:08
有没有在Windows领域环境下 可以自由打开的方式,求大神帮助
您需要登录后才可以回帖 登录 | 注册[Register]

本版积分规则

返回列表

RSS订阅|小黑屋|处罚记录|联系我们|吾爱破解 - LCG - LSG ( 京ICP备16042023号 | 京公网安备 11010502030087号 )

GMT+8, 2024-11-23 19:11

Powered by Discuz!

Copyright © 2001-2020, Tencent Cloud.

快速回复 返回顶部 返回列表