您需要先安装一个扩展,例如 篡改猴、Greasemonkey 或 暴力猴,之后才能安装此脚本。
您需要先安装一个扩展,例如 篡改猴 或 暴力猴,之后才能安装此脚本。
您需要先安装一个扩展,例如 篡改猴 或 暴力猴,之后才能安装此脚本。
您需要先安装一个扩展,例如 篡改猴 或 Userscripts ,之后才能安装此脚本。
您需要先安装一款用户脚本管理器扩展,例如 Tampermonkey,才能安装此脚本。
您需要先安装用户脚本管理器扩展后才能安装此脚本。
#1 Change dl=0 to dl=1 #2 Add Textarea with the list of links and wget preppended (so just cut and paste into the command line)
// ==UserScript== // @name DropBox Link Converter & Mass Downloader w Button // @namespace http://tampermonkey.net/ // @version 0.3 // @description #1 Change dl=0 to dl=1 #2 Add Textarea with the list of links and wget preppended (so just cut and paste into the command line) // @author sharmanhall // @license MIT // @connect gf.qytechs.cn // @connect sleazyfork.org // @connect github.com // @connect openuserjs.org // @match *://*.dropbox.com/* // @grant none // @icon https://cf.dropboxstatic.com/static/images/icons/blue_dropbox_glyph-vflJ8-C5d.png // ==/UserScript== //This updated script adds a button to the page labeled "Convert Links and Download." When the button is clicked, the script scrolls to the bottom of the page to load more links, converts the links to direct download links, and adds a textarea to the page with the list of links. The links are also formatted with `wget` so that they can be used in the command line. The button is temporarily disabled after the links are converted and re-enabled after a few seconds. //Please note that this script is designed to work on Dropbox pages that match the URL pattern specified in the `@match` directive (`*://*.dropbox.com/*`). If you encounter any issues, please make sure that the script is running on the appropriate Dropbox page. (function() { 'use strict'; const SECONDS_TO_WAIT_FOR_SCROLL = 1; // adjust as needed const DOWNLOAD_URL_REPLACEMENT = '?dl=1'; // function to get all link elements function getLinks() { const links = document.querySelectorAll('a.dig-Link.sl-link--file[href*="dl=0"]'); return Array.from(links).map(link => link.getAttribute('href').replace(/\?dl=0$/, DOWNLOAD_URL_REPLACEMENT)); } // function to scroll to the bottom of the page and wait for new links to load async function waitForLinksToLoad() { window.scrollTo(0, document.body.scrollHeight); await new Promise(resolve => setTimeout(resolve, SECONDS_TO_WAIT_FOR_SCROLL * 1000)); } // create an array to hold the links let links = []; // add a button to the page that will convert the links and add the textarea when clicked const convertButton = document.createElement('button'); convertButton.classList.add('dig-Button', 'dig-Button--primary', 'dig-Button--standard', 'convert-links-button'); convertButton.textContent = 'Convert Links and Download'; convertButton.style.position = 'fixed'; convertButton.style.bottom = '20px'; convertButton.style.right = '20px'; convertButton.style.zIndex = '9999'; document.body.appendChild(convertButton); // add a click event listener to the button convertButton.addEventListener('click', async function() { let finished = false; let numLinks = 0; while (!finished) { // scroll to the bottom of the page and wait for new links to load await waitForLinksToLoad(); // get the newly loaded links const newLinks = getLinks().filter(url => !links.includes(url)); links.push(...newLinks); // check if all links have been loaded finished = newLinks.length === 0; numLinks += newLinks.length; } // create and append textarea with the list of links const mycopy = document.createElement("textarea"); mycopy.name = "mycopy"; mycopy.id = "mycopy"; mycopy.maxLength = "50000"; mycopy.cols = "180"; mycopy.rows = "40"; mycopy.value = links.map(link => `wget "${link}";`).join('\n'); document.body.appendChild(mycopy); // disable the button and change the text to indicate that the links have been converted convertButton.disabled = true; convertButton.textContent = `${numLinks} link(s) converted`; // enable the button again after 3 seconds setTimeout(function() { links = []; convertButton.disabled = false; convertButton.textContent = 'Convert Links and Download'; }, 3000); }); })();
QingJ © 2025
镜像随时可能失效,请加Q群300939539或关注我们的公众号极客氢云获取最新地址