Buenas:
les cuento, programe lo siguiente en php usando curl
Código:
$ch = curl_init(http://pagina.web/Result.cfm);
curl_setopt($ch, CURLOPT_CONNECTTIMEOUT, 10);
curl_setopt($ch, CURLOPT_POST, 1);
curl_setopt($ch, CURLOPT_POSTFIELDS, array("registro"=>"354"));
curl_setopt($ch, CURLOPT_USERAGENT, "Mozilla/5.0 (Windows NT 6.1; WOW64) AppleWebKit/535.1 (KHTML, like Gecko) Chrome/13.0.782.107 Safari/535.1");
curl_setopt($ch, CURLOPT_HEADER, false);
curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);
$output = curl_exec($ch);
curl_close($ch);
Y bueno el $output lo trabajo con expresiones regulares y etc...
El problema que tengo es que necesito hacer lo mismo pero en Python 3, por lo cual tengo entendido que debo usar httplib2, pues bueno intente hacerlo de la siguiente manera
Código:
import httplib2
from urllib.parse import urlencode
h = httplib2.Http(".cache")
data=dict(registro="354")
resp, content = h.request("http://pagina.web/Result.cfm","POST",urlencode(data))
f = open("salida.txt","wb")
f.write(content)
f.close
Pero desde Result.cfm me informa que no han sido enviado el contenido de POST, osea que no recepciona el valor de registro=354.
Bueno pensé que seria por que existiría quizás algún filtro y estuve buscando como cambiar el user-agent y las demás variables que en curl se describen pero no supe como hacerlo en Python-httplib2.
Me pueden ayudar??, algo estaré haciendo mal??