Python 获取数据 403
我正在尝试使用urllib2从一个网页获取数据。这个网页在浏览器里能正常显示,但通过我的脚本却一直出现HTTP错误:HTTP错误403:禁止访问。
我还尝试通过修改用户代理字符串来模拟浏览器的请求,但还是没有成功。
有什么建议吗?
3 个回答
0
我也在尝试从NSE获取数据!就像pythonFoo说的,你需要额外的请求头。不过其实只需要“Accept”这个就够了。用户代理可以写成python(保持真实!)
1
这个网站在检查你的 User-Agent
,你只需要把它设置成 Internet Explorer
就可以了:
request.add_header('User-Agent', 'Internet Explorer')
我确认用 wget
这样做是有效的,如果不把你的用户代理设置成 Internet Explorer,你会收到403错误。
2
我试着用 tamper data 和 firefox 只发送用户代理信息,但结果是403错误。
然后我尝试添加其他的头信息:
Accept: text/html,application/xhtml+xml,application/xml;q=0.9,*/*;q=0.8
Accept-Language: en-us,en;q=0.5
Accept-Charset: ISO-8859-1,utf-8;q=0.7,*;q=0.7
Keep-Alive: 115
Connection: keep-alive
我试过了,这样应该可以正常工作。