elhacker.net cabecera Bienvenido(a), Visitante. Por favor Ingresar o Registrarse
¿Perdiste tu email de activación?.

 

 


Tema destacado: Recopilación Tutoriales y Manuales Hacking, Seguridad, Privacidad, Hardware, etc


+  Foro de elhacker.net
|-+  Programación
| |-+  Scripting
| | |-+  Petición POST con Python
0 Usuarios y 1 Visitante están viendo este tema.
Páginas: [1] Ir Abajo Respuesta Imprimir
Autor Tema: Petición POST con Python  (Leído 7,355 veces)
Shell Root
Moderador Global
***
Desconectado Desconectado

Mensajes: 3.724


<3


Ver Perfil WWW
Petición POST con Python
« en: 27 Octubre 2010, 06:23 am »

Pues después de programar algo en C#, se me dio por realizar una petición POST por medio de Python, pero plop, algo me falla. Me ayudan?

Código
  1. import urllib, urllib2
  2.  
  3. try:
  4. parametros = urllib.urlencode({"txtUser": "alexa", "txtPass": "a"})
  5. peticion = urllib2.urlopen("http://localhost/PoC/index.php", parametros)
  6.    print peticion.read()
  7.    peticion.close()
  8. except HTTPError, e:
  9.    print "Ocurrio un error"
  10.    print e.code
  11. except URLError, e:
  12.    print "Ocurrio un error"
  13.    print e.reason


« Última modificación: 27 Octubre 2010, 06:27 am por Shell Root » En línea

Te vendería mi talento por poder dormir tranquilo.
Sancho.Mazorka


Desconectado Desconectado

Mensajes: 480


Gamer & Programador


Ver Perfil WWW
Re: Petición POST con Python
« Respuesta #1 en: 1 Noviembre 2010, 05:00 am »

Podrias poner lo que imprime e.code y e.reaseon, asi tendriamos una vision mas amplia de tu problema.


Saludos, Sancho.Mazorka    :P


En línea

Ganador Xeon Web Server ! ! !    Sancho.Mazorka :D
http://foro.elhacker.net/index.php/topic,171903.75.html


Sancho.Mazorka


Desconectado Desconectado

Mensajes: 480


Gamer & Programador


Ver Perfil WWW
Re: Petición POST con Python
« Respuesta #2 en: 1 Noviembre 2010, 05:18 am »

Aca te pongo 2 ejemplos que hice hace 1 año y algo, el primero es para autoclickear una web de PTC (Paid-To-Click).

Hace un request a la web, descarga el captcha, lo introducis manualmente, se loguea con los datos, entra a un anuncio y listo.

Esta a medio terminar, porque descubri que la web era un scam (estafa), asi que lo deje ahi nomas, pero lo que vos estas intentando hacer funciona.

Código
  1. import httplib, urllib, re, string
  2.  
  3. conn = httplib.HTTPConnection("www.alertbucks.com")
  4. #cod = urllib.urlencode({'username':'TU_USER','password':'TU_PASS','code':'458939','loginsubmit':'Login'})
  5. #headers = {"Content-type": "application/x-www-form-urlencoded", "Accept": "text/plain"}
  6.  
  7. #conn.request("GET", "/login.php?",cod,headers)#?username=TU_USER&password=TU_PASS&code=598423&loginsubmit=Login") #"/view.php?ad=426")
  8.  
  9. #print cod, '\n\n\n'
  10. conn.request("GET","/view.php?ad=553")
  11.  
  12.  
  13. #params = urllib.urlencode({'': 1, 'eggs': 2, 'bacon': 0})
  14. #headers = {"Content-type": "application/x-www-form-urlencoded", "Accept": "text/plain"}
  15. #conn = httplib.HTTPConnection("musi-cal.mojam.com:80")
  16. #conn.request("POST", "/cgi-bin/query", params, headers)
  17.  
  18.  
  19. response = conn.getresponse()
  20. #print response.status, response.reason
  21.  
  22. data = response.read()
  23. conn.close()
  24.  
  25. #print data
  26.  
  27. #m = re.search('(?<=")\10+', data)
  28. #print m.group(1)
  29.  
  30. #print '\n-----------------------------------------\n'
  31.  
  32. pattern = re.compile (';')
  33.  
  34. m= pattern.split(data)
  35. print m
  36. #print string.split(m[3].strip(),'"')[1]
  37. #print string.split(m[4].strip(),'"')[1]
  38. #for i in m:
  39. #    print i,'\n'
  40.  
  41. #'success.php?ad=%d&code=%d&verify=1' % (ads, code)
  42.  

Este otro, es muy similar al anterior, pero utilizando otro metodo

Código
  1. import urllib,urllib2
  2.  
  3. aut_h = urllib2.HTTPBasicAuthHandler()  
  4. aut_h.add_password('TU_USER')  
  5.  
  6. opener = urllib2.build_opener(aut_h)
  7. urllib2.install_opener(opener)
  8.  
  9. #params = urllib.urlencode({'username':'TU_USER','password':'TU_PASS','code':'722443','loginsubmit':'Login'})
  10.  
  11. f = urllib.urlopen("http://www.alertbucks.com/login.php?%s" % params)
  12. print f.read()
  13. f.close()
  14.  

Espero te sirva.


Saludos, Sancho.Mazorka    :P
En línea

Ganador Xeon Web Server ! ! !    Sancho.Mazorka :D
http://foro.elhacker.net/index.php/topic,171903.75.html


xassiz~


Desconectado Desconectado

Mensajes: 457



Ver Perfil WWW
Re: Petición POST con Python
« Respuesta #3 en: 1 Noviembre 2010, 12:53 pm »

Pues después de programar algo en C#, se me dio por realizar una petición POST por medio de Python, pero plop, algo me falla. Me ayudan?

Código
  1. import urllib, urllib2
  2.  
  3. try:
  4. parametros = urllib.urlencode({"txtUser": "alexa", "txtPass": "a"})
  5. peticion = urllib2.urlopen("http://localhost/PoC/index.php?%s", parametros)
  6.    print peticion.read()
  7.    peticion.close()
  8. except HTTPError, e:
  9.    print "Ocurrio un error"
  10.    print e.code
  11. except URLError, e:
  12.    print "Ocurrio un error"
  13.    print e.reason
En línea

Shell Root
Moderador Global
***
Desconectado Desconectado

Mensajes: 3.724


<3


Ver Perfil WWW
Re: Petición POST con Python
« Respuesta #4 en: 1 Noviembre 2010, 19:27 pm »

Pero eso son peticiones GET, no?
En línea

Te vendería mi talento por poder dormir tranquilo.
xassiz~


Desconectado Desconectado

Mensajes: 457



Ver Perfil WWW
Re: Petición POST con Python
« Respuesta #5 en: 1 Noviembre 2010, 21:05 pm »

No, para una petición GET pones las variables en la URL:

Código
  1. peticion = urllib2.urlopen("http//localhost/PoC/index.php?txtUser=alexa&txtPass=a").read()
  2.  
En línea

Páginas: [1] Ir Arriba Respuesta Imprimir 

Ir a:  

Mensajes similares
Asunto Iniciado por Respuestas Vistas Último mensaje
Petición de libros de Python y de Perl 6.
Scripting
Medic 4 3,335 Último mensaje 11 Enero 2014, 22:47 pm
por BigBear
Duda al hacer petición POST (con Java - Spark)
Java
JonaLamper 1 2,765 Último mensaje 6 Diciembre 2018, 17:58 pm
por JonaLamper
WAP2 - Aviso Legal - Powered by SMF 1.1.21 | SMF © 2006-2008, Simple Machines