如何绕过带有广告的 URL 缩短器?

如何绕过带有广告的 URL 缩短器?

我正在寻找一个脚本来绕过网站提供的链接1short.us直接获取下载链接。

例如:http://1short.us/368527

有什么办法可以做到这一点?

我找到了这个用户脚本,但是它无法绕过第二页。

// @namespace      TecHPrO
// @description    Short Script Bypass u can add any site using this script
// @include        http://1short.us/*
// ==/UserScript==


var n=location.pathname;
var exp= /m1.php/;
var x= n.search(exp);

if (x != -1)
{
var l=document.getElementsByName('groovybtn1')[0];
var s = l.getAttribute('onclick');
var s1= s.split("(\'");
var s2= s1[1];
var s3= s2.split("\',\'");
var s4= s3[0];
window.location= s4;}

else {
var p=location.href;
var c=p.split("http://");
var c1=c[0];
var c2=c[1].split("/");
var c3=c2[0];
var c4=c2[1]
window.location="http://"+c3+"/m1.php?id="+c4;
}

我找到了第二个用户脚本,但它附加','name','800','800','yes');return%20false到了最终的 URL。

代码如下:

// ==UserScript==
    // @name        1short.us
    // @namespace   1short.us/*
    // @include     http://1short.us/*
    // @version     1
    // ==/UserScript==

/*! jQuery v1.8.3 jquery.com | jquery.org/license */

/* Contents of http://code.jquery.com/jquery-1.8.3.min.js */

    //this is the place to work in lets test
//"NewWindow('mediafire_fix.php?url=http://www.mediafire.com/?a0unhxiksg47ejg','name','800','600','yes');return false"
var link =location.href;
link=link.replace("http://1short.us/","");
//alert(link);
var link2="";
$.get("http://1short.us/m1.php?",{'id':link} ,function(data){
    link2=$(data).find(':button').attr('onclick');
    link2=link2.replace("NewWindow('","");
    link2=link2.replace("','name','800','600','yes');return false","");
    location.href=link2
 });

答案1

用户脚本本身运行良好,但是标题不完整。

第一行应该是:

// ==UserScript==
// @namespace      TecHPrO
// @description    Short Script Bypass u can add any site using this script
// @include        http://1short.us/*
// ==/UserScript==

请注意,第一行缺失。这会导致标题被忽略,因此脚本将应用于全部网站。要正常工作,它应该仅限于1short.us域中的网站。

事实上,用户脚本从 重定向1short.us/3685271short.us/m1.php?id=368527,并从 重定向到turbobit.net/aveyd9fs89oc.html。到目前为止,一切顺利。它应该在这里停止。

然而,由于缺少标头,else语句块if会再次执行,并且脚本会重定向到turbobit.net/m1.php?id=aveyd9fs89oc.html。这会导致 404。


第二个用户脚本不起作用,因为 1short 显然改变了其新浏览器窗口的大小。对网站的任何更改都可能使用户脚本失效。

在这种情况下,

link2=link2.replace("','name','800','600','yes');return false","");

应该删除 URL 中不需要的部分,但实际的 URL 结尾是:

','name','800','800','yes');return false

将用户脚本的该行更改为

link2=link2.replace("','name','800','800','yes');return false","");

(即,用 替换600800将修复该问题。

相关内容