一、现在很多网站都启用了防盗链反爬,防止服务器上的资源被人恶意盗取,什么是防盗链呢?
1.从HTTP协议说起,在HTTP协议中,有一个表头字段:referer,采用URL的格式来表示从哪一个链接跳转到当前网页的。通俗理解就是:客户端的请求具体从哪里来,服务器可以通过referer进行溯源。一旦检测来源不是网页所规定的,立即进行阻止或者返回指定的页面。
二、案例:抓取微博图片,url:http://blog.sina.com.cn/lm/pic/,将页面中的某一组系列详情页的图片进行抓取保存,比如三里屯时尚女郎:https: // blog.sina.com.cn / s / blog_01ebcb8a0102zi2o.html?tj = 1
注意:
1.在解析图片地址的时候,定位src的属性值,返回的内容和开发工具Element中看到的不一样,通过network查看网页源码发现需要解析real_src的值。
2.直接请求real_src请求到的图片不显示,加上Refere请求头即可
哪里找Refere:抓包工具定位到某一张图片数据包,在其requests headers中获取
代码如下:
运行结果:
加上Referer后: