xxmdmst 发表于 2023-9-22 15:45

【JS】纯前端处理视频号高清下载链接,全流程教学

之前看到文章:https://www.52pojie.cn/thread-1822802-1-1.html
但是前置步骤未说明,另外我觉得仅仅只是处理链接使用JS会更合适。

下载视频号的步骤,其实就两步:
1.抓包获取视频链接
2.将视频链接替换到20304的图片服务器便可以直接下载。

如果需要下载高清视频则需要删除链接中的多余参数。

抓包工具下载链接: https://pan.baidu.com/s/1tZeH1BqlKAQx1nOh0lpJDw?pwd=x9xk
HTTP Debugger Pro v9.11安装及汉化指南:
[*]安装HTTP Debugger Pro v9.11.msi,安装完成后断开网络
[*]运行HTTP Debugger Pro KeyGen By DSiDERS.exe点击Activate注册激活后,启动网络
[*]将HTTPDebuggerUI_zh.exe放入安装目录,以后用它启动HTTP Debugger

可以考虑将HTTPDebuggerUI_zh.exe发送到桌面快捷方式
这样打开HTTP Debugger Pro后,再打开视频号对应的链接,可以可以看到一堆:

右键随便复制一个链接即可。
然后我们使用JS代码去替换链接为可以下载的链接,已经准备好的完整html代码为:
<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8"/>
    <meta http-equiv="X-UA-Compatible" content="IE=edge"/>
    <meta name="viewport"
          content="width=device-width, initial-scale=1.0, maximum-scale=1.0, minimum-scale=1.0, user-scalable=no, viewport-fit=cover"/>
    <title>微信视频号视频下载</title>
</head>
<body>
<textarea placeholder="请输入原始视频下载链接"
          style="width: 99%;max-width: 860px;min-height: 200px"></textarea>
<p>
    <button class="down1">下载普通视频</button>
    <button class="down2">下载高清视频</button>
</p>
<p>
    <button class="copy1">复制普通链接</button>
    <button class="copy2">复制高清链接</button>
</p>
</body>
<script>
    function copyToClipboard(text) {
      try {
            const textarea = document.createElement('textarea');
            textarea.setAttribute('readonly', 'readonly');
            textarea.value = text;
            document.body.appendChild(textarea);
            textarea.select();
            let flag = document.execCommand('copy');
            document.body.removeChild(textarea);
            return flag;
      } catch (e) {
            console.log(e);
            return false;
      }
    }

    let url1, url2;

    function parseWxVideoUrl(url) {
      let = url.split("?", 2);
      const urlParams = new URLSearchParams(search);
      let encfilekey = urlParams.get("encfilekey");
      let token = urlParams.get("token");
      url1 = baseUrl.replace("/20302/", "/20304/") + "?" + search;
      return url1 + `?encfilekey=${encfilekey}&token=${token}`;
    }

    function downloadData(url, e) {
      let xhr = new XMLHttpRequest();
      xhr.open('GET', url, true);
      xhr.responseType = 'blob';
      xhr.onload = (e) => {
            let link = document.createElement('a');
            link.href = URL.createObjectURL(xhr.response);
            link.download = "视频号视频.mp4";
            link.click();
      };
      xhr.onprogress = (event) => {
            if (event.lengthComputable) {
                e.target.textContent = "下载" + (event.loaded * 100 / event.total).toFixed(1) + '%';
            }
      };
      xhr.send();
    }

    function copyUrl(url, e) {
      let tmp = e.target.textContent;
      if (copyToClipboard(url))
            e.target.textContent = "复制成功";
      else
            e.target.textContent = "复制失败";
      setTimeout(() => {
            e.target.textContent = tmp;
      }, 2000);
    }

    document.querySelector("button.down1").addEventListener("click", evt => downloadData(url1, evt));
    document.querySelector("button.down2").addEventListener("click", evt => downloadData(url2, evt));
    document.querySelector("button.copy1").addEventListener("click", (event) => copyUrl(url1, event));
    document.querySelector("button.copy2").addEventListener("click", (event) => copyUrl(url2, event));
    const textarea = document.querySelector('textarea');
    textarea.addEventListener('input', (event) => {
      const modifiedText = event.target.value;
      url2 = parseWxVideoUrl(modifiedText);
      document.querySelector("button.down1").textContent = "下载普通视频";
      document.querySelector("button.down2").textContent = "下载高清视频";
    });
</script>
</html>
将以上代码保存到HTML文件并打开,只要把刚才复制出来的链接粘贴到游览器的输入框中:

