Python - Duda HTTP en python: sockets, urrlib, httplib

 
Vista:
sin imagen de perfil

Duda HTTP en python: sockets, urrlib, httplib

Publicado por Jose M (1 intervención) el 07/11/2014 15:24:51
Buenas, ante todo aclarar que soy novato y me encuentro en fase de aprendizaje en python, así que ruego me disculpen si digo alguna necedad.

Estoy haciendo una aplicación cuyo objetivo es enviar peticiones HTTP. Estas peticiones incluyen varias mal formadas, como por ejemplo "GET / HTTP/6.9" (Versión http errónea), "JUNK / HTTP/1.1" (Método no existente) o "GET /xxx… HTTP/1.1" (Petición extremadamente larga y cuyo recurso no existe).

Ademas, esta aplicación recibirá la respuesta HTTP y la analizara, por lo que me interesa obtener la cabecera enterta HTTP, para analizar los valores de cada campo (Server, Date, Cache...) así como el orden de los campos, el uso de espacios etc..

Pues bien, he estado mirando librería como urllib y htttplib, y permiten enviar peticiones http y recibir las respuestas, pero con limitaciones. Me explico, por ejemplo puedo enviar peticiones pero creo que no puedo especificar la versión del protocolo (HTTP/6.9 por ejemplo) y otras limitaciones más que hacen que no puedan enviar peticiones http mal formadas o poco usuales. Por otro lado, he observado que con estas librerías no puedo realizar un análisis exhaustivo, por ejemplo del orden de los campos de la cabecera (1º Date, 2º Connection...).

Por estas razones he pensado hacer uso de sockets, pero no quiero reinventar la rueda, por eso espero que alguien mas experto que yo puedo arrojarme algo de luz. Muchas gracias.
Valora esta pregunta
Me gusta: Está pregunta es útil y esta claraNo me gusta: Está pregunta no esta clara o no es útil
0
Responder