搜索引擎与爬虫

IP USERAGENT 识别爬虫

IP USERAGENT 识别爬虫

我们在分析网站日志的时候,经常看到一些搜索引擎爬虫的 UserAgent。如果我们经常查看日志,很容易通过爬虫的 UserAgent分辨出来。主要是互联网上活跃的搜索引擎爬虫主要有:Google BotBaidu spiderBing BotSogou spiderYandex Bot 等。

在互联网上公开和未公开的 IPv4 地址有 42 亿之多,我们很难像 UserAgent 那样,看一眼就知道他是否属于这个爬虫。这个时候我们就需要借助一些工具,精准识别这些 IP 地址是否属于这个爬虫

我们可以通过爬虫识别 这个工具,精准识别爬虫。只需要输入爬虫的 IP 地址,就可以查询出爬虫的详细信息。

我们是否仅仅通过爬虫的 UserAgent 判定爬虫的真假?

由于爬虫的 UserAgent 是可以伪造,例如:下面是使用 Python Requests 自定义的一个 UserAgent 示例:

url = 'https://api.github.com/some/endpoint'
headers = {'user-agent': 'my-app/0.0.1'}

r = requests.get(url, headers=headers)

我们通过日志,看到的 UserAgent 就是:my-app/0.0.1,我们很容易就伪造了一个 UserAgent,是不是很简单。

而伪造 IP 地址却很难,同时也面临很多技术上的问题。

综上所述:我们仅仅通过 UserAgent 判断爬虫的真假是不准确的。

我们不仅要通过 UserAgent 判断爬虫,同时我们还需要结合爬虫的 IP 地址判断,这样才能准确无误。

总结

我们在识别爬虫的时候,不仅需要通过 UserAgent 还要通过 IP 地址识别,但是由于 IP 地址众多,我们不可能通过直接判断,所以我们需要借助爬虫识别 这个工具,通过 IP 地址 + UserAgent 的方式综合判断爬虫的真实性。