您需要先安装一个扩展,例如 篡改猴、Greasemonkey 或 暴力猴,之后才能安装此脚本。
您需要先安装一个扩展,例如 篡改猴 或 暴力猴,之后才能安装此脚本。
您需要先安装一个扩展,例如 篡改猴 或 暴力猴,之后才能安装此脚本。
您需要先安装一个扩展,例如 篡改猴 或 Userscripts ,之后才能安装此脚本。
您需要先安装一款用户脚本管理器扩展,例如 Tampermonkey,才能安装此脚本。
您需要先安装用户脚本管理器扩展后才能安装此脚本。
I'm sick of right clicking download or resorting to the shitty 1 click downloader (which doesn't use the timestamp filename) for my cartoons
// ==UserScript== // @name Dump shit // @version 1.1 // @description I'm sick of right clicking download or resorting to the shitty 1 click downloader (which doesn't use the timestamp filename) for my cartoons // @author Ayoholup // @match *://*/* // @grant GM_download // @require https://code.jquery.com/jquery-3.1.1.min.js // @namespace https://gf.qytechs.cn/users/476679 // ==/UserScript== (function() { const HOTKEY = "NumpadMultiply"; let previews4Chan = (src) => { let spl = src.split("."); let filename = spl[spl.length - 2]; let hasS = filename.substr(filename.length - 1).toLowerCase() == "s"; if (hasS) { spl[spl.length-2] = spl[spl.length-2].slice(0, -1); } return spl.join("."); }; //forceExt is to bruce force all extensions in the array below. //not needed for tiktok as videos only have 1 extension and is provided before calling the download function. let download = (url, filename, forceExt = false) => { if (!forceExt) { //runs if you know the specific file extension needed. GM_download({ url: url, name: filename, onload: () => console.log(`${filename} worked out fine`) }); } else { //brute forces all the following file extensions. Only 1 will work so no duplicates i hope let ext = ["jpg", "jpeg", "png", "gif", "webm", "mp4"].forEach((ext) => { let newURL = url.substring(0, url.lastIndexOf(".") + 1) + ext; let newFilename = filename.substring(0, filename.lastIndexOf(".") + 1) + ext; GM_download({ url: newURL, name: newFilename, onload: () => console.log(`${newFilename} worked out fine`), onerror: (error, details) => console.log(error, details) }); }); } } let parseImg = (e) => { if (e.code == HOTKEY) { let hover = Array.from(document.querySelectorAll(":hover")); hover.forEach((el) => { //images and stuff (4chan etc...) if (el.tagName.toLowerCase() == "img") { let src = el.currentSrc; //Downloads full image if hovering over preview if (window.location.hostname.includes("4chan")) { src = previews4Chan(src); } //filename without extension, will be brute forced later. let filename = src.split("/").pop(); console.log(`Downloading URL: ${src} into Filename: ${filename}`); download(src, filename, forceURLExt = true); } }); } }; document.addEventListener("keydown", parseImg); })();
QingJ © 2025
镜像随时可能失效,请加Q群300939539或关注我们的公众号极客氢云获取最新地址