点击复制高清链接得到:
https://finder.video.qq.com/251/20304/stodownload?encfilekey=6xykWLEnztKcKCJZcV0rWCM8ua7DibZkibPSZaIgeFjxHdXG667ep3WWuicTxoCdZnevLoAMoPJS5xicCBvsMZ4TYxqCA0vybuNAz4RwPxu67GTtsLib2XImN1CrpAv3FAuB0czTp58wZwOPcSuZjgT57lO1lmruPIC1551fMeBs9I48&token=cztXnd9GyrFgWibaZnNzz3ALIdicHeF3jahXZf267DGXLT6NtRT2h8VY6NHiaZiaXeEMIhdy9ceeJRg53MCRaPkWlXImnibfYjGGWytqIqd1PHm8bS3weLFGKIiaXJoCpdHv5Q
可以看到链接已经处理完毕,点击下载高清视频会在前端后台下载完毕后弹出下载框。

如果你不想自己创建html,可以直接访问 https://ai.shanxl.com/downWxVideo.html

xxmdmst 发表于 2023-9-25 09:38

haoran06 发表于 2023-9-24 22:15
到现在这个时间点 还能用,看来涉及东西比较多,这都几个月了,到现在tt 还没补上这个漏洞

这算漏洞吗?抖音拿到地址直接就可以下载,而且游览器的开发者工具就能拿到地址。
腾讯这个不仅必须用外部软件抓包,抓到的地址还不能直接下载,防护级别已经够高了,而且看视频号经常有明显的卡顿,抖音压根不会,防护级别再高点,视频号估计卡的不行,严重影响用户体验~

xjxjtc 发表于 2023-9-29 22:08

不行 tx老tm的改 有病啊

cia001 发表于 2023-9-30 21:26

能下载,不过不能播放了,tx这是脑子有病吧,不让下载把自己的播放弄利索也行,界面那么难用

浩哥呐 发表于 2023-9-28 12:15

这个改20304的是不是凉了啊,依旧无法渲染播放

xrat 发表于 2023-9-22 16:03

太感谢了,盒马暂时用不了了

hbzy 发表于 2023-9-22 16:25

收藏一下,有时间测试

bachelor66 发表于 2023-9-22 16:45

HDP抓不到任何包是为什么呢?                                    

xxmdmst 发表于 2023-9-22 18:04

bachelor66 发表于 2023-9-22 16:45
HDP抓不到任何包是为什么呢?

你可以断网并重新激活~

dychjyfgfda 发表于 2023-9-22 18:58

感谢提供分享,回去试验一下

破解专用户 发表于 2023-9-22 20:33

本帖最后由 破解专用户 于 2023-9-22 20:35 编辑

大佬 ,牛BPLUS
我请教一下大佬,为什么我这有个链接没有&extg,我下过好多次都有,有一天有个视频没有这个字符串,如下
https://finder.video.qq.com/251/20302/stodownload?encfilekey=Cvvj5Ix3eez3Y79SxtvVL0L7CkPM6dFibFeI6caGYwFGuatR4drGuejgjxMOWa1ib3f9QCpsJdbQVLKdKKEgoqXWkMFukhzXqmIufoZVKdpIUQyUMuMiacvU9HpiaibZ1R9QpS0g1aia7C5rE&token=x5Y29zUxcibAwwibspa0ZSF253JG5iaBxQR1xAOQFhQic69fIQjGricTgRP4zYboynOEuOpRIlPg6h1U&idx=1&adaptivelytrans=514&bizid=1023&dotrans=802&hy=SH&m=6ffaef8d8163190ae8c4e5d5d50f93cb&scene=0&web=1&fexam=1&X-snsvideoflag=xV2&taskid=0
这是抓到的链接,因此我不会下高清的

xxmdmst 发表于 2023-9-22 20:45

破解专用户 发表于 2023-9-22 20:33
大佬 ,牛BPLUS
我请教一下大佬,为什么我这有个链接没有&extg,我下过好多次都有,有一天有个视频没 ...

按照文章中的内容就可以下高清了,访问 https://ai.shanxl.com/downWxVideo.html
将你抓到的链接粘贴到页面的输入框,点击复制高清链接即可粘贴到其他软件下载高清
也可以直接点击下载高清

xxmdmst 发表于 2023-9-22 20:47

破解专用户 发表于 2023-9-22 20:33
大佬 ,牛BPLUS
我请教一下大佬,为什么我这有个链接没有&extg,我下过好多次都有,有一天有个视频没 ...

不过你这个视频链接是长视频直接可以访问的,可能对于长视频,视频号存在最小压缩限制,就是最高质量也只能到这个级别,区别不大。

破解专用户 发表于 2023-9-22 20:47

xxmdmst 发表于 2023-9-22 20:45
按照文章中的内容就可以下高清了,访问 https://ai.shanxl.com/downWxVideo.html
将你抓到的链接粘贴到 ...

好的,感谢
页: [1] 2 3 4 5 6
查看完整版本: 【JS】纯前端处理视频号高清下载链接,全流程教学