您需要先安装一个扩展,例如 篡改猴、Greasemonkey 或 暴力猴,之后才能安装此脚本。
您需要先安装一个扩展,例如 篡改猴 或 暴力猴,之后才能安装此脚本。
您需要先安装一个扩展,例如 篡改猴 或 暴力猴,之后才能安装此脚本。
您需要先安装一个扩展,例如 篡改猴 或 Userscripts ,之后才能安装此脚本。
您需要先安装一款用户脚本管理器扩展,例如 Tampermonkey,才能安装此脚本。
您需要先安装用户脚本管理器扩展后才能安装此脚本。
Adds a download button that lets you download all images in a gallery.
当前为
// ==UserScript== // @name Derpibooru - Download All // @namespace Selbi // @include http*://*derpiboo.ru/* // @include http*://*derpibooru.org/* // @version 1.1 // @description Adds a download button that lets you download all images in a gallery. // ==/UserScript== const INTERVAL_TIME = 1000; const URL_NAME = location.protocol + "//" + location.hostname + location.pathname; $(".metabar:eq(0)").append('<a href="javascript:void()" id="GetAllLinks">Get All Links</a> <a href="javascript:void()" id="StartDownload" style="display:none">Start Download!</a>'); var pagecount = (/\d+/).exec($(".last a").attr("href")); if (pagecount == null) pagecount = 1; var linksarr = []; var i = 0; $("#GetAllLinks").click(function(){ $(this).attr('style', 'pointer-events:none; cursor:default;').html("Grabbings Links... (0)"); for (var int=1; int<=pagecount; int++){ $.ajax({ async: false, type: 'GET', url: URL_NAME + "?page=" + int, success: function(data){ $(".image_container", data).each(function(){ linksarr.push($(this).attr("data-download-uri")); $("#GetAllLinks").html("Grabbings Links... (" + linksarr.length + ")"); }); } }); } $("#GetAllLinks").hide(); $("#StartDownload").html("Start Download! (0/" + linksarr.length + ") [Warning: Opens a new tab for each image!]").show(); }); function downloadImage(){ window.open(linksarr[i], '_blank'); // GM_openInTab(linksarr[i]); $("#StartDownload").html("Downloading... (" + (i+1) + "/" + linksarr.length + ")"); i++; if (i < (linksarr.length)) { setTimeout(function(){downloadImage()}, INTERVAL_TIME); } else { $("#StartDownload").attr('style', 'pointer-events:none; cursor:default;').html("Finished Download! (" + i + "/" + linksarr.length + ")"); } } $("#StartDownload").click(function(){ $(this).html("Downloading... (0/" + linksarr.length + ")"); setTimeout(function(){downloadImage()}, INTERVAL_TIME); var timer = setInterval(); });