Me gustaria hacer un programa que descarge algunas imagenes pero para ello tengo que estar logueado en la web..
Como podria loguearme?? creo que es con el modulo httplib.. pero no se
Mirate esto a ver si te ayuda :P
http://foro.elhacker.net/scripting/python_enviar_un_dato_a_traves_de_un_input_html-t264641.0.html
Saludos
No se seguir a partir de aqui.. es mas, no se si se logea o no :-[ :-[
login_data = urllib.urlencode({"tuentiemail":usuario,"password":password})
urllib2.urlopen('http://m.tuenti.com/?m=login', login_data)
Si la web usa cookies, puedes hacerle una petición GET enviando en las cabeceras las cookies...
Revisa puntualmente este ..
http://foro.elhacker.net/scripting/python_enviar_un_dato_a_traves_de_un_input_html-t264641.0.html;msg1292324#msg1292324
.... es casi igual que el tuyo, pero se abre un contenedor para la sesión de usuario, y es que luego del urlopen ya estas logado, ahí puedes hacer lo que gustes :P
Saludos
He probado con lo que has dicho..
opener = urllib2.build_opener(urllib2.HTTPCookieProcessor())
urllib2.install_opener(opener)
login_data = urllib.urlencode({"tuentiemail":usuario,"password":password})
respuesta = opener.open('http://m.tuenti.com', login_data)
print(respuesta.read())
He cambiado lo de 'tuentimail' porque ese es el id de la caja de texto del usuario
Como ves al terminar devuelve el codigo fuente, pero me devuelve a la pagina del login (como si no se hubiese podido logear).. yo esperaba que me devolviese a la ventana siguiente de loguearse
Creo que es porque estas "apuntando" a cualquier lado :xD
Prueba con esta :P
:http://m.tuenti.com/?m=login&func=process_login
Saludos
Ok... creo que voy por el buen camino, gracias ;)
Pero ahora me ha aparecido algo nuevo...
Las cookies de tu navegador se encuentran desactivadas. Debes activarlas.
Te sale eso? Si para eso sirve justamente el cookieprocessor :-\
Importas correctamente todos los modulos? no te sale ningún error de código?
Modifica esta parte
mycookie = cookielib.CookieJar()
opener = urllib2.build_opener(urllib2.HTTPCookieProcessor(mycookie))
Saludos
Esto es todo lo que tengo..
#!/usr/bin/env python
# -*- coding: cp1252 -*-
import httplib, urllib, urllib2, cookielib
# Configuracion
Servidor = "m.tuenti.com"
usuario = "aaaaaaaaaaaa@gmail.com"
password = "unapalabracualquiera"
dir_downloads = "~/Escritorio"
opener = urllib2.build_opener(urllib2.HTTPCookieProcessor())
urllib2.install_opener(opener)
login_data = urllib.urlencode({"tuentiemail":usuario,"password":password})
respuesta = opener.open('http://m.tuenti.com/?m=login&func=process_login', login_data)
print(respuesta.read())
Cita de: Novlucker en 29 Mayo 2010, 00:43 AM
Te sale eso? Si para eso sirve justamente el cookieprocessor :-\
Importas correctamente todos los modulos? no te sale ningún error de código?
Modifica esta parte
mycookie = cookielib.CookieJar()
opener = urllib2.build_opener(urllib2.HTTPCookieProcessor(mycookie))
Saludos
Me sale lo mismo
A ver así ...
import urllib, urllib.request, urllib.parse, http.cookiejar
usuario = "mimail@gmail.com"
password = "micontrasena"
mycookie = http.cookiejar.CookieJar()
opener = urllib.request.build_opener(urllib.request.HTTPCookieProcessor(mycookie))
urllib.request.install_opener(opener)
login_data = urllib.parse.urlencode({"m":"login","func":"process_login","tuentiemail":usuario,"password":password})
respuesta = opener.open('http://m.tuenti.com/', login_data)
print(respuesta.read())
[Edito]
Modificalo según tus modulos, ya que yo estoy usando python 3
Saludos
Lo he modificado hasta llegar a esto
mycookie = cookielib.CookieJar()
opener = urllib2.build_opener(urllib2.HTTPCookieProcessor(mycookie))
urllib2.install_opener(opener)
login_data = urllib.urlencode({"m":"login","func":"process_login","tuentiemail":usuario,"password":password})
respuesta = opener.open('http://m.tuenti.com/', login_data)
print(respuesta.read())
Sigue sin ir...
Si quieres dejalo ya.. no quiero seguir molestandote, ya buscare yo por mi cuenta.. como quieras
Bueno, aunque no se python, se como hacer una autentificacion....
Envió vía POST los valores del formulario del login.
Luego de enviar el valor via POST, leo el codigo de fuente y mediante expresiones regulares verifico que este conectado o que los datos son incorrectos...
Necesitaras primero leer el código de fuente de la pagina y luego de eso usaras expresiones regulares para Capturar-> Verificar... Aver si me haz entendido...