在请求网页爬取的时候,输出的text信息中会出现抱歉,无法访问等字眼,这就是禁止爬取,需要通过反爬机制去解决这个问题。
headers是解决requests请求反爬的方法之一,相当于我们进去这个网页的服务器本身,假装自己本身在爬取数据。
对反爬虫网页,可以设置一些headers信息,模拟成浏览器取访问网站 。
headers
谷歌或者火狐浏览器,在网页面上点击:右键–检查;点击更多工具-开发者工具;直接f12亦可。然后再按fn+f5刷新出网页来显示元素
有的浏览器是点击:右键->查看元素,刷新
相关推荐:《python视频教程》
注意:headers中有很多内容,主要常用的就是user-agent 和 host,他们是以键对的形式展现出来,如果user-agent 以字典键对形式作为headers的内容,就可以反爬成功,就不需要其他键对;否则,需要加入headers下的更多键对形式。
设置
import urllib2import urllibvalues={"username":"xxxx","password":"xxxxx"}data=urllib.urlencode(values)url= "https://ssl.gstatic.com/gb/images/v2_730ffe61.png"user_agent="mozilla/5.0 (iphone; cpu iphone os 11_0 like mac os x) applewebkit/604.1.38 (khtml, like gecko) version/11.0 mobile/15a372 safari/604.1"referer='http://www.google.com/'headers={"user-agent":user_agent,'referer':referer}request=urllib2.request(url,data,headers)response=urllib2.urlopen(request)print response.read()
以上就是python爬虫怎么设置请求头的详细内容。