如何检查请求是不是来自 google、facebook、twitter 和 bing 爬虫? [复制]

Posted

技术标签:

【中文标题】如何检查请求是不是来自 google、facebook、twitter 和 bing 爬虫? [复制]【英文标题】:How to check if the request is from google, facebook, twitter and bing crawlers? [duplicate]如何检查请求是否来自 google、facebook、twitter 和 bing 爬虫? [复制] 【发布时间】:2016-01-03 09:59:32 【问题描述】:

我想为 Web 应用程序提供服务,并使用双向数据绑定在 javascript 中编译模板。 另一方面,我想为网络爬虫生成现成的 html 内容。

如何知道请求是否来自流行的网络爬虫/机器人,例如 Google、bing、facebook、twitter??

【问题讨论】:

他们通常会通过用户代理告诉您。它会说“google bot”或“Yahoo”或“bing”或类似的东西。 我怎么没想到 你应该回答我会接受的 ***.com/questions/677419/… - 这回答了您的问题并包括所有搜索引擎等的列表。 【参考方案1】:

他们通常通过用户代理发送此类信息,例如

Google 抓取工具 雅虎 必应

或类似的东西,在php中你可以找到用户代理

$_SERVER['HTTP_USER_AGENT'];

但是,您应该知道用户代理可能会被欺骗。

【讨论】:

以上是关于如何检查请求是不是来自 google、facebook、twitter 和 bing 爬虫? [复制]的主要内容,如果未能解决你的问题,请参考以下文章

服务器可以检查请求是不是来自 iframe (Node.js)?

使用 servlet/jsp 检查 HTTP 请求是不是来自 Android 手机

确定 Flask 请求是不是来自 JavaScript

如何验证来自 HTTP 请求的 Google Cloud Task 令牌?

如何使用 laravel 8 验证来自另一个(买家)表的数据(请求中)

我如何检查来自移动应用程序或 WEB 的请求