Nous savons que les demandes peuvent simuler la soumission de certaines données, entre autres. Certains sites Web nous demandent de télécharger des fichiers, et nous pouvons également utiliser des requêtes pour y parvenir. Par exemple, si nous voulons télécharger un fichier maintenant, nous pouvons le faire.
import requests f = {'f':open('a.text','rb')} r = requests.post('http://httpbin.org/post',files = f) print(r.text)
Exécutons le programme et voyons quel est l'effet.
On voit que la réponse contient le champ files, mais le champ du formulaire est vide, ce qui prouve que la partie upload du fichier sera identifiée par un champ files distinct.
Nous pouvons utiliser des cookies pour maintenir le statut de connexion. Dans le navigateur et les outils de développement, nous pouvons trouver le champ des cookies et le copier directement.
Nous paramétrons les cookies dans les en-têtes, puis envoyons la demande et vous pouvez vous connecter. L'exemple de code est le suivant :
Alors, qu'est-ce qu'un certificat SSL ?
Le certificat SSL est un certificat numérique, qui est une copie électronique, similaire aux copies électroniques des permis de conduire, des passeports et des licences commerciales. Il est signé par une autorité de certification numérique (CA) de confiance, et le client et le serveur doivent vérifier la validité du certificat.
La fonction principale d'un certificat SSL est de fournir l'authentification du serveur et le cryptage de la transmission des données. Il garantit que les données ne sont pas volées ou falsifiées pendant la transmission, renforce la sécurité et empêche les personnes non autorisées d'accéder au serveur.
Lors du processus de vérification du certificat SSL, le client et le serveur doivent vérifier la validité du certificat.
De plus, les requêtes ont également la fonction de vérification du certificat. Lors de l'envoi d'une requête HTTP, il vérifiera le certificat SSL. Nous pouvons utiliser le paramètre verify pour contrôler s'il faut vérifier ce certificat. Il est généralement activé par défaut.
Alors comment écrire notre code ?
response = requests.get('http://www.baidu.com',verify = False)
Pour certains sites Web, le contenu peut être obtenu lors des tests. Une fois explorée fréquemment, l'adresse IP peut être bloquée, entraînant une inaccessibilité pendant un certain temps. Donc, afin d'éviter que cela ne se produise, nous devons configurer un proxy pour résoudre le problème. Le paramètre proxys est utilisé ici.
Proxy est un module intégré de Python qui peut être utilisé pour créer des objets proxy pour transférer les demandes et les réponses sur le réseau. En Python, vous pouvez utiliser la bibliothèque de requêtes pour envoyer des requêtes HTTP et utiliser le paramètre proxys pour spécifier des objets proxy.
Voici un exemple de code qui montre comment utiliser le paramètre proxys pour définir un objet proxy :
import requests # 创建一个 requests 对象 r = requests.get('http://example.com') # 设置代理对象 r.proxies = {'http': 'http://proxy.example.com:80'} # 发送请求并获取响应 response = r.send() # 打印响应状态码和头部信息 print(response.status_code) print(response.headers)
Dans le code ci-dessus, nous créons d'abord un objet de requêtes et définissons un objet proxy à l'aide du paramètre proxys. Dans cet exemple, nous transmettons la requête http à un serveur proxy nommé proxy.example.com et définissons l'adresse du serveur proxy sur 80.
Ensuite, nous avons envoyé une requête HTTP GET en utilisant la méthode send, en passant l'objet proxy en paramètre. Enfin, nous imprimons le code d'état de la réponse et les informations d'en-tête à l'aide des propriétés Response.status_code et Response.headers.
Lorsque le réseau n'est pas bon, ou que la réponse du serveur est trop lente, ou qu'une erreur est parfois signalée, afin d'éviter que le serveur ne réponde à temps, nous pouvons définir un paramètre de délai d'attente. , et le délai d'attente est utilisé ici comme paramètre.
response = requests.get('http://www.baidu.com',timeout= 30)
L'attribut timeout de l'objet de requête est utilisé pour définir le délai d'expiration de la requête. Par défaut, la valeur de l'attribut timeout est 60, ce qui signifie que le délai d'expiration de la requête est de 60 secondes. Si vous devez modifier le délai d'expiration, vous pouvez le définir sur une valeur plus petite, par exemple 30, ce qui signifie que le délai d'expiration de la demande est de 30 secondes.
Si vous devez renvoyer une réponse immédiatement après l'envoi de la demande, vous pouvez définir l'attribut timeout sur 0. L'attribut timeout aura alors la valeur None, indiquant que la demande expirera définitivement.
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!