磁力链接提取器

提取该网页的所有磁力链接

このスクリプトの質問や評価の投稿はこちら通報はこちらへお寄せください。
// ==UserScript==
// @name         磁力链接提取器
// @namespace    http://tampermonkey.net/
// @version      1.0
// @description  提取该网页的所有磁力链接
// @match        http://*/*
// @match        https://*/*
// @grant        none
// @license      GPL-3.0 License
// ==/UserScript==

(function() {
  'use strict';

  // 提取磁力链接并显示在弹出窗口中
  function extractMagnetLinks() {
    var magnetLinks = [];

    // 遍历所有链接
    var linkElements = document.getElementsByTagName('a');
    for (var i = 0; i < linkElements.length; i++) {
      var linkElement = linkElements[i];
      var link = linkElement.href;
      if (link.startsWith('magnet:')) {
        magnetLinks.push(link);
      }
    }

    // 遍历所有文本节点
    var walker = document.createTreeWalker(document.body, NodeFilter.SHOW_TEXT, null, false);
    while (walker.nextNode()) {
      var node = walker.currentNode;
      var text = node.textContent.trim();
      if (text.startsWith('magnet:')) {
        magnetLinks.push(text);
      }
    }

    return magnetLinks;
  }

  function displayMagnetLinks(magnetLinks) {
    var popup = window.open('', 'magnetLinksPopup', 'width=800,height=600,scrollbars=yes,resizable=yes');
    popup.document.write('<html><head><title>磁力链接列表</title>');
    popup.document.write('<style>body {font-family: Arial, sans-serif; font-size: 14px; margin: 0; padding: 20px;}');
    popup.document.write('h1 {font-size: 24px; margin: 0 0 20px; padding: 0;}');
    popup.document.write('ul {margin: 0; padding: 0;}');
    popup.document.write('li {list-style-type: none; margin: 0 0 10px; padding: 0;}');
    popup.document.write('a {text-decoration: none; color: #333; font-weight: bold;}');
    popup.document.write('a:hover {color: #007bff;}</style>');
    popup.document.write('</head><body>');
    popup.document.write('<h1>磁力链接列表</h1>');
    popup.document.write('<ul>');
    magnetLinks.forEach(function(link) {
      popup.document.write('<li><a href="' + link + '">' + link + '</a></li>');
    });
    popup.document.write('</ul>');
    popup.document.write('</body></html>');
    popup.document.close();
  }

  // 创建提取磁力链接按钮
  var button = document.createElement('button');
  button.innerHTML = '提取磁力链接';
  button.style.position = 'fixed';
  button.style.bottom = '20px';
  button.style.right = '20px';
  button.style.zIndex = 9999;
  button.style.padding = '10px';
  button.style.borderRadius = '50%';
  button.style.boxShadow = '0 4px 6px rgba(0, 0, 0, 0.1)';
  button.style.backgroundColor = '#007bff';
  button.style.color = '#fff';
  button.style.fontFamily = 'Arial, sans-serif';
  button.style.fontSize = '14px';
  button.style.fontWeight = 'bold';
  button.style.cursor = 'pointer';

// 提取磁力链接按钮点击事件
button.addEventListener('click', function() {
var magnetLinks = extractMagnetLinks();
displayMagnetLinks(magnetLinks);
});

// 将按钮添加到页面中
document.body.appendChild(button);
})();