¿Cómo evitar un acortador de URL con publicidad?

¿Cómo evitar un acortador de URL con publicidad?

Estoy buscando un script para evitar los enlaces proporcionados por el sitio web.1short.uspara obtener el enlace de descarga directamente.

Por ejemplo:http://1short.us/368527

¿Hay alguna forma de hacer eso?

Encontré este script de usuario, pero no puede pasar por alto la segunda página.

// @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;
}

Encontré una segunda secuencia de comandos de usuario, pero se agrega ','name','800','800','yes');return%20falsea la URL final.

Aquí está el código:

// ==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
 });

Respuesta1

El script de usuario en sí funciona bien, pero los encabezados están incompletos.

Las primeras líneas deberían ser:

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

Tenga en cuenta que falta la primera línea. Esto hace que se ignoren los encabezados, por lo que el script se aplica atodositios web. Para que funcione correctamente, debe estar restringido a los sitios del 1short.usdominio.

Tal como están las cosas, la secuencia de comandos del usuario redirige desde 1short.us/368527a 1short.us/m1.php?id=368527y desde allí a turbobit.net/aveyd9fs89oc.html. Hasta ahora, todo bien. Debería parar aquí.

Sin embargo, debido a que falta el encabezado, el elsebloque de la ifdeclaración se ejecuta nuevamente y el script se redirige a turbobit.net/m1.php?id=aveyd9fs89oc.html. Esto da como resultado un 404.


El segundo script de usuario no funciona ya que 1short, aparentemente, cambió el tamaño de su nueva ventana del navegador. Cualquier cambio en el sitio web podría inutilizar el script del usuario.

En este caso, la línea

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

se supone que elimina la parte no deseada de la URL, pero la URL real termina con:

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

Cambiando esa línea del script de usuario a

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

(es decir, reemplazar 600con 800) lo solucionará.

información relacionada