-1

我有一个价格比较网站。您可以点击优惠链接,我会从商店获得 1 美元。

问题是:爬虫爬取整个网站。所以他们“点击链接”。我怎样才能防止他们点击?Javascript 是一个糟糕的解决方案。

谢谢!

4

3 回答 3

1

我一直在以错误的方式思考这个问题。

我同意@yttriuszzerbus 上面所说的一切——在文件中添加robots.txt,在链接中添加“rel=nofollow”,并阻止您知道的用户代理。

因此,如果您现在有人试图点击链接,那么它要么是活人,要么是您不想点击的行为不端的机器人。

那么如何做一些奇怪的事情来创建商店网站的链接呢?通常,您永远不会这样做,因为它会使您的网站无法被索引。但这不是问题——所有表现良好的机器人都不会索引这些链接,因为它们会遵守 robots.txt 文件。

我正在考虑类似没有<a href=标签的东西 - 相反,生成链接的文本,使用样式表为字体添加下划线,所以它看起来像一个普通用户的链接,然后有一个 javascript onClick 函数当用户点击它时重定向用户。机器人不会将其视为链接,用户也不会注意到任何事情。

于 2012-08-25T14:10:46.247 回答
0

你可以:

  1. 使用“rel=nofollow”指示爬虫不要跟踪您的链接。

  2. 阻止某些用户代理字符串

  3. 使用 robots.txt 排除您网站的传播。

不幸的是,以上都不会排除行为不端的爬虫。真正阻止爬虫的唯一解决方案是某种 JavaScript 链接或验证码。

于 2012-08-24T15:45:25.273 回答
0

我也有类似的项目。我的问题只能通过阻止某些用户代理字符串来解决。

另一个问题是我不知道每个“坏”用户代理的,所以当一个新的爬虫进入该站点时,我将它添加到黑名单中并追溯从统计中删除它的访问。

“rel=nofollow”和 robots.txt 对我根本不起作用。

于 2020-11-10T07:12:41.093 回答