爬虫 Bingbot分析

服务器日志如下 :

40.77.167.60 - - [03/Mar/2025:13:41:36 +0800] "GET /cgi-bin/oui_lookup?mac=pokemon+yelow HTTP/1.1" 404 208 "-" "Mozilla/5.0 AppleWebKit/537.36 (KHTML, like Gecko; compatible; bingbot/2.0; +http://www.bing.com/bingbot.htm) Chrome/116.0.1938.76 Safari/537.36"
40.77.167.60 - - [03/Mar/2025:13:41:36 +0800] "GET /cgi-bin/oui_lookup?mac=pokemon+yelow HTTP/1.1" 404 208 "-" "Mozilla/5.0 AppleWebKit/537.36 (KHTML, like Gecko; compatible; bingbot/2.0; +http://www.bing.com/bingbot.htm) Chrome/116.0.1938.76 Safari/537.36"
20.15.133.174 - - [03/Mar/2025:13:41:38 +0800] "GET /cgi-bin/oui_lookup?mac=BT10+english HTTP/1.1" 404 208 "-" "Mozilla/5.0 AppleWebKit/537.36 (KHTML, like Gecko; compatible; bingbot/2.0; +http://www.bing.com/bingbot.htm) Chrome/116.0.1938.76 Safari/537.36"
20.15.133.174 - - [03/Mar/2025:13:41:38 +0800] "GET /cgi-bin/oui_lookup?mac=BT10+english HTTP/1.1" 404 208 "-" "Mozilla/5.0 AppleWebKit/537.36 (KHTML, like Gecko; compatible; bingbot/2.0; +http://www.bing.com/bingbot.htm) Chrome/116.0.1938.76 Safari/537.36"

从提供的日志片段中,我们可以看到以下关键信息:


1. 日志分析

  • IP地址:
    • 40.77.167.60
    • 20.15.133.174
  • User-Agent:
    • Mozilla/5.0 AppleWebKit/537.36 (KHTML, like Gecko; compatible; bingbot/2.0; +http://www.bing.com/bingbot.htm) Chrome/116.0.1938.76 Safari/537.36
    • 这表明这些请求来自 Bingbot,即微软Bing搜索引擎的爬虫。
  • 请求路径:
    • /cgi-bin/oui_lookup?mac=pokemon+yelow
    • /cgi-bin/oui_lookup?mac=BT10+english
  • 响应状态码:
    • 404(未找到),表明请求的资源不存在。
  • 请求频率:
    • 短时间内有多个请求,表明Bingbot在尝试抓取这些URL。

2. 爬虫信息

  • 爬虫名称: Bingbot
  • 爬虫类型: 搜索引擎爬虫(微软Bing)
  • 爬虫目的: 抓取网页内容以更新Bing搜索引擎的索引。
  • 行为特点:
    • 根据Bing的官方声明,Bingbot会遵循 robots.txt 规则。
    • 如果页面返回404错误,Bingbot会在一段时间后重新尝试抓取,直到确认页面已失效。

3. 爬虫历史

  • 访问路径:
    • Bingbot尝试访问 /cgi-bin/oui_lookup 路径下的资源,但这些资源返回了404错误。
    • 可能是由于这些URL曾经存在并被索引,或者有其他页面链接到了这些URL。
  • 访问频率:
    • 短时间内多次访问,表明Bingbot在尝试抓取这些URL以确认其状态。

4. 如何屏蔽爬虫

如果你希望屏蔽Bingbot或其他爬虫,可以通过以下几种方式实现:

4.1 通过 robots.txt 文件限制

  • 屏蔽Bingbot:

    User-agent: bingbot Disallow: / 这将禁止Bingbot抓取你网站的任何页面。

  • 屏蔽特定路径:

    User-agent: bingbot Disallow: /cgi-bin/ 这将禁止Bingbot抓取 /cgi-bin/ 路径下的所有内容。

4.2 通过防火墙屏蔽

  • 使用iptables屏蔽IP地址:

    bash iptables -A INPUT -s 40.77.167.60 -j DROP iptables -A INPUT -s 20.15.133.174 -j DROP


5. 总结

  • 当前日志显示Bingbot正在尝试抓取无效的URL,导致404错误。
  • 可以通过修复URL、设置重定向、更新 robots.txt 或返回410状态码来解决这一问题。
  • 如果不需要Bingbot抓取你的网站,可以通过服务器配置或Bing Webmaster Tools屏蔽它。

通过以上措施,可以有效减少无效请求,提升网站的健康状态和搜索引擎友好性。