磁力快显

在磁力宝、磁力管家、Skrbt、ØMagnet磁力网站的搜索列表增加磁力链接显示,方便下载资源。

目前為 2020-05-02 提交的版本,檢視 最新版本

// ==UserScript==
// @name         磁力快显
// @namespace    http://tampermonkey.net/
// @description  在磁力宝、磁力管家、Skrbt、ØMagnet磁力网站的搜索列表增加磁力链接显示,方便下载资源。
// @author       zxf10608
// @version      1.7
// @require      https://cdn.bootcss.com/jquery/3.4.1/jquery.min.js
// @homepageURL  https://greasyfork.org/zh-CN/scripts/397490
// @include      *://cilibao.biz/*
// @include      https://www.ciliguanjia.icu/*
// @include      *://skrbt*.icu/*
// @include      *://0mag.net/search*
// @grant        GM_xmlhttpRequest
// @connect      0mag.net
// @grant        GM_setClipboard 
// @grant        GM_notification
// @run-at       document-end
// ==/UserScript==

(function() {
	
	var href1 = location.href.indexOf('cilibao');
	var href2 = location.href.indexOf('ciliguanjia');
	var href3 = location.href.indexOf('skrbt');
	var href4 = location.href.indexOf('0mag.net/search');
		
	if (href1 != -1 || href2 != -1 || href3 != -1) {
        var magnet2 = function() {
			if (href3 != -1) {
				var hrefx = '.result-resource-title';//减少skrbt干扰元素
				$('.result-resource-meta-info').find("a:contains('磁力链接')").hide();//隐藏原有假“磁力链接”
					} else {
					var hrefx = 'a[href*=\'detail\'],a[href*=\'cili-\']';
					};
				
                $(hrefx).each(function() {
					if ($(this).attr('href').indexOf('cili-')>0){
						$(this).attr('href', $(this).attr('href').replace('/cili-', '/detail/'));
					}//匹配磁力管家
                    var torrent2Href = $(this).attr('href');
					var temp2Link = torrent2Href.split('/detail/');
					if (href3 != -1) {	
						var magnetHref = 'magnet:?xt=urn:btih:' + temp2Link[1].substring(6,46);	
						} else {
						var magnetHref = 'magnet:?xt=urn:btih:' + temp2Link[1].substring(0,40);
						}
					$(this).after('<a class="copy" data-href='+magnetHref+' href="javascript: void(0);" target="_blank" style="display:inline-block;" title="复制磁力链接">&nbsp;复制</a>');
					$(this).after('<a href="' + magnetHref + 'class="magnet" " target="_blank">&nbsp;&nbsp;磁力链接</a>');
					$('.search-tips,#cps-wrap').hide();//隐藏磁力宝广告元素
                });
		};
		magnet2();
	};
	
	//ØMagnet
	if (href4 != -1) {
		var magnetCall = function(href,callback) {
			GM_xmlhttpRequest({ 
				method: "GET",
				url: href,
				onload: function(data,status) {
					if(data.readyState==4 && data.status==200){
						var txt = data.responseText;
						var hashtemp = txt.split('data=');
						var magnetHref =hashtemp[1].substring(0,60);
						callback(null,magnetHref);
					};
				},
				onerror: function (error) {//加载失败
					callback(error);
				},
				ontimeout: function (error) {//请求超时
					callback(error);
				},
			});
		};
		
		var magnetEl = $('a[href*="0mag.net/!"]');
		console.log('磁力链接有'+magnetEl.length+'个');
		$(document).ready(function(){
			magnetEl.attr({'target':'_blank','style':'display:inline-block;'});
		});
		
		magnetEl.each(function(i) {
			var tempLink = $(this).attr('href');	
			magnetCall(tempLink,function(error,magnetHref) {
				if (error) {
				  console.log('异步加载请求失败');  
				  return
				  };
				magnetEl.eq(i).after('<a target="_blank" class="copy" data-href='+magnetHref+' href="javascript: void(0);" style="display:inline-block;" title="复制磁力链接">&nbsp;复制</a>');
				magnetEl.eq(i).after('<a href='+magnetHref+' class="magnet" target="_blank" style="display:inline-block;">&nbsp;&nbsp;磁力链接</a>');
				
			});
			
 			if (i>15){
				
				console.log('磁力链接过多,已停止异步加载');
				return false;
			}; 
			
		});
	};	
	
	// 复制磁力链接
	$('body').on('click','.copy', function(event) {
		GM_setClipboard($(this).data('href'));
		GM_notification({
			title:'磁力快显提示:',
			text:'磁力链接复制成功!',
			timeout:2000,
		});
	});
	

	
})();