Sono abbastanza nuovo per l'urllib di python. Quello che devo fare è impostare un'intestazione personalizzata per la richiesta inviata al server. Nello specifico, ho bisogno di impostare il tipo di contenuto e le intestazioni delle autorizzazioni. Ho esaminato la documentazione di Python, ma non sono riuscito a trovarla.Come si impostano le intestazioni usando l'urllib di python?
42
A
risposta
63
l'aggiunta di intestazioni HTTP usando urllib2:
dalla documentazione:
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
Usa urllib2 e crea un oggetto Richiesta che poi passi a urlopen. http://docs.python.org/library/urllib2.html
In realtà non uso più il "vecchio" 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()
non testato ....
41
Sia per Python 3 e Python 2, questo funziona:
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
Per più intestazioni fare come segue:
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()
Problemi correlati
- 1. Come si impostano le intestazioni personalizzate globali in Angular2?
- 2. Le intestazioni non impostano con il reindirizzamento utilizzando node.js/Express
- 3. Come si impostano le proprietà ViewBag su _ViewStart.cshtml?
- 4. Infissi rotaie: come si impostano le chiavi esterne?
- 5. Come si impostano i predicati NSExtensionActivationRule?
- 6. Saltare le intestazioni quando si modifica un file csv usando Python
- 7. Come si aggiungono le intestazioni a dataTaskWithUrl?
- 8. Come si impostano le crittografie SSL quando si utilizza CFSocket/CFStream in Cocoa?
- 9. Come si cambiano le firme usando python gmail api?
- 10. Come si cammina tra le directory usando python?
- 11. Come testare le intestazioni delle e-mail usando RSpec
- 12. Estrai solo le intestazioni email in python
- 13. Come si impostano gli attributi HTML personalizzati nei moduli django?
- 14. Come si impostano le risorse allocate a un container tramite la finestra mobile?
- 15. Come ottenere le intestazioni HTTP
- 16. Come si impostano le dimensioni di ridimensionamento min e max per la finestra principale?
- 17. Come si impostano le variabili di ambiente su Cloud Foundry v2?
- 18. Come si impostano i browser remoti in Karma?
- 19. Come ottenere le intestazioni http nella beuta?
- 20. Python Modifica intestazioni CSV
- 21. Le sessioni PHP impostano i cookie?
- 22. intestazioni csv python
- 23. Come si impostano le proprietà in un file vcproj con cmake?
- 24. Come si impostano i formattatori Mongo personalizzati in primavera?
- 25. Come si accede: le intestazioni all'interno funzione compojure
- 26. Come si inviano le intestazioni UpperCase in HTTP
- 27. Come scrivere webpack.config.js quando si impostano più parametri?
- 28. L'installazione HTTP scade le intestazioni usando PHP e Apache
- 29. Come evitare le intestazioni precompilate
- 30. Le intestazioni Python sono necessarie per costruire Mercurial
possiamo fare la stessa cosa con le richieste q.add_header ('apikey', 'xxx') – user3378649
Cosa vuoi dire, @ user3378649? –
@ user3378649 potrebbe significare usare il pacchetto python 'requests' [intestazioni personalizzate] (http://docs.python-requests.org/en/master/user/quickstart/#custom-headers) – WeizhongTu