Python 3,urlopen - HTTP错误403:禁止

时间:2017-12-01 13:19:06

标签: python

我试图自动下载谷歌图片搜索中显示的第一张图片,但我无法阅读网站来源并发生错误(" 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()

1 个答案:

答案 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()