返回

从抖音下载无水印视频的100行 JavaScript代码

前端




## 从抖音下载无水印视频的100行 JavaScript代码

抖音是目前最受欢迎的短视频平台之一,拥有海量的视频资源。但抖音官方下载下来的视频,都会带有抖音的水印,这使得视频的观感和使用受到了一定的影响。

如果你想下载抖音无水印视频,可以使用本文提供的100行 JavaScript代码。该脚本利用了抖音官方的视频下载流程,并通过一个关键的ajax请求绕过了抖音的水印保护。

### 脚本使用方法

1. 将脚本复制到一个文本文件中,并保存为`.js`文件。
2. 在你的浏览器中打开抖音视频的页面。
3. 在浏览器的开发者工具中,找到“Sources”或“脚本”选项卡。
4. 将`.js`文件拖放到“Sources”或“脚本”选项卡中。
5. 脚本会自动运行,并在视频页面中显示一个“下载无水印视频”按钮。
6. 点击“下载无水印视频”按钮,即可下载无水印视频。

### 脚本代码

```javascript
// ==UserScript==
// @name         抖音无水印视频下载
// @namespace    https://github.com/zzpig/douyin-no-watermark-video-download
// @version      0.1
// @description  从抖音下载无水印视频
// @author       zzpig
// @match        https://www.douyin.com/video/*
// @grant        none
// ==/UserScript==

(function() {
    'use strict';

    // 获取视频ID
    var videoId = window.location.pathname.match(/video\/([0-9]+)/)[1];

    // 获取视频信息
    var videoInfo = getVideoInfo(videoId);

    // 创建下载按钮
    var downloadButton = document.createElement('button');
    downloadButton.textContent = '下载无水印视频';
    downloadButton.style.cssText = 'position: fixed; top: 0; right: 0; z-index: 9999; padding: 5px 10px; background: #f00; color: #fff; border: none; cursor: pointer;';
    document.body.appendChild(downloadButton);

    // 添加下载按钮的点击事件监听器
    downloadButton.addEventListener('click', function() {
        // 获取视频下载地址
        var videoUrl = getVideoUrl(videoInfo);

        // 下载视频
        downloadVideo(videoUrl);
    });

    // 获取视频信息
    function getVideoInfo(videoId) {
        var url = 'https://www.douyin.com/video/api/item/info?id=' + videoId;
        var response = fetch(url).then(function(response) {
            return response.json();
        });
        return response;
    }

    // 获取视频下载地址
    function getVideoUrl(videoInfo) {
        var videoUrl = videoInfo.item_list[0].video.play_addr.url_list[0];
        return videoUrl;
    }

    // 下载视频
    function downloadVideo(videoUrl) {
        var a = document.createElement('a');
        a.href = videoUrl;
        a.download = '抖音视频.mp4';
        a.click();
    }
})();

注意

  • 该脚本仅适用于抖音网站,不适用于其他平台。
  • 该脚本可能会随时失效,因为抖音官方可能会更改视频下载流程。
  • 该脚本仅供个人使用,请勿用于商业用途。

结语

以上就是从抖音下载无水印视频的100行 JavaScript代码。希望本文对你有帮助。