J'essayais de créer un programme de scraping Web avec urllib et Beautifulsoup de Python. Cependant, j'ai eu une erreur (un message comme celui ci-dessous) indiquant que le premier urllib.request.urlopen (...) n'a pas répondu.
Il semble que la communication n'ait pas été établie en raison de l'existence du serveur proxy. Le proxy était le suivant dans Internet Explorer.
[Outils] -> [Options Internet] -> [Connexions] -> [Paramètres LAN]
[x] Utiliser un script de configuration automatique
Le script de configuration automatique était http://proxy.-----.co.jp/proxy.pac. (----- n'est pas le vrai, il est dans le vide.)
Avant urlopen, je l'ai résolu en préparant ProxyHandler pour urllib.request, en le définissant dans build_opener et en installant build_opener.
L'exemple de code est ci-dessous.
scrapetest.py
import urllib.request
proxies ={'http':'http://proxy.-----.co.jp/proxy.pac'}
proxy_handler = urllib.request.ProxyHandler(proxies)
opener = urllib.request.build_opener(proxy_handler)
urllib.request.install_opener(opener)
html = urllib.request.urelopen("http://wwww.pythonscraping.com/pages/page1.html")
print(html.read())
L'environnement de développement est Python 3.5.2 par Anaconda sur Windows.
Vous en apprendrez davantage sur la programmation du web scraping dans le livre ci-dessous. Web scraping avec Python (O'Reilly)
Recommended Posts