Automatisation des connexions Web et de la récupération des cookies en Python
Question :
Comment accéder par programme à une page Web protégée par l'authentification HTTP et récupérer le cookies associés pour une utilisation future ?
Solution :
Pour automatiser les connexions Web et récupérer les cookies en Python, pensez à utiliser la bibliothèque de requêtes, qui offre un outil pratique et riche en fonctionnalités solution. Voici une mise en œuvre étape par étape :
-
Établir une session : Créez une instance de session(), qui vous permet de conserver l'état sur plusieurs requêtes.
-
Définir la charge utile de connexion : Construisez un dictionnaire contenant les informations de connexion (par exemple, nom d'utilisateur, mot de passe). Certains sites Web peuvent nécessiter des informations supplémentaires, comme un jeton CSRF.
-
Envoyer une demande de connexion : Lancez une requête POST au point de terminaison de connexion (login.php) à l'aide de la méthode c.post(), et inclure la charge utile de connexion en tant que données. Par défaut, les requêtes géreront les redirections HTTP.
-
Récupérer les cookies : La réponse à la demande de connexion contiendra un ensemble de cookies. Ces cookies seront accessibles via l'attribut réponse.cookies.
-
Faire une demande protégée : Une fois connecté, vous pouvez utiliser la session pour faire des demandes vers des pages protégées (protected_page.php). Les cookies récupérés lors de la connexion seront automatiquement inclus dans les en-têtes de la requête.
-
Extraire les données de réponse : La réponse de la requête protégée peut être inspectée pour récupérer les données souhaitées, telles que le HTML de la page. contenu (accessible via réponse.text).
En utilisant la bibliothèque de requêtes, vous pouvez automatiser les connexions Web et récupérer facilement les cookies, vous permettant d'accéder à des pages Web protégées et d'effectuer des demandes ultérieures.
Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!