Script para web

Iniciado por Xenomorfo77, 9 Febrero 2014, 12:12 PM

0 Miembros y 4 Visitantes están viendo este tema.

Xenomorfo77

Hola gente, necesito ayuda para crear un script que me automatice una tarea. Se trata de una pagina de apuestas y quiero hacer un script que pulse unos determinados botones.

La idea es esta:

http://playfulbet.com/usuarios/1

Si sustituimosel numero en un bucle podemos ir accediendo a la pagina de ese usuario luego dentro de esa página cada usuario tiene un botón follow y otro botón desafíos.

Estos son los codigos que llevan los botones:

Desafío:
Código (html4strict) [Seleccionar]
<a href="/peticiones?category=friendship&amp;receiver_id=200" class="add-for-challenge tip-left" data-method="post" data-options="disable-for-touch:true" data-tooltip="" id="add_friend" rel="nofollow" title="Solicitar desafíos"><i class="fa fa-bolt"></i><b>Desafios</b> </a>

Follow:
Código (html4strict) [Seleccionar]
<a href="/follows/200?followed_id=200" class="js-toggle-follow btn-social btn-unfollow hide" data-method="delete" data-remote="true" id="unfollow" rel="nofollow"><div class="btn-content"><i class="fa fa-check"></i> Siguiendo</div></a><a href="/follows?followed_id=200" class="js-toggle-follow btn-social btn-follow " data-method="post" data-remote="true" id="follow" rel="nofollow"><div class="btn-content"><i class="fa fa-plus"></i> Seguir</div></a>

Pero si entras directamente en ese enlace del href no hace nada y dice k la pagina no existe. ¿Alguna pista o ayuda?

Si quieren probar la página puede registrarse aquí, esta página es interesante porque las apuestas son gratis, y luego podemos cambiar las monedas del juego por diferentes premios como xbox one, play4, paysafecard... :

http://playfulbet.com/users/sign_in?invited_by=104394

Eleкtro

#1
Cita de: Xenomorfo77 en  9 Febrero 2014, 12:12 PM
si entras directamente en ese enlace del href no hace nada y dice k la pagina no existe. ¿Alguna pista o ayuda?

Hombre, es que es un botón, no redirecciona a un form, puedes invocar 'Click' en el botón 'Seguir' y 'Desafios' si lo haces por web.

Accedes al form del usuario, obtienes los botones por su ID:
id="add_friend"
id="follow"
...e invocas Click.

¿Que lenguaje estás usando?.








Xenomorfo77

Hola elektro gracias por contestar, no sabia como hacerlo pero si lo hiciese seria en bash a que te refieres con acceder al form e invocar click puedes ser mas concreto. Gracias.

Eleкtro

#3
Cita de: Xenomorfo77 en  9 Febrero 2014, 13:27 PM
si lo hiciese seria en bash
a que te refieres con acceder al form e invocar click puedes ser mas concreto.

antes de nada, yo no sé mucho de HTML pero creo que habría dos formas de hacerlo,
1. Por código enviando una petición post para el botón (quizás con cURL se pueda?), aunque imagino que de esta forma será más dificil el manejo manual de Cookies que requiere la web.
2. Utilizando un lenguaje que disponga de librerías para navegar de forma interactiva a cada perfil de usuario e invocar el miembro 'Click' en el botón (esa es la manera que yo se hacer pero en Bash no).

EDITO:
Un ejemplo de lo que te intento decir, en Ruby:
[RUBY] script para loguearse en una web e ir a una url

Saludos








Xenomorfo77

Ok, en que lenguaje sabes o me recomiendas para que sea sencillo? Saludos.

EDITO:

Justo lo que necesitaba, gracias Jefe!

Eleкtro

Cita de: Xenomorfo77 en  9 Febrero 2014, 13:39 PM
Ok, en que lenguaje sabes o me recomiendas para que sea sencillo? Saludos.

Si no te importa hacerlo en Windows entonces te recomiendo VB.NET
Si es para usar bajo Linux entonces puedes hacerlo en Ruby y/o Python, los dos tienen ese tipo de librerias (externas)

Saludos








Xenomorfo77

Siempre he tenio la curiosidad de aprender algo de python y este es buen momento jaja. Una ultima pregunta y perdona por ser tan pesado. ¿Te sabes como se llama la libreria en python? Cuando tenga algo lo posteo. Muchas gracias.

xiruko

Hola Xenomorfo77,

hace poco contesté una duda similar, te dejo aquí el enlace donde comento algunos módulos de Python para hacer lo que dices:

http://foro.elhacker.net/software/apuestas-t408384.0.html;msg1918541#msg1918541

Un saludo.

Xenomorfo77

#8
Cita de: xiruko en  9 Febrero 2014, 14:16 PM
Hola Xenomorfo77,

hace poco contesté una duda similar, te dejo aquí el enlace donde comento algunos módulos de Python para hacer lo que dices:

http://foro.elhacker.net/software/apuestas-t408384.0.html;msg1918541#msg1918541

Un saludo.

Gracias xiruko he estado mirando urllib y tengo hecho esto:

Código (python) [Seleccionar]

iimport urllib
import urllib2

url = "http://www.playfullbet.com/"
values = {"user_login" : "email",
 "user_password" : "pass" }

data = urllib.urlencode(values)
req = urllib2.Request(url, data)
response = urllib2.urlopen(req)
html = response.read()

print html

i = 0

while i < 225500:
url = "http://www.playfulbet.com/usuarios/" + str(i)
print url
i += 1
req = urllib2.Request(url)
try:
response = urllib2.urlopen(req)
except:
print url + " no existe."
html = response.read()
print html



Por el momento no funciona y no tengo mucha idea de python, algun fallo o ayuda?

Aquí dejo los datos del post por si me estoy equivocando en los valores : http://gyazo.com/da7ab9108c68d72f6aaadf63e6e2d294

xiruko

A mi sí que me funciona este código:

Código (python) [Seleccionar]
#!/usr/bin/python
import urllib
import urllib2

url = "http://www.playfullbet.com/"
values = {"user_login" : "email",
  "user_password" : "pass" }

data = urllib.urlencode(values)
req = urllib2.Request(url, data)
response = urllib2.urlopen(req)
html = response.read()
print html


No estaría de más alguna ayuda o pista sobre el qué no te funciona... xD

Puedes ejecutarlo? Te da error en tiempo de ejecución? Si es así, cuál? Lo corres y directamente no hace nada?

Un saludo.