1

Я ищу скрипт для обхода ссылок, предоставленных сайтом 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 ответ1

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/368527 на 1short.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","");

(т.е. замена 600 на 800) это исправит.

Всё ещё ищете ответ? Посмотрите другие вопросы с метками .