Le package python requests§

Le package requests permet d'effectuer programmatiquement des requêtes HTTP (comme celles que fait un navigateur).

1

Installation§

Depuis votre environnement virtuel, exécutez la commande suivante :

pip install requests

Si tout s'est bien passé, vous pouvez désormais importer le package dans l'interprétaur python :

>>> import requests
>>> requests.__version__
'2.22.0'

(le numéro de version peut évidemment être différent).

2

Premiers pas§

Pour effectuer une requête HTTP simple, utilisez la fonction requests.get en lui passant l'URL à requêter. Cette fonction retourne un objet Réponse, possédant de nombreux attributs. Ceux que vous utiliserez principalement sont :

Exemple :

>>> resp = requests.get("http://champin.net/2018/progweb-python/_static/td1/page1.html")
>>> resp.status_code
200
>>> resp.headers
{'Date': 'Fri, 23 Aug 2019 14:55:54 GMT', 'Server': 'Apache/2.4.10 (Debian)', 'Last-Modified': 'Wed, 15 Nov 2017 20:56:16 GMT', 'ETag': '"1b5-55e0bbc0a5c00-gzip"', 'Accept-Ranges': 'bytes', 'Vary': 'Accept-Encoding', 'Content-Encoding': 'gzip', 'Content-Length': '271', 'Keep-Alive': 'timeout=5, max=100', 'Connection': 'Keep-Alive', 'Content-Type': 'text/html; charset=UTF-8'}
>>> resp.text
'<!DOCTYPE html>\n<html>\n  <head>\n    <meta charset="utf-8">\n    <title>Page n°1</title>\n    <link rel="stylesheet" href="style.css">\n  </head>\n  <body>\n    <img alt="the hacker symbol" src="http://www.catb.org/hacker-emblem/glider.png">\n    <h1>Bienvenue sur la page n°1</h1>\n    <ul>\n      <li>Pour visiter <a href="page2.html">la page n°2</a>\n      <li>Pour visiter <a href="form.html">le formulaire</a>\n    </ul>\n  </body>\n</html>\n\n'
3

Pour aller plus loin§

requests vous offre de nombreuses possibilités, notamment

Consultez la documentation pour en savoir plus.

4