我有一个价格比较网站。您可以点击优惠链接,我会从商店获得 1 美元。
问题是:爬虫爬取整个网站。所以他们“点击链接”。我怎样才能防止他们点击?Javascript 是一个糟糕的解决方案。
谢谢!
我有一个价格比较网站。您可以点击优惠链接,我会从商店获得 1 美元。
问题是:爬虫爬取整个网站。所以他们“点击链接”。我怎样才能防止他们点击?Javascript 是一个糟糕的解决方案。
谢谢!
我一直在以错误的方式思考这个问题。
我同意@yttriuszzerbus 上面所说的一切——在文件中添加robots.txt,在链接中添加“rel=nofollow”,并阻止您知道的用户代理。
因此,如果您现在有人试图点击链接,那么它要么是活人,要么是您不想点击的行为不端的机器人。
那么如何做一些奇怪的事情来创建商店网站的链接呢?通常,您永远不会这样做,因为它会使您的网站无法被索引。但这不是问题——所有表现良好的机器人都不会索引这些链接,因为它们会遵守 robots.txt 文件。
我正在考虑类似没有<a href=
标签的东西 - 相反,生成链接的文本,使用样式表为字体添加下划线,所以它看起来像一个普通用户的链接,然后有一个 javascript onClick 函数当用户点击它时重定向用户。机器人不会将其视为链接,用户也不会注意到任何事情。
你可以:
使用“rel=nofollow”指示爬虫不要跟踪您的链接。
阻止某些用户代理字符串
使用 robots.txt 排除您网站的传播。
不幸的是,以上都不会排除行为不端的爬虫。真正阻止爬虫的唯一解决方案是某种 JavaScript 链接或验证码。
我也有类似的项目。我的问题只能通过阻止某些用户代理字符串来解决。
另一个问题是我不知道每个“坏”用户代理的,所以当一个新的爬虫进入该站点时,我将它添加到黑名单中并追溯从统计中删除它的访问。
“rel=nofollow”和 robots.txt 对我根本不起作用。