我试图自动下载谷歌图片搜索中显示的第一张图片,但我无法阅读网站来源并发生错误(" HTTP错误403:禁止使用&# 34)。 有任何想法吗?谢谢您的帮助!
那是我的代码:
from urllib.request import urlopen
from bs4 import BeautifulSoup
word = 'house'
r = urlopen('https://www.google.pl/search?&dcr=0&tbm=isch&q='+word)
data = r.read()
答案 0 :(得分:1)
显然你必须传递headers
参数,因为网站阻止你认为你是一个请求数据的机器人。我在这里找到了这样做的例子HTTP error 403 in Python 3 Web Scraping。
此外,urlopen
对象不支持headers
参数,因此我不得不使用Request
对象。
from urllib.request import urlopen, Request
from bs4 import BeautifulSoup
word = 'house'
r = Request('https://www.google.pl/search?&dcr=0&tbm=isch&q='+word, headers={'User-Agent': 'Mozilla/5.0'})
response = urlopen(r).read()