抖音网页版无水印一键下载

下载无水印的抖音视频,支持按钮点击与[Q]键下载

目前为 2022-07-25 提交的版本。查看 最新版本

// ==UserScript==
// @name         抖音网页版无水印一键下载
// @namespace    http://tampermonkey.net/
// @version      2.3.1
// @description  下载无水印的抖音视频,支持按钮点击与[Q]键下载
// @author       adamaliba - 潘帅
// @include      *://*.douyin.com/*
// @grant        GM_download
// @grant        GM_addStyle
// @grant        GM_info
// @connect      *
// @icon         https://lf1-cdn-tos.bytegoofy.com/goofy/ies/douyin_web/public/favicon.ico
// @license      MIT License
// ==/UserScript==

(function() {

    // let download = () => {
    //     let videoSrc = document.getElementsByTagName("video")[0].currentSrc
    //     let a = document.createElement('a')
    //     document.body.appendChild(a)
    //     a.style.display = "none"
    //     a.href = videoSrc
    //     a.download = videoSrc.split('=').reverse()[0] + '.mp4'
    //     a.target = '_blank'
    //     a.click()
    //     document.body.removeChild(a)
    // }

    function replaceIllegal(str) {
        return str.replace(/“/g, '').replace(/\?/g, '').replace(/、/g, '').replace(/╲/g, '').replace(/\//g, '')
        .replace(/\*/g, '').replace(/”/g, '').replace(/</g, '').replace(/>/g, '').replace(/\|/g, '')
    }

    let download = (div) => {
        if(div)
            div.style.backgroundImage = 'url("data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAADAAAAAwCAYAAABXAvmHAAAAAXNSR0IArs4c6QAAA9NJREFUaEPtmE2olWUUhZ81a9I0gwZNsh8MhRwUDUopCiEIhBSKpEEpSH+KjoR+hEZdslICLQiKiBKCIIKiSB0EDiyKIjUHOii0aRNnK9bh/eLr697z/d2rHjgbDpzDeX/22mvv9e73FTNumnH/mQO42gzOGZgzMDIC8xSaFkDb3+d/SfeODPSS01eMAdsbgO/KzhslHVsJEKMA2E5kjwA/SNpWd7ANgO0PgLuA7ZImTA2xsQBeAV4uG2+RdLRyYhoA248Bn5axr0rKOoNsLIC1wEngOuCEpPs7AjgO3AdcBu6W9PMg71NfQyfWHH0d2FN+PyPpvXxfigHbTwPvlvELkvaO8WE0gOLsRWAVkEgmopcXA2A7TIWxMHdJ0o1jnJ8oXNcFikNRls+alNt+Dni7rLVX0sISAMJUGIs9L+lgo/ADbDPwp6SIQ6v1AfA7cEvJ20NN6m2fBm4DLoQF4I66jAK/lejfDJyRdHvD+QB7ttRTzo5OvnUaVNIksvdkbdNLwGtVFG0HXEDGdiSCtg9PaJZ22N4OTH4DqyWdK+uGvX0lBavlP5b0eGv4+6RQ2SzylyhFQSo7AzwSh4o87gReWCTNkh5vAe9EbgvgLwpr1VongLD7rxy3gejMQIPuKEkiF6cq+885MG3jxjmQoSn+g5WCtTld/38QgMJGFCVs5JO8PiZpY5fNbafFiCCkXg6VqOdM6G2DAVQ72Y58PgqcknSqiwe21wP5fC4ptTTYOgEokrjkJkMbtbZ1IwqS/piGrhWA7fQsKd5pdiRK0yeMRaGiTNPsV0l3jgXwJbCpZaMDknb3BPAGsKtlzklJ94wCUAo2BXc1Uui8pPOjAUxboBTxQ8BPXbtK25HfdcDXV6SIFwNQGrPZlNHSEjcPss4XE9v1i1Dic2UOsnKCNluJ3HW3SvqrOJZLzZ7mmVC0fwE4nhuY7RuAT8qBVpG8cq3EInJ6Ftgp6dtS6HGoOpS2SfrQdpQmzdxu22kE0xDGVgVwmfdA+iPg1lqqHpW0pYuqtZ4D1SK2fwHWAH8DL0l6s75Boz1oa6f/13bYfhHYD1wPtOp/tXcfAHmBiNp8JKlqmyfr2E4UvymLdr3QPFixVwvSauCJok6dXio6A2iR0rTUSYE+V8qzknIBGmWjARTqDxQv+l7qdzVTsS+aUQBsh/J0oMnbIc8qqaf1zZTsA2IsgJl/2EqPlDeeH5uy1+Fp8X3gKWDUu+koBloK+9p/3G0BcBPwVRnzcNvFpE/e18euGANDHeo7bw6gb8SWe/ycgeWOaN/15gz0jdhyj595Bv4Bp43MQJcVEzMAAAAASUVORK5CYII=")'
        Array.from(document.getElementsByTagName("video")).forEach(video => {
            if(video.autoplay){
                let account = replaceIllegal(video.parentNode.parentNode.getElementsByClassName('account-name')[0].innerText)
                let title = replaceIllegal(video.parentNode.parentNode.getElementsByClassName('title')[0].innerText)
                if(title.length === 0){
                    title = "无标题"
                }
                let interval = setInterval(() => {
                    if(title.length){
                        fetch(video.currentSrc).then(res => {
                            if(title.length === 0){
                                clearInterval(interval)
                            }
                            res.blob().then(blob => {
                                let blobUrl = window.URL.createObjectURL(blob)
                                let a = document.createElement('a')
                                document.body.appendChild(a)
                                a.style.display = "none"
                                a.href = blobUrl
                                a.download = `${title}_${account}_${Date.now()}.mp4`
                                a.target = '_blank'
                                if(title.length != 0){
                                    a.click()
                                    if(div)
                                        div.style.backgroundImage = 'url("data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAADAAAAAwCAYAAABXAvmHAAAAAXNSR0IArs4c6QAAAqVJREFUaEPtmT1rFUEUhp+DlY2NVoJgo4gKEm20UkHs1EZTRIQUQcTOSsvYWPgDDBYiiBBQQUkEsVJBbbSw0BQiau8PsHxlYG7cbGZ2Z/bOknthp9ydPed95pz5OLPGlDebcv0MAKEISroPXK29u21mi6Uj3ksEJCkk1MyK+ytu0AkfADLybIhAZBIPcyA1i4YUmqoUknQJuAt8AO6Y2VoJAEkXgVvAT2AxZje4t6Tmmhf/pNL/GzAbcpazD0g6BzwHtnnbUbudAQLiR7aCzlIBJJ0FXgDba+KSIZImsaSvwKFItDY5SwGQdBJYAXZE7C6b2VxbhqQCPAYuNxjbANEGIOk4sArsarCZdPhLBTgIuPyPRcHpWIdoApA0A7wEdjeIf2pms22j794nAfgDWjKEhwn5P+zF7y0hPgvAQxwAniVEIhap78D+UuKzATzEHuBVC0RK9Ot9ktOm+mFyClU/krQTeFcQopP4ThEYgUhya/enAhCdxY8FUAFp2iPaUmks8UUA/LzoAjG2+GIAHSCKiC8KkAFRTPwmgBL3OZK+AEciyZ8lXtJDYL5i6w9wr3q/tGEZbTvDtM3IysT+CJyo9c8Vfwp4E/D51sxOj573AuDTyR0AzwB/3ZHZzG6kDoD/fmsBcsSG+koaANYHpo87zbYIFY0AsM/MfrQ5Lfle0jVgqcgkBpKqo8IArtx0BX+95a9C3oJbRdxq8ruk0LotSa5wcr4WIn4aAX4BTdVSn9pTba+a2fnYPvAIuJJqaYv6LZnZ9RiA+y3kfg9Ncpszs+UggN8BPwPHJpTgppm5q83/S3xkF3wNuFuzSWorZnahLihaE0tyfxSP+mg03eH0CenumlzZ+t7MHoQcdSrq+1Sca3sAyB2x0v2HCJQe0Vx7Ux+Bf62bO0D1hp22AAAAAElFTkSuQmCC")'
                                    clearInterval(interval)
                                }
                                document.body.removeChild(a)
                                title = ''
                                window.URL.revokeObjectURL(blobUrl);
                            })
                        })
                    }else{
                        clearInterval(interval)
                    }
                }, 500);
            }
        })
    }

    let downloadInSearch = (div) => {
        if(div)
            div.style.backgroundImage = 'url("data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAADAAAAAwCAYAAABXAvmHAAAAAXNSR0IArs4c6QAAA9NJREFUaEPtmE2olWUUhZ81a9I0gwZNsh8MhRwUDUopCiEIhBSKpEEpSH+KjoR+hEZdslICLQiKiBKCIIKiSB0EDiyKIjUHOii0aRNnK9bh/eLr697z/d2rHjgbDpzDeX/22mvv9e73FTNumnH/mQO42gzOGZgzMDIC8xSaFkDb3+d/SfeODPSS01eMAdsbgO/KzhslHVsJEKMA2E5kjwA/SNpWd7ANgO0PgLuA7ZImTA2xsQBeAV4uG2+RdLRyYhoA248Bn5axr0rKOoNsLIC1wEngOuCEpPs7AjgO3AdcBu6W9PMg71NfQyfWHH0d2FN+PyPpvXxfigHbTwPvlvELkvaO8WE0gOLsRWAVkEgmopcXA2A7TIWxMHdJ0o1jnJ8oXNcFikNRls+alNt+Dni7rLVX0sISAMJUGIs9L+lgo/ADbDPwp6SIQ6v1AfA7cEvJ20NN6m2fBm4DLoQF4I66jAK/lejfDJyRdHvD+QB7ttRTzo5OvnUaVNIksvdkbdNLwGtVFG0HXEDGdiSCtg9PaJZ22N4OTH4DqyWdK+uGvX0lBavlP5b0eGv4+6RQ2SzylyhFQSo7AzwSh4o87gReWCTNkh5vAe9EbgvgLwpr1VongLD7rxy3gejMQIPuKEkiF6cq+885MG3jxjmQoSn+g5WCtTld/38QgMJGFCVs5JO8PiZpY5fNbafFiCCkXg6VqOdM6G2DAVQ72Y58PgqcknSqiwe21wP5fC4ptTTYOgEokrjkJkMbtbZ1IwqS/piGrhWA7fQsKd5pdiRK0yeMRaGiTNPsV0l3jgXwJbCpZaMDknb3BPAGsKtlzklJ94wCUAo2BXc1Uui8pPOjAUxboBTxQ8BPXbtK25HfdcDXV6SIFwNQGrPZlNHSEjcPss4XE9v1i1Dic2UOsnKCNluJ3HW3SvqrOJZLzZ7mmVC0fwE4nhuY7RuAT8qBVpG8cq3EInJ6Ftgp6dtS6HGoOpS2SfrQdpQmzdxu22kE0xDGVgVwmfdA+iPg1lqqHpW0pYuqtZ4D1SK2fwHWAH8DL0l6s75Boz1oa6f/13bYfhHYD1wPtOp/tXcfAHmBiNp8JKlqmyfr2E4UvymLdr3QPFixVwvSauCJok6dXio6A2iR0rTUSYE+V8qzknIBGmWjARTqDxQv+l7qdzVTsS+aUQBsh/J0oMnbIc8qqaf1zZTsA2IsgJl/2EqPlDeeH5uy1+Fp8X3gKWDUu+koBloK+9p/3G0BcBPwVRnzcNvFpE/e18euGANDHeo7bw6gb8SWe/ycgeWOaN/15gz0jdhyj595Bv4Bp43MQJcVEzMAAAAASUVORK5CYII=")'
        Array.from(document.getElementsByTagName("video")).forEach(video => {
            if(video.autoplay){
                let parent = document.getElementsByTagName("video")[0].parentNode.parentNode.parentNode.parentNode.parentNode.parentNode.parentNode.parentNode.parentNode
                let account = parent.getElementsByTagName('a')[1].innerText
                let title = replaceIllegal(parent.getElementsByClassName('KxCuain0')[0].innerText.split('\n')[1])
                if(title.length === 0){
                    title = "无标题"
                }
                let interval = setInterval(() => {
                    if(title.length){
                        fetch(video.currentSrc).then(res => {
                            if(title.length === 0){
                                clearInterval(interval)
                            }
                            res.blob().then(blob => {
                                let blobUrl = window.URL.createObjectURL(blob)
                                let a = document.createElement('a')
                                document.body.appendChild(a)
                                a.style.display = "none"
                                a.href = blobUrl
                                a.download = `${title}_${account}_${Date.now()}.mp4`
                                a.target = '_blank'
                                if(title.length != 0){
                                    a.click()
                                    if(div)
                                        div.style.backgroundImage = 'url("data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAADAAAAAwCAYAAABXAvmHAAAAAXNSR0IArs4c6QAAAqVJREFUaEPtmT1rFUEUhp+DlY2NVoJgo4gKEm20UkHs1EZTRIQUQcTOSsvYWPgDDBYiiBBQQUkEsVJBbbSw0BQiau8PsHxlYG7cbGZ2Z/bOknthp9ydPed95pz5OLPGlDebcv0MAKEISroPXK29u21mi6Uj3ksEJCkk1MyK+ytu0AkfADLybIhAZBIPcyA1i4YUmqoUknQJuAt8AO6Y2VoJAEkXgVvAT2AxZje4t6Tmmhf/pNL/GzAbcpazD0g6BzwHtnnbUbudAQLiR7aCzlIBJJ0FXgDba+KSIZImsaSvwKFItDY5SwGQdBJYAXZE7C6b2VxbhqQCPAYuNxjbANEGIOk4sArsarCZdPhLBTgIuPyPRcHpWIdoApA0A7wEdjeIf2pms22j794nAfgDWjKEhwn5P+zF7y0hPgvAQxwAniVEIhap78D+UuKzATzEHuBVC0RK9Ot9ktOm+mFyClU/krQTeFcQopP4ThEYgUhya/enAhCdxY8FUAFp2iPaUmks8UUA/LzoAjG2+GIAHSCKiC8KkAFRTPwmgBL3OZK+AEciyZ8lXtJDYL5i6w9wr3q/tGEZbTvDtM3IysT+CJyo9c8Vfwp4E/D51sxOj573AuDTyR0AzwB/3ZHZzG6kDoD/fmsBcsSG+koaANYHpo87zbYIFY0AsM/MfrQ5Lfle0jVgqcgkBpKqo8IArtx0BX+95a9C3oJbRdxq8ruk0LotSa5wcr4WIn4aAX4BTdVSn9pTba+a2fnYPvAIuJJqaYv6LZnZ9RiA+y3kfg9Ncpszs+UggN8BPwPHJpTgppm5q83/S3xkF3wNuFuzSWorZnahLihaE0tyfxSP+mg03eH0CenumlzZ+t7MHoQcdSrq+1Sca3sAyB2x0v2HCJQe0Vx7Ux+Bf62bO0D1hp22AAAAAElFTkSuQmCC")'
                                    clearInterval(interval)
                                }
                                document.body.removeChild(a)
                                title = ''
                                window.URL.revokeObjectURL(blobUrl);
                            })
                        })
                    }else{
                        clearInterval(interval)
                    }
                }, 200);

            }
        })
    }

    let createBtn = () => {
        Array.from(document.getElementsByClassName('xgplayer-playswitch')).forEach(xgplayer => {
            let child = xgplayer.parentNode.childNodes[1]
            if(child && child.lastChild && child.lastChild.id != 'adamaliba'){
                let div = document.createElement('div')
                div.style.width = '60%'
                div.style.height = '40px'
                div.style.marginTop = '10px'
                div.style.backgroundImage = 'url("data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAADAAAAAwCAYAAABXAvmHAAAAAXNSR0IArs4c6QAAAqVJREFUaEPtmT1rFUEUhp+DlY2NVoJgo4gKEm20UkHs1EZTRIQUQcTOSsvYWPgDDBYiiBBQQUkEsVJBbbSw0BQiau8PsHxlYG7cbGZ2Z/bOknthp9ydPed95pz5OLPGlDebcv0MAKEISroPXK29u21mi6Uj3ksEJCkk1MyK+ytu0AkfADLybIhAZBIPcyA1i4YUmqoUknQJuAt8AO6Y2VoJAEkXgVvAT2AxZje4t6Tmmhf/pNL/GzAbcpazD0g6BzwHtnnbUbudAQLiR7aCzlIBJJ0FXgDba+KSIZImsaSvwKFItDY5SwGQdBJYAXZE7C6b2VxbhqQCPAYuNxjbANEGIOk4sArsarCZdPhLBTgIuPyPRcHpWIdoApA0A7wEdjeIf2pms22j794nAfgDWjKEhwn5P+zF7y0hPgvAQxwAniVEIhap78D+UuKzATzEHuBVC0RK9Ot9ktOm+mFyClU/krQTeFcQopP4ThEYgUhya/enAhCdxY8FUAFp2iPaUmks8UUA/LzoAjG2+GIAHSCKiC8KkAFRTPwmgBL3OZK+AEciyZ8lXtJDYL5i6w9wr3q/tGEZbTvDtM3IysT+CJyo9c8Vfwp4E/D51sxOj573AuDTyR0AzwB/3ZHZzG6kDoD/fmsBcsSG+koaANYHpo87zbYIFY0AsM/MfrQ5Lfle0jVgqcgkBpKqo8IArtx0BX+95a9C3oJbRdxq8ruk0LotSa5wcr4WIn4aAX4BTdVSn9pTba+a2fnYPvAIuJJqaYv6LZnZ9RiA+y3kfg9Ncpszs+UggN8BPwPHJpTgppm5q83/S3xkF3wNuFuzSWorZnahLihaE0tyfxSP+mg03eH0CenumlzZ+t7MHoQcdSrq+1Sca3sAyB2x0v2HCJQe0Vx7Ux+Bf62bO0D1hp22AAAAAElFTkSuQmCC")'
                div.style.backgroundSize = 'contain'
                div.style.backgroundRepeat = 'no-repeat'
                div.id = 'adamaliba'
                xgplayer.parentNode.childNodes[1].appendChild(div)
                div.onclick = () => {
                    download(div)
                }
            }
        })
    }

    let createBtnInSearch = () => {
        let xgplayer = document.getElementsByClassName('xgplayer-controls-initshow')[0].parentNode.childNodes[1].childNodes[0]
            if(xgplayer.lastChild.id != 'adamaliba'){
                let div = document.createElement('div')
                div.style.width = '60%'
                div.style.height = '40px'
                div.style.marginTop = '10px'
                div.style.backgroundImage = 'url("data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAADAAAAAwCAYAAABXAvmHAAAAAXNSR0IArs4c6QAAAqVJREFUaEPtmT1rFUEUhp+DlY2NVoJgo4gKEm20UkHs1EZTRIQUQcTOSsvYWPgDDBYiiBBQQUkEsVJBbbSw0BQiau8PsHxlYG7cbGZ2Z/bOknthp9ydPed95pz5OLPGlDebcv0MAKEISroPXK29u21mi6Uj3ksEJCkk1MyK+ytu0AkfADLybIhAZBIPcyA1i4YUmqoUknQJuAt8AO6Y2VoJAEkXgVvAT2AxZje4t6Tmmhf/pNL/GzAbcpazD0g6BzwHtnnbUbudAQLiR7aCzlIBJJ0FXgDba+KSIZImsaSvwKFItDY5SwGQdBJYAXZE7C6b2VxbhqQCPAYuNxjbANEGIOk4sArsarCZdPhLBTgIuPyPRcHpWIdoApA0A7wEdjeIf2pms22j794nAfgDWjKEhwn5P+zF7y0hPgvAQxwAniVEIhap78D+UuKzATzEHuBVC0RK9Ot9ktOm+mFyClU/krQTeFcQopP4ThEYgUhya/enAhCdxY8FUAFp2iPaUmks8UUA/LzoAjG2+GIAHSCKiC8KkAFRTPwmgBL3OZK+AEciyZ8lXtJDYL5i6w9wr3q/tGEZbTvDtM3IysT+CJyo9c8Vfwp4E/D51sxOj573AuDTyR0AzwB/3ZHZzG6kDoD/fmsBcsSG+koaANYHpo87zbYIFY0AsM/MfrQ5Lfle0jVgqcgkBpKqo8IArtx0BX+95a9C3oJbRdxq8ruk0LotSa5wcr4WIn4aAX4BTdVSn9pTba+a2fnYPvAIuJJqaYv6LZnZ9RiA+y3kfg9Ncpszs+UggN8BPwPHJpTgppm5q83/S3xkF3wNuFuzSWorZnahLihaE0tyfxSP+mg03eH0CenumlzZ+t7MHoQcdSrq+1Sca3sAyB2x0v2HCJQe0Vx7Ux+Bf62bO0D1hp22AAAAAElFTkSuQmCC")'
                div.style.backgroundSize = 'contain'
                div.style.backgroundRepeat = 'no-repeat'
                div.id = 'adamaliba'
                xgplayer.appendChild(div)
                div.onclick = () => {
                    downloadInSearch(div)
                }
            }

    }

    let Timer = setInterval(() => {
        let div = document.getElementById('adamaliba')
        location.href.indexOf('search') === -1 ? createBtn(div) : createBtnInSearch(div)
	}, 200);

	document.addEventListener('keydown', function(e){
	    if (e.keyCode === 81) {
            let div = document.getElementById('adamaliba')
            location.href.indexOf('search') === -1 ? download(div) : downloadInSearch(div)
	    }
	})

    console.log('抖音网页版无水印一键下载已开启!觉得不好用?来这里吐槽! https://gf.qytechs.cn/zh-CN/scripts/444720 ')

})()

QingJ © 2025

镜像随时可能失效,请加Q群300939539或关注我们的公众号极客氢云获取最新地址