-
-
Save VictoireWood/d4a1e684322dbffac256c215d68335df to your computer and use it in GitHub Desktop.
The Tampermonkey userscript to download video and audio from Youtube, Twitter, Vimeo, Facebook, Dailymotion, 1tv, VK, youku, bilibili and 5000 more sites for free. Fast and easy to use. 作者这里命名没有加后缀.user,导致tampermonkey无法将Raw文件识别成用户脚本。这里复刻于2022.06.09,只对文件名称进行了修改。
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
// ==UserScript== | |
// @name Distill Video & Audio Downloader from 5000+ sites including Youtube, Support 1080P, 2K, 4k & 8K | |
// @namespace https://distillvideo.com/ | |
// @version 2.1.1 | |
// @date 2018-06-17 | |
// @description Browser extension to download video and audio from Youtube, Twitter, Vimeo, Facebook, Dailymotion, 1tv, VK, youku, bilibili and 5000 more sites for free. Fast and easy to use. | |
// @author DistillVideo.com | |
// @copyright 2018, DistillVideo.com | |
// @homepage https://distillvideo.com/page/extensions | |
// @downloadURL https://distillvideo.com/js/ditillvideo.user.js | |
// @compatible chrome | |
// @compatible firefox | |
// @compatible opera | |
// @compatible safari | |
// @license GNU GPL v3.0 or later. http://www.gnu.org/copyleft/gpl.html | |
// @match *://*.youtube.com/* | |
// ==/UserScript== | |
(function() { | |
'use strict'; | |
if (document.getElementById("polymer-app") || document.getElementById("masthead") || window.Polymer) { | |
setInterval(function() { | |
if (window.location.href.indexOf("watch?v=") < 0) { | |
return false; | |
} | |
if (document.getElementById("count") && document.getElementById("distillvideo") === null) { | |
Addytpolymer(); | |
} | |
}, 100); | |
} else { | |
setInterval(function() { | |
if (window.location.href.indexOf("watch?v=") < 0) { | |
return false; | |
} | |
if (document.getElementById("watch7-subscription-container") && document.getElementById("distillvideo") === null) { | |
AddhtmlDV(); | |
} | |
}, 100); | |
} | |
function AddhtmlDV() { | |
if (document.getElementById("watch7-subscription-container")) { | |
var wrap = document.getElementById('watch7-subscription-container'); | |
var button = "<div id='distillvideo' style='display: inline-block; margin-left: 10px; vertical-align: middle;'>"; | |
button += "<a href=\"https://distillvideo.com/?url=https://www.youtube.com/watch?v=" + disvidyouvid(document.URL) + "\" title=\"Download this video\" target=\"_blank\"" + | |
"style=\"display: inline-block; font-size: inherit; height: 22px; border: 1px solid rgb(0, 183, 90); border-radius: 3px; padding-left: 28px; cursor: pointer; vertical-align: middle; position: relative; line-height: 22px; text-decoration: none; z-index: 1; color: rgb(255, 255, 255);\">"; | |
button += "<i style=\"position: absolute; display: inline-block; left: 6px; top: 3px; background-image: url(data:image/svg+xml;base64,PD94bWwgdmVyc2lvbj0iMS4wIiBlbmNvZGluZz0iVVRGLTgiPz48c3ZnIHhtbG5zOmRjPSJodHRwOi8vcHVybC5vcmcvZGMvZWxlbWVudHMvMS4xLyIgeG1sbnM6Y2M9Imh0dHA6Ly9jcmVhdGl2ZWNvbW1vbnMub3JnL25zIyIgeG1sbnM6cmRmPSJodHRwOi8vd3d3LnczLm9yZy8xOTk5LzAyLzIyLXJkZi1zeW50YXgtbnMjIiB4bWxuczpzdmc9Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIiB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHZlcnNpb249IjEuMSIgd2lkdGg9IjE2IiBoZWlnaHQ9IjE2IiB2aWV3Qm94PSIwIDAgMTYgMTYiIGlkPSJzdmcyIiB4bWw6c3BhY2U9InByZXNlcnZlIj48cGF0aCBkPSJNIDQsMCA0LDggMCw4IDgsMTYgMTYsOCAxMiw4IDEyLDAgNCwwIHoiIGZpbGw9IiNmZmZmZmYiIC8+PC9zdmc+); background-size: 12px; background-repeat: no-repeat; background-position: center center; width: 16px; height: 16px;\"></i>"; | |
button += "<span style=\"padding-right: 12px;\">Download</span></a></div>"; | |
var style = "<style>#distillvideo button::-moz-focus-inner{padding:0;margin:0}#distillvideo a{background-color:#15388c}#distillvideo a:hover{background-color:#E91E63}#distillvideo a:active{background-color:rgb(0, 151, 74)}</style>"; | |
var tmp = wrap.innerHTML; | |
wrap.innerHTML = tmp + button + style; | |
} | |
} | |
function Addytpolymer() { | |
var buttonDiv = document.createElement("span"); | |
buttonDiv.style.width = "100%"; | |
buttonDiv.id = "distillvideo"; | |
var addButton = document.createElement("a"); | |
addButton.appendChild(document.createTextNode("Download video")); | |
addButton.style.width = "100%"; | |
addButton.style.backgroundColor = "#15388c"; | |
addButton.style.color = "white"; | |
addButton.style.textAlign = "center"; | |
addButton.style.padding = "5px 10px"; | |
addButton.style.margin = "0px 10px"; | |
addButton.style.fontSize = "14px"; | |
addButton.style.border = "0"; | |
addButton.style.cursor = "pointer"; | |
addButton.style.borderRadius = "2px"; | |
addButton.style.fontFamily = "Roboto, Arial, sans-serif"; | |
addButton.style.textDecoration = "none"; | |
addButton.href = "https://distillvideo.com/?url=https://www.youtube.com/watch?v=" + disvidyouvid(window.location.href); | |
addButton.target = "_blank"; | |
buttonDiv.appendChild(addButton); | |
var targetElement = document.querySelectorAll("[id='count']"); | |
for (var i = 0; i < targetElement.length; i++) { | |
if (targetElement[i].className.indexOf("ytd-video-primary-info-renderer") > -1) { | |
targetElement[i].appendChild(buttonDiv); | |
} | |
} | |
} | |
function disvidyouvid(url) { | |
var p = /((http|https)\:\/\/)?(?:[0-9A-Z-]+\.)?(?:youtu\.be\/|youtube(?:-nocookie)?\.com\S*[^\w\s-])([\w-]{11})(?=[^\w-]|$)(?![?=&+%\w.-]*(?:['"][^<>]*>|<\/a>))[?=&+%\w.-]*/ig; | |
return (url.match(p)) ? RegExp.$3 : false; | |
} | |
})(); |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
在GitHub中查询JS User Script的方法:
在Github Gist中搜索
"==UserScript=="
。