Maison  >  Article  >  développement back-end  >  Introduction des cookies et démonstration de connexion simulée

Introduction des cookies et démonstration de connexion simulée

爱喝马黛茶的安东尼
爱喝马黛茶的安东尼avant
2019-06-05 17:09:272989parcourir

CookieOn peut dire que c'est étroitement lié à nos vies Lorsque vous magasinez sur Taobao, ces produits recommandés sont les chefs-d'œuvre de Cookie.

Dans l'article précédent, nous avons expliqué les opérations de base de Selenium+PhantomJs. Aujourd'hui, nous vous proposons une introduction aux cookies et une démonstration de connexion simulée.

Introduction des cookies et démonstration de connexion simulée

Que sont les cookies ?

dans la terminologie informatique fait référence à une méthode qui permet au serveur du site Web de stocker une petite quantité de données sur le disque dur ou la mémoire du client, ou de lire des données depuis le disque dur du client une technologie.

Ouvrez les outils de développement de Chrome (F12), cliquez sur Réseau, cliquez sur une URL de demande et vous pourrez voir des informations sur le cookie dans l'en-tête de la demande (En-têtes de demande). Bien sûr, nous pouvons voir des informations Set-Cookie à partir de l'en-tête de réponse ci-dessus, qui sont des informations sur le serveur définissant les cookies sur le navigateur, telles que la portée des cookies, l'heure, etc.

Objectif des cookies

Stocker les informations de connexion de l'utilisateur pour déterminer si l'utilisateur est connecté ; enregistrer les empreintes de navigation de l'utilisateur

Les cookies sont stockés par le ; serveur sur les informations client. Ces informations sont générées et interprétées par le serveur.

Lors de la demande, le client doit envoyer des cookies non temporisés au serveur. Le serveur doit analyser les cookies pour déterminer les informations sur l'utilisateur.

Notre navigateur stockera automatiquement les cookies chaque fois que vous naviguez sur le Web. Par exemple, lorsque vous ouvrez l'historique de navigation clair du navigateur, des informations sur les cookies seront affichées.

Les cookies nous apportent beaucoup de commodité. Ils peuvent également enregistrer nos empreintes de navigation et le temps que nous restons sur la page. Par exemple, lorsque vous êtes fou de Taobao, les recommandations de Taobao pour les produits que vous aimez sont générées en fonction de votre cookie pour obtenir les produits que vous avez consultés.

Démonstration de connexion simulée

Prenons Zhihu comme exemple. https://www.zhihu.com/people/yu-kun-73/answers

Cette URL est ma page d'informations Zhihu. Bien sûr, vous pouvez utiliser votre propre page Zhihu comme exemple. Si nous lui rendons visite directement, nous verrons le bouton de connexion ci-dessus, mais je suis déjà connecté et j'y accède. Le bouton de connexion ne sera pas affiché, mais quelques liens vers des profils d'édition personnels.

Et si nous utilisions un robot pour y accéder.

import requests
 
headers = {
    'User-Agent': 'Mozilla/5.0 (Windows NT 6.1; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/59.0.3071.115 Safari/537.36'
}
url = 'https://www.zhihu.com/people/yu-kun-73/answers'
resp = requests.get(url, headers=headers).text
print(resp)

A travers les résultats imprimés, nous pouvons voir qu'il y a un bouton de connexion dans le code html. Cela prouve que nous ne sommes pas connectés à cette page. Ainsi, si nous explorons certains sites Web qui nécessitent un compte de connexion pour explorer les données, nous devons résoudre le problème de connexion. Alors, comment implémenter la connexion.

La réponse est nos cookies. Nous disions dans l'article précédent que la bibliothèque de requêtes était très simple lors de la gestion des cookies. Nous avons juste besoin d'ajouter des cookies de demande comme nous avons ajouté « User-Agent ».

import requests
 
headers = {
    'Cookie': # 你的登录过后的浏览器cookies,
    'User-Agent': 'Mozilla/5.0 (Windows NT 6.1; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/59.0.3071.115 Safari/537.36'
}
url = 'https://www.zhihu.com/people/yu-kun-73/answers'
resp = requests.get(url, headers=headers).text
print(resp)

Lorsque nous examinons à nouveau les informations imprimées, nous pouvons voir un lien pour modifier les informations personnelles. Cela signifie que nous sommes connectés avec succès. N'est-ce pas très simple ? Ne vous inquiétez pas, le plus dur viendra plus tard.

Enfin

Donc, si nous voulons nous connecter à certains sites Web complexes, tels que Sina Weibo, qui nécessitent une connexion pour obtenir des informations, l'utilisation de cookies pour se connecter ne fonctionnera certainement pas. Étant donné que ces sites Web mettent fréquemment à jour les algorithmes de certains sites Web, nos cookies expireront après un certain temps. Nous devons donc publier nos informations de connexion sur la page de connexion de ces sites Web.

Ces paramètres d'informations de connexion sont généralement stockés dans les données du formulaire sous l'en-tête de demande de la page de connexion. Tant que nous publions ces informations, nous pouvons nous connecter en douceur. Mais si vous rencontrez un code de vérification, ce sera très gênant. Le problème du code de vérification a toujours été un seuil pour tester les robots d’exploration. Étudions cela par nous-mêmes.

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!

Déclaration:
Cet article est reproduit dans:. en cas de violation, veuillez contacter admin@php.cn Supprimer