反爬虫策略
1、封IP:网页的运维人员通过分析日志发现最近某一个IP访问量特别特别大,某一段时间内访问了无数次的网页,则运维人员判断此种访问行为并非正常人的行为,于是直接在服务器上封杀了此人IP。
2、封USERAGENT:很多的爬虫请求头就是默认的一些很明显的爬虫头python-requests/2.18.4,诸如此类,当运维人员发现携带有这类headers的数据包,直接拒绝访问,返回403错误
3、封COOKIES:服务器对每一个访问网页的人都set-cookie,给其一个cookies,当该cookies访问超过某一个阀值时就BAN掉该COOKIE,过一段时间再放出来,当然一般爬虫都是不带COOKIE进行访问的,可是网页上有一部分内容如新浪微博是需要用户登录才能查看更多内容。限制每个每天下载300张.
4、验证码验证:当某一用户访问次数过多后,就自动让请求跳转到一个验证码页面,只有在输入正确的验证码之后才能继续访问网站
5、javascript渲染:网页开发者将重要信息放在网页中但不写入html标签中,而浏览器会自动渲染
6、 ajax异步传输:访问网页的时候服务器将网页框架返回给客户端,在与客户端交互的过程中通过异步ajax技术传输数据包到客户端,呈现在网页上,爬虫直接抓取的话信息为空
7、页面懒加载
8、Referer字段反爬:请求头字段里需要携带Cookie、User-Agent、Referer等多个字段共同请求才可以获取到图片数据,否则不返回数据。
9、延时操作:
- 在点击下载后显示评价弹窗
- 在点击下载后跳转页面
- 使用进度条控制用户与非用户,会员与非会员的下载速度
10、网页iframe框架嵌套:在下载框处再内嵌一个窗口,使得爬虫提取不到内层窗口的数据
11、csrf防护:将图片下载改为post提交,并携带随机的crfs_token值,每次进行比对token值正确后,再返回图片
12、下载图片返回包含图片得压缩包
13、限制每日下载量
14、图片加水印或者logo
15、DDOS防护
————————————————
版权声明:本文为CSDN博主「May女子」的原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接及本声明。
原文链接:https://blog.csdn.net/qq_42739440/article/details/89947395