Comme le dit le titre. Même si j'ai pas mal cherché sur Google, je n'ai pas pu trouver de solution en japonais ou en anglais, alors faites une note pour que je puisse m'y référer en cas de récidive
Ce n'est pas vraiment wikipedia, mais c'est arrivé quand j'ai gratté le site https: // ~
.
Avec le PC que vous touchez maintenant, vous pouvez gratter le site sans aucune erreur. Pourquoi ... un problème environnemental?
import requests
url = 'https://ja.wikipedia.org/wiki/%E3%83%A1%E3%82%A4%E3%83%B3%E3%83%9A%E3%83%BC%E3%82%B8'
response = requests.get(url)
result = response.text
print(result)
Je n'ai pas écrit le message d'erreur à ce moment-là, mais je me souviens que le mot «mauvaise poignée de main» était inclus dans «SSLError».
Je ne voulais pas utiliser la stratégie verify = False
, donc j'ai fait beaucoup de recherches et j'ai trouvé qu'en utilisant ʻurllib et
ssl`, j'étais capable de gratter sans aucune erreur.
Une fois arrivé, il ne vous reste plus qu'à extraire les éléments que vous souhaitez utiliser avec Beautiful Soup 4.
import urllib.request
import ssl
url = 'https://ja.wikipedia.org/wiki/%E3%83%A1%E3%82%A4%E3%83%B3%E3%83%9A%E3%83%BC%E3%82%B8'
context = ssl.SSLContext()
req = urllib.request.Request(url=url)
with urllib.request.urlopen(req, context=context) as f:
result = f.read().decode()
print(result)
Recommended Posts