Je suis donc récemment tombé sur cette superbe bibliothèque pour gérer les requêtes HTTP en Python; trouvé ici http://docs.python-requests.org/en/latest/index.html .
J'adore travailler avec cette application, mais je ne vois pas comment ajouter des en-têtes à mes demandes d'obtention. Aidez-moi?
Selon api , les en-têtes peuvent tous être passés en utilisant requests.get:
r=requests.get("http://www.example.com/", headers={"content-type":"text"})
Cela semble assez simple, selon le docs sur la page que vous avez liée (souligné par moi).
requests.get (url, params = None, en-têtes = None, cookies = None, auth = None, délai d'attente = None)
Envoie une requête GET. Renvoie l'objet
Response
.Paramètres:
- url - URL du nouvel objet
Request
.- params - (facultatif) Dictionnaire des paramètres GET à envoyer avec le
Request
.- en-têtes - (facultatif) Dictionnaire des en-têtes HTTP à envoyer avec le
Request
.- cookies - (facultatif) objet CookieJar à envoyer avec le
Request
.- auth - (facultatif) AuthObject pour activer l'authentification HTTP de base.
- timeout - (facultatif) Float décrivant le délai d'attente de la demande.
Cette réponse m'a appris que vous pouvez définir des en-têtes pour toute une session:
s = requests.Session()
s.auth = ('user', 'pass')
s.headers.update({'x-test': 'true'})
# both 'x-test' and 'x-test2' are sent
s.get('http://httpbin.org/headers', headers={'x-test2': 'true'})