反爬虫策略

突然接到一个任务,是要对公司的网站做反爬虫策略,于是到网上到处去找相关资料,总结出主要几种反爬虫策略。

1、user_agent判断:只允许特定的爬虫引擎和浏览器user_agent访问网站,否则直接报错。可以在nginx中配置,如http://blog.csdn.net/slovyz/article/details/73243926。或者在程序中判断。

2、对同一IP进行限流,如果是机器人爬虫,访问速度一般都会比人为的访问速度要快的多,所以通过限制同一IP的访问速度来甄别掉一些爬虫程序,同时,也可以在一定程度上防止DDos。如果是nginx,可以参考这篇文章https://www.zzxworld.com/blogs/limit-rate-and-connection-in-nginx.html

3、针对ip是阿里云腾讯云等的地址进行禁止

4、网页地址生成动态key,url的key码通过服务器端判断,只要判断失败,则认为是爬虫,且key由前端js生成,且js通过了混淆技术,加大破解难度。可以参考这篇文章https://cloud.tencent.com/developer/article/1004919

5、设置隐藏的假链接地址,客户是无法看见的,只有爬虫才会爬取这个地址,在服务器端对爬取这个地址的客户端ip等信息做记录,再秋后算账,禁止ip

6、Ajax异步加载数据的方式,但是这个对baidu等爬虫也会有一定的影响

7、前端数据混淆,这种方式无疑加大了爬虫识别数据的难度,就算爬虫爬取到了数据,但是返回的数据其实是错误的,客户浏览时看到的真实数据都是通过css、图片、javascript等前端手段显示的。参考这篇文章:http://imweb.io/topic/595b7161d6ca6b4f0ac71f05

  • 0
    点赞
  • 7
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值