Greasy Fork is available in English.

UploadrAr Auto Downloader

Automatically clicks download links for UploadrAr

  1. // ==UserScript==
  2. // @name UploadrAr Auto Downloader
  3. // @description Automatically clicks download links for UploadrAr
  4. // @author Magic <magicoflolis@tuta.io>
  5. // @license MIT
  6. // @namespace https://github.com/magicoflolis/userscriptrepo/tree/master/UploadrAr
  7. // @homepageURL https://github.com/magicoflolis/userscriptrepo/tree/master/UploadrAr
  8. // @supportURL https://github.com/magicoflolis/userscriptrepo/issues/new
  9. // @icon https://uploadrar.com/uploadrar_style/images/favicon.png
  10. // @match https://uploadrar.com/*
  11. // @exclude https://uploadrar.com/?op=*
  12. // @exclude https://uploadrar.com/make_money.html
  13. // @exclude https://uploadrar.com/pages/*
  14. // @version 1.1
  15. // @grant none
  16. // ==/UserScript==
  17.  
  18. // Options
  19. let Version = "free", // free (default) / premium
  20. fullAutoDownload = true, // true (default) / false
  21. afterDelay = 0; // 0 (default) / any #
  22.  
  23. // Userscript Code
  24. (() => {
  25. try {
  26. const delay = (ms) => {
  27. return new Promise(resolve => setTimeout(resolve, ms));
  28. },
  29. qs = async element => {
  30. while (document.querySelector(element) === null) {
  31. await new Promise(resolve => requestAnimationFrame(resolve));
  32. }
  33. return (afterDelay !== 0) ? delay(afterDelay).then(() => document.querySelector(element)) : document.querySelector(element);
  34. };
  35. let firstSel,secondSel;
  36. (Version !== "free") ? (
  37. firstSel = "input.xfs-premium-download",
  38. secondSel = "input.mngez-premium-download"
  39. ) : (
  40. firstSel = "input.xfs-free-download",
  41. secondSel = "input.mngez-free-download"
  42. )
  43. if(fullAutoDownload) {
  44. qs(firstSel).then(btn => {
  45. btn.click();
  46. });
  47. qs(secondSel).then(btn => {
  48. btn.click();
  49. });
  50. } else {
  51. qs(secondSel).then(btn => {
  52. btn.click();
  53. });
  54. };
  55. qs("span#direct_link > a").then(link => {
  56. window.open(link.href, "_blank");
  57. });
  58. } catch (e) {
  59. console.log("[%cUAD%c] %cERROR","color: rgb(29, 155, 240);","","color: rgb(249, 24, 128);",e)
  60. }
  61. })();