// ==UserScript== // @name Download Youtube videos and subtitles // @namespace https://www.findhao.net // @version 0.3.0 // @description 获取youtube视频和字幕的下载链接 // @include http://www.youtube.com/* // @include https://www.youtube.com/* // @require http://ajax.googleapis.com/ajax/libs/jquery/1.9.1/jquery.min.js // @exclude http://www.youtube.com/embed/* // @exclude https://www.youtube.com/embed/* // @match http://www.youtube.com/* // @match https://www.youtube.com/* // @match http://s.ytimg.com/yts/jsbin/html5player* // @match https://s.ytimg.com/yts/jsbin/html5player* // @match http://manifest.googlevideo.com/* // @match https://manifest.googlevideo.com/* // @match http://*.googlevideo.com/videoplayback* // @match https://*.googlevideo.com/videoplayback* // @match http://*.youtube.com/videoplayback* // @match https://*.youtube.com/videoplayback* // @copyright 2017+, Find // @author FindHao // @downloadURL none // ==/UserScript== $(document).ready(function () { var BUTTON_TEXT = { 'ar': 'تنزيل', 'cs': 'Stáhnout', 'de': 'Herunterladen', 'en': 'Download', 'es': 'Descargar', 'fr': 'Télécharger', 'hi': 'डाउनलोड', 'hu': 'Letöltés', 'id': 'Unduh', 'it': 'Scarica', 'ja': 'ダウンロード', 'ko': '내려받기', 'pl': 'Pobierz', 'pt': 'Baixar', 'ro': 'Descărcați', 'ru': 'Скачать', 'tr': 'İndir', 'zh': '下载', 'zh-TW': '下載' }; var BUTTON_TOOLTIP = { 'ar': 'تنزيل هذا الفيديو', 'cs': 'Stáhnout toto video', 'de': 'Dieses Video herunterladen', 'en': 'Download this video', 'es': 'Descargar este vídeo', 'fr': 'Télécharger cette vidéo', 'hi': 'वीडियो डाउनलोड करें', 'hu': 'Videó letöltése', 'id': 'Unduh video ini', 'it': 'Scarica questo video', 'ja': 'このビデオをダウンロードする', 'ko': '이 비디오를 내려받기', 'pl': 'Pobierz plik wideo', 'pt': 'Baixar este vídeo', 'ro': 'Descărcați acest videoclip', 'ru': 'Скачать это видео', 'tr': 'Bu videoyu indir', 'zh': '下载此视频', 'zh-TW': '下載此影片' }; var RANDOM = 7489235179; // Math.floor(Math.random()*1234567890); var CONTAINER_ID = 'download-youtube-video' + RANDOM; function isMaterial() { var temp; temp = document.querySelector("ytd-app, [src*='polymer'],link[href*='polymer']"); if (temp && !document.getElementById("material-notice")) { return true; } return false; } function init() { unsafeWindow.caption_array = []; inject_our_script(); first_load = false; } function inject_our_script() { var div_www_findyoutube_net = document.createElement('div'), buttonElement = document.createElement('button'); controls = document.getElementById('watch7-headline'); // Youtube video title DIV div_www_findyoutube_net.setAttribute('style', `display: table; margin-top:4px; border: 1px solid rgb(0, 183, 90); cursor: pointer; color: rgb(255, 255, 255); border-top-left-radius: 3px; border-top-right-radius: 3px; border-bottom-right-radius: 3px; border-bottom-left-radius: 3px; background-color: #00B75A; padding: 4px; padding-right: 8px; `); var form1 = document.createElement("form"); form1.id = "post"; form1.name = "post"; form1.method = "post"; form1.target = "_blank"; form1.action = "http://www.findyoutube.net/"; var input = document.createElement("input"); input.type = "hidden"; input.name = "url"; input.value = window.location.href; document.body.appendChild(form1); form1.appendChild(input); buttonElement.id = "www-findyoutube-net-button"; buttonElement.className = "style-scope ytd-button-renderer style-default"; buttonElement.innerHTML = "Download video and subtitles"; buttonElement.setAttribute('style', "width:300px;height:30px;"); div_www_findyoutube_net.id = 'youtube-downloader-by-findyoutube-net'; buttonElement.addEventListener('click', function () { form1.submit(); }, false); div_www_findyoutube_net.appendChild(buttonElement); // put