使用Nginx过滤网络爬虫
生活随笔
收集整理的這篇文章主要介紹了
使用Nginx过滤网络爬虫
小編覺得挺不錯的,現在分享給大家,幫大家做個參考.
現在的網絡爬蟲越來越多,有很多爬蟲都是初學者寫的,和搜索引擎的爬蟲不一樣,他們不懂如何控制速度,結果往往大量消耗服務器資源,導致帶寬白白浪費了。
其實Nginx可以非常容易地根據User-Agent過濾請求,我們只需要在需要URL入口位置通過一個簡單的正則表達式就可以過濾不符合要求的爬蟲請求:
...location / {if ($http_user_agent ~* "python|curl|java|wget|httpclient|okhttp") {return 503;}# 正常處理...}...變量$http_user_agent是一個可以直接在location中引用的Nginx變量。~*表示不區分大小寫的正則匹配,通過python就可以過濾掉80%的Python爬蟲。
總結
以上是生活随笔為你收集整理的使用Nginx过滤网络爬虫的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: springboot多数据源动态数据源(
- 下一篇: 数据库锁-行级锁