Soy bastante nuevo en el urllib de python. Lo que tengo que hacer es establecer un encabezado personalizado para la solicitud que se envía al servidor. Específicamente, necesito establecer los encabezados de Tipo de contenido y Autorizaciones. He investigado la documentación de Python, pero no he podido encontrarla.¿Cómo configuro los encabezados usando el urllib de python?
42
A
Respuesta
63
añadiendo cabeceras HTTP usando urllib2:
a partir de los documentos:
import urllib2
req = urllib2.Request('http://www.example.com/')
req.add_header('Referer', 'http://www.python.org/')
resp = urllib2.urlopen(req)
content = resp.read()
9
Use urllib2 y cree un objeto Request que luego entregue para abrir. http://docs.python.org/library/urllib2.html
Ya no uso el "viejo" urllib.
req = urllib2.Request("http://google.com", None, {'User-agent' : 'Mozilla/5.0 (Windows; U; Windows NT 5.1; de; rv:1.9.1.5) Gecko/20091102 Firefox/3.5.5'})
response = urllib2.urlopen(req).read()
no probado ....
41
Por tanto Python 3 y Python 2, esto funciona:
try:
from urllib.request import Request, urlopen # Python 3
except ImportError:
from urllib2 import Request, urlopen # Python 2
q = Request('http://api.company.com/items/details?country=US&language=en')
q.add_header('apikey', 'xxx')
a = urlopen(q).read()
print(a)
1
Para hacer varias cabeceras de la siguiente manera:
import urllib2
req = urllib2.Request('http://www.example.com/')
req.add_header('param1', '212212')
req.add_header('param2', '12345678')
req.add_header('other_param1', 'sample')
req.add_header('other_param2', 'sample1111')
req.add_header('and_any_other_parame', 'testttt')
resp = urllib2.urlopen(req)
content = resp.read()
Cuestiones relacionadas
- 1. ¿Cómo configuro los encabezados json correctos?
- 2. Python y urllib
- 3. Python URLLib/URLLib2 POST
- 4. Python: urllib/urllib2/httplib confusion
- 5. Python urllib vs httplib?
- 6. Enviar encabezados en python
- 7. Python 2 vs. Python 3 - formatos urllib
- 8. Establezca los encabezados usando pandas.read_csv
- 9. PyQt: ¿Cómo configuro diferentes tamaños de encabezado para encabezados individuales?
- 10. Configuración El HTTP expira los encabezados usando PHP y Apache
- 11. Python 3 - urllib, HTTP Error 407: Autentificación de poder
- 12. ¿Cómo publico en un formulario de Django 1.2 usando urllib?
- 13. Equivalente a Python urllib en Haskell
- 14. Encendido de salida de depuración para Python 3 urllib
- 15. En Python, ¿cómo utilizo urllib para ver si un sitio web es 404 o 200?
- 16. gevent urllib es lento
- 17. cadena de consulta de parse con urllib en Python 2.4
- 18. accediendo a los encabezados de solicitud en django/python
- 19. Cómo evito que el urllib (2) de Python siga un redireccionamiento
- 20. ¿Cómo configuro los permisos (atributos) en un archivo en un archivo ZIP usando el módulo zipfile de Python?
- 21. ¿Cómo probar los encabezados esperados?
- 22. Python urllib descargar contenido de un directorio en línea
- 23. Extraiga solo los encabezados de correo electrónico en python
- 24. ¿Cómo configuro el color de fondo en UIView usando CGContext?
- 25. ¿Cómo manejar el tiempo de espera de urllib en Python 3?
- 26. Python urllib y urllib2 no abren URL de localhost?
- 27. Usando mysql con rieles, ¿cómo configuro esto?
- 28. Usando urllib y BeautifulSoup para recuperar información de la web con Python
- 29. Python: Obtenga los encabezados HTTP de la llamada urllib2.urlopen?
- 30. Python no puede recuperar formularios con urllib o mecanizar
podemos hacer lo mismo con las solicitudes q.add_header ('apikey', 'xxx') – user3378649
¿Qué quiere decir, @ user3378649? –
@ user3378649 puede ser que signifique usar el paquete python 'requests' [headers personalizados] (http://docs.python-requests.org/en/master/user/quickstart/#custom-headers) – WeizhongTu