我们查找网页的时候,点击进去就是一个完整的查看过程。当我们想要获取网页数据的时候,就要跟这种浏览过程一样,不然网页会把我们阻拦在外面。我们今天所要讲的python爬虫header就是帮助我们完成这样浏览过程的一个工具,是不是听起来很有意思,接下来我们看看怎么用吧。
headers是解决requests请求反爬的方法之一,相当于我们进去这个网页的服务器本身,假装自己本身在爬取数据。
对反爬虫网页,可以设置一些headers信息,模拟成浏览器取访问网站 。
谷歌或者火狐浏览器,在网页面上点击:右键–检查;点击更多工具-开发者工具;直接F12亦可。然后再按Fn+F5刷新出网页来显示元素
有的浏览器是点击:右键->查看元素,刷新
注意:headers中有很多内容,主要常用的就是user-agent 和 host,他们是以键对的形式展现出来,如果user-agent 以字典键对形式作为headers的内容,就可以反爬成功,就不需要其他键对;否则,需要加入headers下的更多键对形式。
import urllib2 import urllib values={"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()
如果有小伙伴想要去别的网站获取数据,但是却失败了,可以考虑一下是不是这方面的原因,试着用此类方法进行解决。
神龙|纯净稳定代理IP免费测试>>>>>>>>天启|企业级代理IP免费测试>>>>>>>>IPIPGO|全球住宅代理IP免费测试