如何使用用户代理检测开放图形的机器人?

时间:2017-10-31 00:26:12

标签: node.js regex express facebook-opengraph

所以我正在为我的单页应用程序做一些服务器端逻辑,我需要检测各种打开的图形爬虫,以便我可以提供开放的图形数据而不是标准的索引页面。

据我所知,应该包含字符串facebot twitterbotfacebookexternalhit的用户代理。但是有人为此创建了一个正则表达式(或npm包)吗?

我认为网络上还有其他地方可能想要使用开放图表数据,我希望能够向他们提供开放图表数据(我不知道,像pinterest或其他东西)

1 个答案:

答案 0 :(得分:5)

我无法理解为什么你的答案被低估了。而且我认为如果开放式图形爬虫在其用户代理中具有共同的字符串以使检测更容易,那将会更加简单。我有同样的问题,我正在做的是使用这个文件https://github.com/monperrus/crawler-user-agents/blob/master/crawler-user-agents.json,并选中那些我只想提供Open Graph标记,检查他们的文档。我没有使用nodejs,但一个好主意是分叉它并为开放图形爬虫创建一个npm包。