Explication détaillée de la façon dont les robots d'exploration Python utilisent le proxy pour explorer les pages Web

高洛峰
Libérer: 2017-03-19 14:43:46
original
1986 Les gens l'ont consulté

Type de proxy (proxy) : proxy transparent, proxy anonyme, proxy de confusion et proxy à haut anonymat. Voici quelques connaissances sur les robots python utilisant des proxys et une classe de pool de proxy. C'est pratique pour tout le monde. pour traiter divers aspects du travail. Un problème d'exploration complexe.

Le module urllib utilise un proxy

L'utilisation d'un proxy pour urllib/urllib2 est plus gênante. Vous devez d'abord créer une classe ProxyHandler, puis utiliser cette classe pour créer la classe d'ouverture qui s'ouvre. la page Web, puis utilisez-la dans la demande Installer l'ouvreur.

Le format du proxy est "http://127.0.0.1:80". Si vous voulez le mot de passe du compte, c'est "http:/". /user:password@127.0.0.1:80".

proxy="http://127.0.0.1:80"
# 创建一个ProxyHandler对象
proxy_support=urllib.request.ProxyHandler({'http':proxy})
# 创建一个opener对象
opener = urllib.request.build_opener(proxy_support)
# 给request装载opener
urllib.request.install_opener(opener)
# 打开一个url
r = urllib.request.urlopen('http://youtube.com',timeout = 500)
Copier après la connexion

le module de requêtes utilise un proxy

les requêtes utilisent un proxy beaucoup plus simple que urllib... Voici un seul proxy à titre d'exemple. S'il est utilisé plusieurs fois, vous pouvez utiliser session pour le créer.

Si vous devez utiliser un proxy, vous pouvez configurer une seule requête en fournissant le paramètre proxy à n'importe quelle méthode de requête. :

import requests
proxies = {
  "http": "http://127.0.0.1:3128",
  "https": "http://127.0.0.1:2080",
}
r=requests.get("http://youtube.com", proxies=proxies)
print r.text
Copier après la connexion

Vous pouvez également passer les variables d'environnement HTTP_PROXY et HTTPS_PROXY Configurer le proxy.

export HTTP_PROXY="http://127.0.0.1:3128"
export HTTPS_PROXY="http://127.0.0.1:2080"
python
>>> import requests
>>> r=requests.get("http://youtube.com")
>>> print r.text
Copier après la connexion

Si votre proxy doit utiliser HTTP Basic Auth, vous pouvez utiliser http://user:password@host/ Syntaxe :

proxies = {
    "http": "http://user:pass@127.0.0.1:3128/",
}
Copier après la connexion

L'utilisation du proxy de Python est très simple. Le plus important est de trouver un agent avec un réseau stable et fiable. Si vous avez des questions, n'hésitez pas à laisser un message

.

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!

Étiquettes associées:
source:php.cn
Déclaration de ce site Web
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn
Tutoriels populaires
Plus>
Derniers téléchargements
Plus>
effets Web
Code source du site Web
Matériel du site Web
Modèle frontal
À propos de nous Clause de non-responsabilité Sitemap
Site Web PHP chinois:Formation PHP en ligne sur le bien-être public,Aidez les apprenants PHP à grandir rapidement!