最近发现大量来自欧美的请求,高峰每秒 58 个请求里,有 52 个都是这些爬虫。
它们爬的速度快,范围广,又不能产出实际效益,完全可以屏蔽掉。
下面是我的配置:
if ($http_user_agent ~* "AhrefsBot|MJ12bot|hubspot|opensiteexplorer|leiki|webmeup") {
return 403;
}
欢迎大家一起来补充完善:
1
asilin 2018-09-10 21:13:19 +08:00
return 状态可以改成 444。
|
2
snal123 2018-09-10 21:31:34 +08:00 via iPhone
楼主你能解释下写的这个有啥用?
|
3
airyland 2018-09-10 21:40:11 +08:00
为什么不直接改 robots 规则
|
4
CEBBCAT 2018-09-10 22:26:34 +08:00 via Android
楼上+1
|
5
1v9 2018-09-10 23:42:01 +08:00
|
6
SukkaW 2018-09-10 23:46:18 +08:00 5
FeedDemon|Indy Library|Alexa Toolbar|AskTbFXTV|AhrefsBot|CrawlDaddy|CoolpadWebkit|Java|Feedly|UniversalFeedParser|ApacheBench|Microsoft URL Control|Swiftbot|ZmEu|oBot|jaunty|Python-urllib|lightDeckReports Bot|YYSpider|DigExt|HttpClient|MJ12bot|heritrix|EasouSpider|Ezooms
|
7
nicoljiang OP |
8
nicoljiang OP @SukkaW 赞
|
9
buffge 2018-09-11 01:49:57 +08:00
既然做爬虫了,还不改 user-agent? 我一般都是用谷歌浏览器 ua.
|
10
nicoljiang OP @buffge 倒是不认为 UA 能解决所有问题,但理论上比 robots.txt 的适用性更广,且更高效直接。这个观点应该没问题。
|
11
nicoljiang OP @asilin 学习了
|
13
jiabing520a 2018-09-11 08:45:29 +08:00
LMAO|Hakai|Gemini|Wappalyzer|masscan|crawler4j|Mappy|Center|eright|aiohttp|MauiBot|Crawler|researchscan|Dispatch|AlphaBot|Census|ips-agent|NetcraftSurveyAgent|ToutiaoSpider|EasyHttp|Iframely|sysscan|fasthttp|muhstik|DeuSu|mstshash|HTTP_Request|ExtLinksBot|package|SafeDNSBot|CPython|SiteExplorer|SSH|python-requests|MegaIndex|BUbiNG|CCBot|NetTrack|Digincore|aiHitBot|SurdotlyBot|null|SemrushBot|Test|Copied|ltx71|Nmap|DotBot|AdsBot|InetURL|Pcore-HTTP|PocketParser|Wotbox|newspaper|DnyzBot|redback|PiplBot|SMTBot|WinHTTP|Auto Spider 1.0|GrabNet|TurnitinBot|Go-Ahead-Got-It|Download Demon|Go!Zilla|GetWeb!|GetRight|libwww-perl|Cliqzbot|MailChimp|SMTBot|Dataprovider|XoviBot|linkdexbot|SeznamBot|Qwantify|spbot|evc-batch|zgrab|Go-http-client|FeedDemon|JikeSpider|Indy Library|Alexa Toolbar|AskTbFXTV|AhrefsBot|CrawlDaddy|CoolpadWebkit|Java|UniversalFeedParser|ApacheBench|Microsoft URL Control|Swiftbot|ZmEu|jaunty|Python-urllib|lightDeckReports Bot|YYSpider|DigExt|YisouSpider|HttpClient|MJ12bot|EasouSpider|LinkpadBot|Ezooms|^$
|
14
Leigg 2018-09-11 09:43:54 +08:00 via iPhone
既然是反爬虫,什么 ua,robot 规则都是基本的,如果不是重要的数据,再限制单 ip 访频就足够。
|
15
Xrong 2018-09-11 09:46:23 +08:00
|
16
longyujin9 2018-09-11 10:11:21 +08:00
if ($http_user_agent !~* (Chrome|Opera|Safari|Edge|Firefox|Gecko)) {
return 444; } 只允许浏览器 ua 进行访问 |
17
nicoljiang OP |
18
nicoljiang OP @jiabing520a 真全。不过屏蔽了一些 WinHTTP、HttpClient 之类的,恐怕使用的时候得具体看看场景。
|
19
Joyboo 2018-09-11 17:10:16 +08:00
多数框架都会判断是否爬虫请求的,只要看过源码的大概都知道吧
|
20
nicoljiang OP @Joyboo 你指的是什么框架?
|
21
buffge 2018-09-11 19:22:16 +08:00
@nicoljiang 我觉得你这是防蜘蛛,而不是屏蔽爬虫
|
22
nicoljiang OP @buffge 不管是 Spider 还是 Crawler,实际上指的都是一类的东西。
|
23
mingyun 2018-09-15 19:12:43 +08:00
@longyujin9 header 里伪造的 ua 可以通过吗
|