这是怎么情况勒?
urllib.error.HTTPError: HTTP Error 403: Forbidden如题 发下代码呗 okkboss 发表于 2020-11-1 09:30
发下代码呗
就是爬取一个网页的图片,代码通不过审核好像 这种错误,服务器端只会收到该页面访问的请求,可能被认为是爬虫,
有些网站为了防止这种非正常的访问,
会验证请求信息中的 UserAgent
如果 UserAgent 存在异常或者是不存在,那么这次请求将会被拒绝
所以可以尝试在请求中加入 UserAgent 的信息 本帖最后由 小甲鱼的铁粉 于 2020-11-1 09:45 编辑
使用 UserAgent,以妹子图为例吧
import urllib.request
def url_open(url):
req = urllib.request.Request(url)
req.add_header('User-Agent','https://www.mzitu.com/static/pc/style.css?0424')
req.add_header('Referer','https://www.mzitu.com/hot/')
response = urllib.request.urlopen(req)
html = response.read()
return html
url = 'https://www.mzitu.com/hot/'
url_open(url)
小甲鱼的铁粉 发表于 2020-11-1 09:43
使用 UserAgent,以妹子图为例吧
为啥你这个我run之后什么都出不来呢 linkais 发表于 2020-11-1 12:13
为啥你这个我run之后什么都出不来呢
行了行了,这个好像要在shell中调用一下方法才行 linkais 发表于 2020-11-1 12:13
为啥你这个我run之后什么都出不来呢
当然什么都没有了{:10_243:},因为我写的这个没输出
你再加一个print(html) 小甲鱼的铁粉 发表于 2020-11-1 15:12
当然什么都没有了,因为我写的这个没输出
你再加一个print(html)
def find_imgs(url):
html = url_open(url).decode('GBK')
img_addrs = []
a = r'http://d-pic-image.yesky.com/185x247/uploadImages/2018/(\d){3}/(\d){2}/(.)+_H.JPG'
pagelist2 = re.findall(a,html)
print(pagelist2)
find_imgs('http://pic.yesky.com/c/6_20491_1.shtml')
大哥为啥我这个函数输出的是这么个玩意
[('3', '7', '8'), ('5', '0', 'X'), ('4', '3', 'J'), ('9', '6', 'W'), ('4', '8', 'A'), ('8', '8', 'X'), ('5', '9', '8'), ('8', '5', 'U'), ('7', '3', 'B'), ('5', '2', '0'), ('4', '0', '8'), ('0', '2', '8'), ('9', '1', '7'), ('5', '3', 'F'), ('7', '4', '8'), ('7', '8', 'S'), ('7', '6', '2'), ('7', '2', 'G'), ('7', '0', '6'), ('7', '8', 'U'), ('0', '0', '6'), ('8', '3', 'E'), ('7', '1', 'I'), ('7', '5', 'N'), ('6', '5', '4'), ('4', '9', '2'), ('1', '7', 'Q'), ('7', '4', '0'), ('3', '9', 'D')]
页:
[1]