will技客

专注于网站数据采集,网络爬虫研究的个人博客。

在使用python requests库抓取网页时一直显示404页面,浏览器访问却正常

Crawler 0 评

记录一下:今天在使用python requests库抓取一个网页时一直404页面,但返回的response code确是200,浏览器访问也正常。
这种情况是服务器同时返回200与404的状态码,抓包时可以看到有404与200。浏览器访问时,有200不会影响访问,而爬虫程序获取该url的回执状态码404与200,遇到有404,则抛出了HTTP Error 404: Not Found。

解决办法:
将抓包状态码200得到的cookie值贴到代码的headers里,然后就ok了

#!/usr/bin/env python
# -*- encoding: utf-8 -*-

import requests

url = {yourUrl}
headers = {'Cookie':'{yourCookies}'}
response = requests.get(url, headers=headers)

参考链接:
https://bbs.csdn.net/topics/391986299?page=1#post-403297815