Página 1 de 1

Problemas creando un canal

Publicado: 04 Jul 2017, 09:35
por Inter95
Hola!
Me gustaría que me ayudaran con un canal, básicamente el canal está casi terminado el problema es que justo cuando le estaba dando los últimos retoques la web cambió de skin e implementaron un tag noscript que me redirige al universo, creo que es creado por sucuri cloudproxy. Por lo que no puedo obtener los datos. Mi pregunta es... existe alguna forma en la cual le pueda dar un bypass a esa seguridad, haciéndole creer a la web que tengo javascript activado? de hecho si desactivo javascript en el browser tampoco me deja ver el contenido. Aquí está lo que me sale en el log. Gracias de antemano por su ayuda.

Código: Seleccionar todo

<html><title>You are being redirected...</title>
<noscript>Javascript is required. Please enable javascript before you are allowed to see this page.</noscript>
<script>var s={},u,c,U,r,i,l=0,a,e=eval,w=String.fromCharCode,sucuri_cloudproxy_js='',S='ZT0nYScgKyAgIiIgKyIwc3VjdXIiLmNoYXJBdCgwKStTdHJpbmcuZnJvbUNoYXJDb2RlKDQ5KSArICIiICsiMnN1Y3VyIi5jaGFyQXQoMCkrICcnICsgClN0cmluZy5mcm9tQ2hhckNvZGUoOTkpICsgIiIgKyczJyArICAgJycgKyIwIi5zbGljZSgwLDEpICsgJ2UnICsgICIwc3VjdXIiLmNoYXJBdCgwKSsgJycgKyIyc3VjdXIiLmNoYXJBdCgwKSsiIiArU3RyaW5nLmZyb21DaGFyQ29kZSgweDYzKSArICI3IiArICAnJyArJycrIjF0Ii5jaGFyQXQoMCkgKyBTdHJpbmcuZnJvbUNoYXJDb2RlKDB4MzgpICsgICcnICsnJytTdHJpbmcuZnJvbUNoYXJDb2RlKDU2KSArICI5c3VjdXIiLmNoYXJBdCgwKSsiNmEiLmNoYXJBdCgwKSArICI1c3VjdXIiLmNoYXJBdCgwKSsiY2MiLmNoYXJBdCgwKSArICAnJyArJycrU3RyaW5nLmZyb21DaGFyQ29kZSg1NikgKyAiZGsiLmNoYXJBdCgwKSArICI5IiArICIzc2VjIi5zdWJzdHIoMCwxKSArICAnJyArIAoiMCIgKyAiMyIuc2xpY2UoMCwxKSArICAnJyArIAoiOXNlYyIuc3Vic3RyKDAsMSkgKyAiMCIgKyAnNycgKyAgU3RyaW5nLmZyb21DaGFyQ29kZSgweDY0KSArICJic3UiLnNsaWNlKDAsMSkgKyAnNzQnLnNsaWNlKDEsMikrJ2InICsgICcnO2RvY3VtZW50LmNvb2tpZT0nc3VjdXMnLmNoYXJBdCg0KSsgJ3UnKydjJysndScrJ3N1cicuY2hhckF0KDIpKydpc3VjdXInLmNoYXJBdCgwKSsgJ19zdWMnLmNoYXJBdCgwKSsgJ2MnKydsc3UnLmNoYXJBdCgwKSArJ3N1bycuY2hhckF0KDIpKyd1c3VjdXJpJy5jaGFyQXQoMCkgKyAnZCcrJ3BzJy5jaGFyQXQoMCkrJ3InKydzbycuY2hhckF0KDEpKyd4JysnJysneScrJ3NfJy5jaGFyQXQoMSkrJ3UnKyd1Jysnc3VpJy5jaGFyQXQoMikrJ2RzdWN1Jy5jaGFyQXQoMCkgICsnXycrJ3N1Y3VyaWQnLmNoYXJBdCg2KSsnZXN1Jy5jaGFyQXQoMCkgKydzdWN1cmk1Jy5jaGFyQXQoNikrJzInKycnKyc0JysnJysnYScrJzgnLmNoYXJBdCgwKSsnMScrJ2ZzdWMnLmNoYXJBdCgwKSsgIj0iICsgZSArICc7cGF0aD0vO21heC1hZ2U9ODY0MDAnOyBsb2NhdGlvbi5yZWxvYWQoKTs=';L=S.length;U=0;r='';var A='ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/';for(u=0;u<64;u++){s[A.charAt(u)]=u;}for(i=0;i<L;i++){c=s[S.charAt(i)];U=(U<<6)+c;l+=6;while(l>=8){((a=(U>>>(l-=8))&0xff)||(i<(L-2)))&&(r+=w(a));}}e(r);</script></html>

Re: Problemas creando un canal

Publicado: 05 Jul 2017, 06:22
por robalo
Ese script lo que hace es decodificar el chorizo de la variable 'S' que está base64 y evaluar el resultado.

El resultado es una cookie y la recargar de la página.

Código: Seleccionar todo

document.cookie='__utma=1.602830958.1468052725.1468052725.1468052725.1; sucuri_cloudproxy_uuid_de524a81f=a012c30e02c7188965c8d9303907db4b';
location.reload();

Re: Problemas creando un canal

Publicado: 05 Jul 2017, 13:10
por Inter95
robalo escribió:
05 Jul 2017, 06:22
Ese script lo que hace es decodificar el chorizo de la variable 'S' que está base64 y evaluar el resultado.

El resultado es una cookie y la recargar de la página.
Muchisimas gracias por contestar 👍🏾
disculpa mi ignorancia, me podrias dar un ejemplo de como puedo implementarlo en el canal que estoy creando?

Saludos!

Re: Problemas creando un canal

Publicado: 05 Jul 2017, 21:23
por robalo
Si crees que es algo a implementar tendras que scrapear, decodificar 'S' y evaluar el resultado pero interpretando el código JS obtenido con sus equivalentes en python.

Re: Problemas creando un canal

Publicado: 05 Jul 2017, 22:26
por Inter95
Aunque entendí tu sugerencia, ni idea de como llevarlo a cabo :mrgreen:
digamos que yo tengo este código en su termino más simple pero capaz de scrapear url, img y title. Como debería hacer yo para que la seguridad me permita obtener esos datos?

Código: Seleccionar todo

host = 'http://pedropolis.com/'

def mainlist(item):
    logger.info()
    itemlist = []
    item.url = host

    itemlist.append(item.clone(title="Películas", action="peliculas",
                               viewcontent='movies', url=host+'movies/'))


def peliculas(item):
    logger.info()
    itemlist = []

    data = httptools.downloadpage(item.url).data
    data = re.sub(r"\n|\r|\t|\s{2}|&nbsp;", "", data)

    patron =  '<div class="poster"><a href="([^"]+)">'#url
    patron += '<img src="([^"]+)".*?'                 #img
    patron += 'alt="([^"]+)"></a>.*?'                 #title
    matches = scrapertools.find_multiple_matches(data, patron)

    for scrapedurl, scrapedthumbnail, scrapedtitle, in matches:

        itemlist.append(Item(channel=item.channel, action="findvideos", url=scrapedurl,
                             title=scrapedtitle, thumbnail=scrapedthumbnail))

    return itemlist