Greasy Fork is available in English.
提取该网页的所有磁力链接
// ==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);
})();