字节跳动开始了搜索业务,于是派出了名叫ByteSpider的爬虫在全网开始爬取各种网站。
UserAgent其一是:
Mozilla/5.0 (iPhone; CPU iPhone OS 11_0 like Mac OS X) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/53.0.2404.1317 Mobile Safari/537.36; Bytespider
第一次看到此爬虫爬取的太过分的时候,修改nginx配置,凡是遇到ByteSpider爬虫的时候,nginx返回403。配置如下
if ($http_user_agent ~* (Bytespider|webmeup)) { return 403; }
过了两天,有朋友说网站很卡,看了一下nginx访问日志,发现又有爬虫来爬网站,频率非常快。
这次来的爬虫的UserAgent没有ByteSpider字样,以往常经验来看,有很大可能是字节跳动的爬虫。此爬虫的特点是,请求特别频繁;每次请求都换IP地址;IP地址在几个固定的网段;如果是普通的小爬虫,不会有这么专业的操作
升级了服务器硬件配置后,发现服务器还是卡,于是只能放大招,屏蔽爬虫的IP网段。统计一下访问日志的IP地址段,修改网络防火墙规则。笔者使用的阿里云ECS,在控制面板里面设置如下拒绝规则:
220.243.0.0/16 111.225.0.0/16 66.249.0.0/16 110.249.0.0/16

设置好了之后,一切归于平静。能安心工作了。
接下来的一天,笔者临时解除一下防火墙拒绝规则,没有发现类似今日头条爬虫来访问