复制磁力链接

一键复制页面内所有磁力链接(自动过滤重复磁力链接)

目前为 2024-09-04 提交的版本。查看 最新版本

  1. // ==UserScript==
  2. // @name 复制磁力链接
  3. // @description 一键复制页面内所有磁力链接(自动过滤重复磁力链接)
  4. // @namespace maomao1996.copy-magnet-link
  5. // @version 1.0.1
  6. // @author maomao1996
  7. // @homepage https://github.com/maomao1996/tampermonkey-scripts
  8. // @supportURL https://github.com/maomao1996/tampermonkey-scripts/issues
  9. // @license MIT
  10. // @match *://*/*
  11. // @exclude *://localhost:*/*
  12. // @exclude *://127.0.0.1:*/*
  13. // @exclude *://0.0.0.0*
  14. // @exclude *://192.168.*
  15. // @grant GM_addStyle
  16. // @grant GM_setClipboard
  17. // @grant GM_notification
  18. // ==/UserScript==
  19. !function() {
  20. "use strict";
  21. var css_248z = '.femm-copy-magnet-link{bottom:30vh;cursor:pointer;opacity:.5;position:fixed;right:18px;transform:translateX(40px);transition:transform .3s,opacity .2s;z-index:1996}.femm-copy-magnet-link:after{bottom:0;content:"";display:block;left:0;position:absolute;top:0;width:150%}.femm-copy-magnet-link:before{background-color:rgba(0,0,0,.85);border-radius:6px;bottom:120%;color:#e6f4ff;content:attr(tips);display:none;font-size:12px;padding:8px;position:absolute;right:0;text-align:center;transition:opacity .25s .1s;white-space:nowrap;z-index:1}.femm-copy-magnet-link:hover{opacity:1;transform:translateX(10px)}.femm-copy-magnet-link:hover:before{display:block}.femm-copy-magnet-link-btn{align-items:center;background-color:#fff;border-radius:50%;box-shadow:0 6px 16px 0 rgba(0,0,0,.08),0 3px 6px -4px rgba(0,0,0,.12),0 9px 28px 8px rgba(0,0,0,.05);display:flex;font-size:16px;height:40px;justify-content:center;overflow:hidden;transition:background-color .2s;width:40px}.femm-copy-magnet-link-btn:hover{background-color:rgba(0,0,0,.06)}';
  22. !function(css, ref) {
  23. void 0 === ref && (ref = {});
  24. var insertAt = ref.insertAt;
  25. if (css && "undefined" != typeof document) {
  26. var head = document.head || document.getElementsByTagName("head")[0], style = document.createElement("style");
  27. style.type = "text/css", "top" === insertAt && head.firstChild ? head.insertBefore(style, head.firstChild) : head.appendChild(style),
  28. style.styleSheet ? style.styleSheet.cssText = css : style.appendChild(document.createTextNode(css));
  29. }
  30. }(css_248z), function() {
  31. if (window.self === window.top) {
  32. GM_addStyle(css_248z);
  33. var message = function(text) {
  34. text && GM_notification({
  35. timeout: 2e3,
  36. text: text
  37. });
  38. }, getMagnetUrls = function(selectors) {
  39. return selectors ? (selectors.innerHTML.match(/[0-9a-fA-F]{40}/gm) || []).map((function(s) {
  40. return "magnet:?xt=urn:btih:" + s.replace(/&.+/gm, "");
  41. })) : [];
  42. };
  43. getMagnetUrls(document.querySelector("body")).length && (document.querySelector("#femm-copy-magnet-link") || document.querySelector("body").insertAdjacentHTML("beforeend", '<div id="femm-copy-magnet-link" class="femm-copy-magnet-link" tips="\u590d\u5236\u9875\u9762\u5185\u7684\u78c1\u529b\u94fe\u63a5"><div class="femm-copy-magnet-link-btn"><svg viewBox="64 64 896 896" focusable="false" data-icon="copy" width="1em" height="1em" fill="currentColor" aria-hidden="true"><path d="M232 706h142c22.1 0 40 17.9 40 40v142h250V264H232v442z" fill="#e6f4ff"></path><path d="M832 64H296c-4.4 0-8 3.6-8 8v56c0 4.4 3.6 8 8 8h496v688c0 4.4 3.6 8 8 8h56c4.4 0 8-3.6 8-8V96c0-17.7-14.3-32-32-32z" fill="#1677ff"></path><path d="M704 192H192c-17.7 0-32 14.3-32 32v530.7c0 8.5 3.4 16.6 9.4 22.6l173.3 173.3c2.2 2.2 4.7 4 7.4 5.5v1.9h4.2c3.5 1.3 7.2 2 11 2H704c17.7 0 32-14.3 32-32V224c0-17.7-14.3-32-32-32zM350 856.2L263.9 770H350v86.2zM664 888H414V746c0-22.1-17.9-40-40-40H232V264h432v624z" fill="#1677ff"></path></svg></div></div>'),
  44. document.querySelector("#femm-copy-magnet-link").addEventListener("click", (function() {
  45. var magnet = getMagnetUrls(document.querySelector("body"));
  46. document.querySelectorAll("iframe").forEach((function(iframe) {
  47. try {
  48. ("" === iframe.src || iframe.src.includes(location.host)) && (magnet = magnet.concat(getMagnetUrls(iframe.contentWindow.document.body)));
  49. } catch (error) {
  50. console.log("\u83b7\u53d6 iframe \u5f02\u5e38", error);
  51. }
  52. }));
  53. var totalLength = magnet.length;
  54. window.Set && (magnet = Array.from(new Set(magnet))), magnet.length ? GM_setClipboard(magnet.join("\n"), "text", (function() {
  55. return message("\u78c1\u529b\u603b\u6570: ".concat(totalLength, "\n\u91cd\u590d\u78c1\u529b: ").concat(totalLength - magnet.length, "\n\u5df2\u6210\u529f\u590d\u5236 ").concat(magnet.length, " \u6761\u78c1\u529b\u94fe\u63a5"));
  56. })) : message("\u5f53\u524d\u9875\u9762\u6ca1\u6709\u78c1\u529b\u94fe\u63a5");
  57. })));
  58. }
  59. }();
  60. }();

QingJ © 2025

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