YouTube Download

On youtube click the download link to download youtube video.

  1. // ==UserScript==
  2. // @name YouTube Download
  3. // @namespace http://your.homepage/
  4. // @version 4.5.2
  5. // @description On youtube click the download link to download youtube video.
  6. // @author Henry Harris
  7. // @match https://www.youtube.com/*
  8. // @match http://9xbuddy.com/*
  9. // @grant none
  10. // @require http://ajax.googleapis.com/ajax/libs/jquery/1.11.1/jquery.min.js
  11. // @run-at document-end
  12. // ==/UserScript==
  13.  
  14.  
  15.  
  16.  
  17.  
  18. $(document).ready ( function(){
  19. // -----------------------Runs on YOUTUBE--------------------------------------------------------------
  20. var beforestop = false;
  21. var ThumbPRun = 0;
  22. var ThumbCurUrl;
  23. var WasPlaying;
  24. setInterval(function(){
  25. if(window.location.href.indexOf("you") > -1) {
  26. if ($('#container').length > 0) {
  27. if ($('#downloadlnk').length > 0) {
  28. } else {
  29. if ($('.html5-player-chrome').length > 0) {
  30. if ($('#vidctrls').length > 0) {
  31. } else{
  32. document.querySelector('div.html5-player-chrome').id = 'vidctrls';
  33.  
  34. var c = document.createElement('img');
  35. c.src = "http://upload.wikimedia.org/wikipedia/commons/thumb/c/ca/Egypt_governorates_blank.png/597px-Egypt_governorates_blank.png";
  36. c.height = "30";
  37. c.width = "10";
  38. var b = document.createElement('img');
  39. b.src = "http://images.clipartpanda.com/square-clip-art-black-and-white-0999d59a768fa638a6f16f4a44299e29.png";
  40. b.height = "30";
  41. b.width = "30";
  42. b.title = "Download this video";
  43. b.onclick = function () {
  44. window.open("http://9xbuddy.com/download?url=" + document.URL);
  45. };
  46.  
  47. document.getElementById("vidctrls").appendChild(c);
  48. document.getElementById("vidctrls").appendChild(b);
  49. }
  50. } else {
  51. var downdiv = document.createElement("div");
  52. downdiv.id = "downdiv";
  53. var a = document.createElement('a');
  54. var linkText = document.createTextNode("Download");
  55. a.appendChild(linkText);
  56. a.id = "downloadlnk";
  57. a.title = "Download this video";
  58. a.onclick = function () {
  59. window.open("http://9xbuddy.com/download?url=" + document.URL);
  60. };
  61. var br3 = document.createElement('br');
  62. document.getElementsByClassName("style-scope ytd-video-primary-info-renderer")[0].appendChild(br3);
  63. var br4 = document.createElement('br');
  64. document.getElementsByClassName("style-scope ytd-video-primary-info-renderer")[0].appendChild(br4);
  65. var setimg = document.createElement('img');
  66. setimg.width = 27;
  67. setimg.length = 27;
  68. setimg.src = "http://pngimages.net/sites/default/files/gear-logo-png-image-100818.png";
  69. var dwnimg = document.createElement('img');
  70. dwnimg.width = 27;
  71. dwnimg.length = 27;
  72. dwnimg.src = "http://www.clipartbest.com/cliparts/bTy/EX8/bTyEX8prc.png";
  73. var d = document.createElement('a');
  74. var linkText = document.createTextNode("Options");
  75. d.appendChild(linkText);
  76. d.id = "optionlnk";
  77. d.title = "Options";
  78. d.onclick = function () {
  79. var e = document.body;
  80. e.parentNode.removeChild(e);
  81. var body = document.createElement('body');
  82. document.getElementsByTagName('html')[0].appendChild(body);
  83. var chk1 = document.createElement('input');
  84. chk1.type = "checkbox";
  85. chk1.id = "chk1";
  86. document.getElementsByTagName('body')[0].appendChild(chk1);
  87. var label1 = document.createElement('label');
  88. //labe1l.htmlFor = "chk1";
  89. label1.appendChild(document.createTextNode('Auto HD + remove video ads'));
  90. document.getElementsByTagName('body')[0].appendChild(label1);
  91. var br = document.createElement('br');
  92. document.getElementsByTagName('body')[0].appendChild(br);
  93. var chk2 = document.createElement('input');
  94. chk2.type = "checkbox";
  95. chk2.id = "chk2";
  96. document.getElementsByTagName('body')[0].appendChild(chk2);
  97. var label2 = document.createElement('label');
  98. //labe12.htmlFor = "chk2";
  99. label2.appendChild(document.createTextNode('Loop videos'));
  100. document.getElementsByTagName('body')[0].appendChild(label2);
  101. var br4 = document.createElement('br');
  102. document.getElementsByTagName('body')[0].appendChild(br4);
  103. var chk3 = document.createElement('input');
  104. chk3.type = "checkbox";
  105. chk3.id = "chk3";
  106. document.getElementsByTagName('body')[0].appendChild(chk3);
  107. var label3 = document.createElement('label');
  108. //labe13.htmlFor = "chk2";
  109. label3.appendChild(document.createTextNode('Force Flash'));
  110. document.getElementsByTagName('body')[0].appendChild(label3);
  111. var br5 = document.createElement('br');
  112. document.getElementsByTagName('body')[0].appendChild(br5);
  113. var chk4 = document.createElement('input');
  114. chk4.type = "checkbox";
  115. chk4.id = "chk4";
  116. document.getElementsByTagName('body')[0].appendChild(chk4);
  117. var label4 = document.createElement('label');
  118. //labe1l.htmlFor = "chk1";
  119. label4.appendChild(document.createTextNode('Auto-Buffer'));
  120. document.getElementsByTagName('body')[0].appendChild(label4);
  121. var br3 = document.createElement('br');
  122. document.getElementsByTagName('body')[0].appendChild(br3);
  123. var chk5 = document.createElement('input');
  124. chk5.type = "checkbox";
  125. chk5.id = "chk5";
  126. document.getElementsByTagName('body')[0].appendChild(chk5);
  127. var label5 = document.createElement('label');
  128. //labe13.htmlFor = "chk2";
  129. label5.appendChild(document.createTextNode('Thumbnail Previews'));
  130. document.getElementsByTagName('body')[0].appendChild(label5);
  131. var br6 = document.createElement('br');
  132. document.getElementsByTagName('body')[0].appendChild(br6);
  133. var br2 = document.createElement('br');
  134. document.getElementsByTagName('body')[0].appendChild(br2);
  135. var appbtn = document.createElement('input');
  136. appbtn.type = "button";
  137. appbtn.value = "Apply";
  138. appbtn.onclick = function () {
  139. if (chk1.checked === true) {
  140. document.cookie =
  141. 'autohd=test; expires=Fri, 3 Aug 2050 20:47:11 UTC; path=/';
  142. } else {
  143. document.cookie = 'autohd=; expires=Thu, 01 Jan 1970 00:00:00 UTC; path=/';
  144. }
  145. if (chk2.checked === true) {
  146. document.cookie =
  147. 'loop=test; expires=Fri, 3 Aug 2050 20:47:11 UTC; path=/';
  148. } else {
  149. document.cookie = 'loop=; expires=Thu, 01 Jan 1970 00:00:00 UTC; path=/';
  150. }
  151. if (chk3.checked == true) {
  152. document.cookie =
  153. 'oldplyr=test; expires=Fri, 3 Aug 2050 20:47:11 UTC; path=/';
  154. } else {
  155. document.cookie = 'oldplyr=; expires=Thu, 01 Jan 1970 00:00:00 UTC; path=/';
  156. }
  157. if (chk3.checked === true && chk1.checked === true) {
  158. alert("Auto-HD and Old Player are incompatible, please disable one of them.");
  159. } else {
  160. location.reload();
  161. }
  162. if (chk4.checked == true) {
  163. document.cookie =
  164. 'abuff=test; expires=Fri, 3 Aug 2050 20:47:11 UTC; path=/';
  165. } else {
  166. document.cookie = 'abuff=; expires=Thu, 01 Jan 1970 00:00:00 UTC; path=/';
  167. }
  168. if (chk5.checked == true) {
  169. document.cookie =
  170. 'ThumbP=test; expires=Fri, 3 Aug 2050 20:47:11 UTC; path=/';
  171. } else {
  172. document.cookie = 'ThumbP=; expires=Thu, 01 Jan 1970 00:00:00 UTC; path=/';
  173. }
  174. };
  175. document.getElementsByTagName('body')[0].appendChild(appbtn);
  176. if (document.cookie.indexOf('autohd=')== -1) {
  177. chk1.checked = false;
  178. } else {
  179. chk1.checked = true;
  180. }
  181. if (document.cookie.indexOf('loop=')== -1) {
  182. chk2.checked = false;
  183. } else {
  184. chk2.checked = true;
  185. }
  186. if (document.cookie.indexOf('oldplyr=')== -1) {
  187. chk3.checked = false;
  188. } else {
  189. chk3.checked = true;
  190. }
  191. if (document.cookie.indexOf('abuff=')== -1) {
  192. chk4.checked = false;
  193. } else {
  194. chk4.checked = true;
  195. }
  196. if (document.cookie.indexOf('ThumbP=')== -1) {
  197. chk5.checked = false;
  198. } else {
  199. chk5.checked = true;
  200. }
  201. };
  202. //document.body.appendChild(a);
  203. document.getElementsByClassName("style-scope ytd-video-primary-info-renderer")[0].appendChild(downdiv);
  204. console.log("TEST: " + document.getElementsByClassName("style-scope ytd-video-primary-info-renderer")[0]);
  205. document.getElementById("downdiv").appendChild(dwnimg);
  206. document.getElementById("downdiv").appendChild(a);
  207. document.getElementById("downdiv").appendChild(br3);
  208. document.getElementById("downdiv").appendChild(br4);
  209. document.getElementById("downdiv").appendChild(setimg);
  210. document.getElementById("downdiv").appendChild(d);
  211. document.getElementById("downloadlnk").style.fontSize = "x-large";
  212. document.getElementById("optionlnk").style.fontSize = "x-large";
  213. document.getElementById("downloadlnk").style.cursor = "pointer";
  214. document.getElementById("optionlnk").style.cursor = "pointer";
  215. var br1 = document.createElement('br');
  216. document.getElementsByClassName("style-scope ytd-video-primary-info-renderer")[0].appendChild(br1);
  217. var br2 = document.createElement('br');
  218. document.getElementsByClassName("style-scope ytd-video-primary-info-renderer")[0].appendChild(br2);
  219. }
  220. }
  221. }
  222. }
  223.  
  224. if (document.cookie.indexOf('autohd=')== -1) {
  225. //no cookie
  226. } else {
  227. if (beforestop == false) {
  228. var myNode = document.getElementById("movie_player");
  229. while (myNode.firstChild) {
  230. myNode.removeChild(myNode.firstChild);
  231. beforestop = true;
  232. }
  233.  
  234. var url = document.URL;
  235. url = url.substring(0, url.length - 8);
  236. var vidid = url.substring(url.indexOf('=')+1);
  237. var player = document.createElement('iframe');
  238. player.id = "player1";
  239. player.width = "1920";
  240. player.height = "1080";
  241. player.src = "https://www.youtube.com/embed/" + vidid + "?rel=0&autoplay=1&VQ=HD720";
  242. player.frameborder = "0";
  243. document.getElementById("movie_player").appendChild(player);
  244. document.getElementById("player1").setAttribute("allowfullscreen", "true");
  245. setTimeout(function(){
  246. document.getElementById("player1").width = "855";
  247. document.getElementById("player1").height = "480";
  248. }, 15000);
  249. }
  250. var url = document.URL;
  251. var idtest = url.substring(url.indexOf('=')+1);
  252. if (idtest === vidid){
  253. } else {
  254. }
  255. }
  256. if (document.URL.indexOf('watch?v=') > -1) {
  257. if (document.cookie.indexOf('oldplyr=')== -1) {
  258. if (document.URL.indexOf("&nohtml5=1") > -1) {
  259. var strpos = document.URL.indexOf("&nohtml5=1");
  260. //strpos = strpos + 9;
  261. var nurl = "";
  262. for (i = 0; i <= document.URL.length; i++) {
  263. if (i >= strpos && i <= strpos + 9) {
  264. //delete by ignoring
  265. } else {
  266. nurl = nurl + document.URL.charAt(i);
  267. }
  268. }
  269. window.location.assign(nurl);
  270. console.log(nurl);
  271. }
  272. } else {
  273. if (document.URL.indexOf("&nohtml5=1") > -1) {
  274. } else {
  275. window.location.assign(document.URL + "&nohtml5=1");
  276. }
  277. }
  278. }
  279. }, 2000);
  280. setInterval(function(){
  281. if (document.cookie.indexOf('autohd=')== -1) {
  282. } else {
  283. if(window.location.href.indexOf("you") > -1) {
  284. if(window.location.href.indexOf("embed") > -1) {
  285. } else {
  286. if(window.location.href.indexOf("reldone") > -1) {
  287. } else {
  288. window.location.assign(document.URL + "#reldone");
  289. location.reload();
  290. }
  291. }
  292. }
  293. }
  294. }, 4000);
  295. //ThumbP Code
  296. setInterval(function(){
  297. if (document.cookie.indexOf('ThumbP=')== -1) {
  298. } else {
  299. if(window.location.href.indexOf("you") > -1) {
  300. if(window.location.href.indexOf("watch") > -1) { //video pages
  301. if (document.getElementsByClassName("yt-uix-simple-thumb-wrap yt-uix-simple-thumb-related").length == ThumbPRun) {
  302. } else {
  303. var vwidth = document.getElementsByClassName("yt-uix-simple-thumb-wrap yt-uix-simple-thumb-related")[ThumbPRun].children[0].width;
  304. var vheight = document.getElementsByClassName("yt-uix-simple-thumb-wrap yt-uix-simple-thumb-related")[ThumbPRun].childNodes[0].height;
  305. //document.getElementsByClassName("yt-thumb-simple")[ThumbPRun].removeChild(document.getElementsByClassName("yt-thumb-simple")[ThumbPRun].children[0]); -delete thumbnail image (old)
  306. var Tvid = document.createElement("iframe");
  307. Tvid.src = "https://www.youtube.com/embed/" + document.getElementsByClassName("yt-uix-simple-thumb-wrap yt-uix-simple-thumb-related")[ThumbPRun].parentNode.href.split('=')[1] + "?controls=0&iv_load_policy=3&autoplay=1&showinfo=0&vq=small#ThumbP";
  308. Tvid.width = vwidth;
  309. Tvid.height = vheight;
  310. Tvid.style.display = "none";
  311. document.getElementsByClassName("yt-uix-simple-thumb-wrap yt-uix-simple-thumb-related")[ThumbPRun].appendChild(Tvid);
  312. document.getElementsByClassName("yt-uix-simple-thumb-wrap yt-uix-simple-thumb-related")[ThumbPRun].onmouseout=function(){
  313. this.children[0].style.display = "inline";
  314. this.children[1].style.display = "none";
  315. if (WasPlaying === true) {
  316. document.getElementsByClassName("video-stream html5-main-video")[0].play();
  317. WasPlaying = false;
  318. }
  319. };
  320. document.getElementsByClassName("yt-uix-simple-thumb-wrap yt-uix-simple-thumb-related")[ThumbPRun].onmouseover=function(){
  321. this.children[0].style.display = "none";
  322. this.children[1].style.display = "inline";
  323. if (document.getElementsByClassName("video-stream html5-main-video")[0].paused === false) {
  324. WasPlaying = true;
  325. document.getElementsByClassName("video-stream html5-main-video")[0].pause();
  326. }
  327. };
  328. ThumbPRun = ThumbPRun + 1
  329. }
  330. } else { // other pages
  331. if (document.getElementsByClassName("yt-thumb-simple").length == ThumbPRun) {
  332. } else {
  333. var vwidth = document.getElementsByClassName("yt-thumb-simple")[ThumbPRun].children[0].width;
  334. var vheight = document.getElementsByClassName("yt-thumb-simple")[ThumbPRun].childNodes[0].height;
  335. //document.getElementsByClassName("yt-thumb-simple")[ThumbPRun].removeChild(document.getElementsByClassName("yt-thumb-simple")[ThumbPRun].children[0]); -delete thumbnail image (old)
  336. var Tvid = document.createElement("iframe");
  337. Tvid.src = "https://www.youtube.com/embed/" + document.getElementsByClassName("yt-thumb-simple")[ThumbPRun].parentNode.parentNode.href.split('=')[1] + "?controls=0&iv_load_policy=3&autoplay=1&showinfo=0&vq=small#ThumbP";
  338. Tvid.width = vwidth;
  339. Tvid.height = vheight;
  340. Tvid.style.display = "none";
  341. document.getElementsByClassName("yt-thumb-simple")[ThumbPRun].appendChild(Tvid);
  342. document.getElementsByClassName("yt-thumb-simple")[ThumbPRun].onmouseout=function(){
  343. this.children[0].style.display = "inline";
  344. this.children[1].style.display = "none";
  345. };
  346. document.getElementsByClassName("yt-thumb-simple")[ThumbPRun].onmouseover=function(){
  347. this.children[0].style.display = "none";
  348. this.children[1].style.display = "inline";
  349. };
  350. ThumbPRun = ThumbPRun + 1
  351. }
  352. }
  353. }
  354. }
  355. }, 500);
  356. setInterval(function(){
  357. if (document.cookie.indexOf('ThumbP=')== -1) {
  358. } else {
  359. if(window.location.href.indexOf("embed") > -1) {
  360. } else {
  361. if (ThumbCurUrl == document.URL) {
  362.  
  363. } else {
  364. ThumbPRun = 0;
  365. ThumbCurUrl = document.URL;
  366. }
  367. }
  368. if(window.location.href.indexOf("ThumbP") > -1) {
  369. if(window.location.href.indexOf("embed") > -1) {
  370. if ($('#player:hover').length != 0) {
  371. document.getElementsByClassName("video-stream html5-main-video")[0].play();
  372. } else {
  373. document.getElementsByClassName("video-stream html5-main-video")[0].pause();
  374. }
  375. } else {
  376. }
  377. }
  378. }
  379. }, 200);
  380. setInterval(function(){
  381. if (window.location.href.indexOf("watch") > -1){
  382. if (document.cookie.indexOf('loop=')== -1){
  383. } else {
  384. var curtime = document.getElementsByClassName('ytp-time-current')[0].innerHTML;
  385. var endtime = document.getElementsByClassName('ytp-time-duration')[0].innerHTML;
  386. if (curtime === endtime){
  387. document.getElementsByClassName("ytp-play-button ytp-button")[0].click();
  388. }
  389. }
  390. }
  391. }, 1000);
  392. setInterval(function(){
  393. if (window.location.href.indexOf("embed") > -1){
  394. if (document.cookie.indexOf('loop=')== -1){
  395. } else {
  396. var curtime = document.getElementsByClassName('ytp-time-current')[0].innerHTML;
  397. var endtime = document.getElementsByClassName('ytp-time-duration')[0].innerHTML;
  398. if (curtime === endtime){
  399. document.getElementsByClassName("ytp-play-button ytp-button")[0].click();
  400. }
  401. }
  402. }
  403. }, 1000);
  404. function resetVid() {
  405. }
  406. var done = false;
  407. var cururl = document.URL;
  408. setInterval(function(){
  409. if (window.location.href.indexOf("you") > -1){
  410. if (document.cookie.indexOf('abuff=')== -1){
  411. } else {
  412. if (document.getElementsByClassName('ytp-load-progress')[0].style.transform === "scaleX(1)") {
  413. //setInterval(function(){
  414. if (done == false) {
  415. var vid = document.getElementsByClassName('video-stream html5-main-video')[0];
  416. if (vid.currentTime < 20) {
  417. document.getElementsByClassName('video-stream html5-main-video')[0].currentTime = 0;
  418. done = true;
  419. } else {
  420. var tt = document.getElementsByClassName('video-stream html5-main-video')[0].currentTime;
  421. var ttt = tt - 15;
  422. //alert(tt);
  423. //alert(ttt);
  424. document.getElementsByClassName('video-stream html5-main-video')[0].currentTime = ttt;
  425. }
  426. }
  427. //}, 1000);
  428. }
  429. if (document.getElementsByClassName('ytp-load-progress')[0].style.transform === "scaleX(1)") {
  430. } else {
  431. done = false;
  432. }
  433. if (document.getElementById("movie_player").style.display === "inline") {
  434. } else {
  435. document.getElementById("movie_player").style.display = "none";
  436. }
  437. if (cururl === document.URL) {
  438. } else {
  439. location.reload();
  440. }
  441. }
  442. }
  443. }, 2000);
  444. setInterval(function(){
  445. if (window.location.href.indexOf("you") > -1){
  446. if (document.cookie.indexOf('abuff=')== -1){
  447. } else {
  448. if (document.getElementById("movie_player").style.display === "none") {
  449. document.getElementsByClassName('video-stream html5-main-video')[0].muted = true;
  450. if (document.getElementsByClassName('ytp-load-progress')[0].style.transform === "scaleX(1)" && done == true) {
  451. document.getElementById("movie_player").style.display = "inline";
  452. document.getElementsByClassName('video-stream html5-main-video')[0].muted = false;
  453. document.getElementById("player-api").removeChild(document.getElementById("abuff-img-0"));
  454. }
  455. }
  456. }
  457. }
  458. }, 2000);
  459. //setTimeout(function(){
  460. if (window.location.href.indexOf("you") > -1){
  461. if (document.cookie.indexOf('abuff') > -1){
  462. var abuffimg = document.createElement("img");
  463. abuffimg.id = "abuff-img-0";
  464. //abuffimg.className = "player-height";
  465. abuffimg.src = "http://cfay-bus.weebly.com/files/theme/auto-buff.gif";
  466. document.getElementById("player-api").appendChild(abuffimg);
  467. document.getElementById("abuff-img-0").height = "480";
  468. document.getElementById("abuff-img-0").width = "854";
  469. }
  470. }
  471. //}, 4000);
  472. // --------------------------RUNS ON 9xbuddy TO DOWNLOAD VIDEO--------------------------------------------
  473. if(window.location.href.indexOf("buddy") > -1) {
  474. /*var iDiv = document.createElement('div');
  475.  
  476. iDiv.id = 'block';
  477. iDiv.className = 'block';
  478. document.getElementsByTagName('body')[0].appendChild(iDiv);
  479. iDiv.height = window.height();
  480. iDiv.width = window.width();
  481. $(iDiv).css({
  482. position: 'fixed',
  483. top: 0,
  484. right: 0,
  485. bottom: 0,
  486. left: 0,
  487. zIndex: 999
  488. });*/
  489.  
  490.  
  491.  
  492. //if(!$('#javaUserWarning').is(':visible')) {
  493. setInterval(function(){
  494. if ($(".download-link-list")[0]){
  495. var els = document.getElementsByClassName('download-link-download lbcolor');
  496. var element = $('.download-about-section li');
  497. var zali = element[1];
  498. var zalitext = zali.innerHTML;
  499. if (zalitext.match("VEVO")) {
  500. var li = els[1]
  501. li.id = 'dwnload';
  502. var t = $('#dwnload a').attr('href');
  503. } else {
  504. var li = els[2]
  505. li.id = 'dwnload';
  506. var t = $('#dwnload a').attr('href');
  507. }
  508. window.location = t
  509. setTimeout(function(){
  510. window.close();
  511. }, 2000);
  512. } else {
  513. //alert("test");
  514. }
  515. }, 3000);
  516. //document.getElementById("checkboxDisableJava1").checked = true;
  517.  
  518. // } else {
  519. // alert("Please check disable java applet and retry.");
  520. //}
  521. }
  522. });
  523.  
  524. // -----------------------Runs on YOUTUBE--------------------------------------------------------------
  525. //$(document).keydown(function (e) {
  526. // if (e.keyCode == 113) {
  527. //window.open("http://keepvid.com/?url=" + document.URL)
  528. // var a = document.createElement("a");
  529. //a.href = "http://catchvideo.net/?url=" + document.URL;
  530. //var evt = document.createEvent("MouseEvents");
  531. //evt.initMouseEvent("click", true, true, window, 0, 0, 0, 0, 0, true, false, false, false, 0, null);
  532. //a.dispatchEvent(evt);
  533. //}
  534. //});

QingJ © 2025

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