我要找到建设内容的网站有可能成千上万的不同条目,可通过索引和搜索。

什么样的措施,我可以采取的防止 恶意爬虫 从撕掉所有数据从我的网站?我不太担心SEO,虽然我不想要阻止合法的爬虫一起。

例如,我想到随意改变小型位HTML结构,用以显示我的数据,但是我想它不会真的是有效的。

有帮助吗?

解决方案

理论上,人眼可见的任何网站都可能是可以传播的。如果您甚至试图访问,那么根据定义,必须是这种情况(如果说机器不可读,那么说话浏览器如何能够提供您的内容)。

您最好的选择是研究水印您的内容,以便至少如果它被撕掉,您可以指向水印并声明所有权。

其他提示

之间:

  

我可以采取哪些措施来防止恶意抓取工具被剥夺

和此:

  

我不想一起阻止合法抓取工具。

你要求很多。事实是,如果你要试图阻止恶意刮刀,你最终会阻止所有“好”的东西。爬虫也是。

你必须记住,如果人们想要抓住你的内容,他们会比搜索引擎机器人付出更多的手动努力......所以你的优先事项是正确的。你有两个选择:

  1. 让互联网的农民偷走你的内容。密切关注它(在谷歌搜索一些更独特的短语)并向ISP发送拆卸请求。除了时间之外,这种选择对你的影响几乎没有。
  2. 使用AJAX和滚动加密从服务器请求所有内容。您需要保持方法更改,甚至是随机的,因此每个页面加载都带有不同的加密方案。但如果有人想破解它,即使这个 也会被破解。你也会放弃搜索引擎的面貌,因此会吸引真实用户的流量。

好的抓取工具会遵循您在robots.txt中指定的规则,恶意的抓取工具则不会。 你可以设置一个“陷阱”。对于糟糕的机器人,就像这里解释的那样: http://www.fleiner.com/bots/
但话又说回来,如果你把你的内容放在互联网上,我觉得对每个人来说都更好,如果它尽可能轻松找到(事实上,你是在这里发布而不是在一些蹩脚的论坛上专家交换

实际上你不能阻止恶意爬虫和任何措施到位,以防止他们可能会伤害你的合法用户(除了,或许添加条目来robots.txt 允许检测)

所以你要做的就是计划在内容上被偷走的-它不可能发生在一个或另一种形式和明白你将如何处理未经授权复制。

预防是不可能的--而且将是一个浪费你的时间,试图这样做。

唯一确定的方式确保内容的网站不容易复制是拔掉的网络电缆...

检测到它使用的东西喜欢 http://www.copyscape.com/ 可能会有所帮助。

甚至不要试图在网上设置限制!

这真的很简单。

任何阻止翻录的潜在措施(除了非常严格的robots.txt)都会对用户造成伤害。 Captchas比痛苦更痛苦。检查用户代理会关闭意外的浏览器。对于“聪明”而言,情况也是如此。用javascript技巧。

请保持网络畅通。如果您不想从您的网站上获取任何内容,请不要在那里发布。水印可以帮助您声明所有权,但这只有在您想要在伤害发生后提起诉讼时才有帮助。

阻止网站被机器翻录的唯一方法是让用户证明他们是人。

您可以让用户执行一项对人类而言很容易且对机器来说很难的任务,例如:CAPTCHA。当用户第一次到达您的站点时,会出现一个CAPTCHA,并且只有在完成后才允许他们继续。如果用户开始在页面之间移动太快,请重新验证。

这不是100%有效,黑客总是试图打破它们。

或者你可以做出慢响应。你不需要让它们爬行,而是选择对人类来说合理的速度(这对机器来说会非常慢)。这只会让他们花费更长的时间来抓取你的网站,但并非不可能。

行。出于想法。

简而言之:你无法阻止翻录。恶意机器人通常使用IE用户代理,现在相当聪明。如果你想让你的网站可以访问最大数量(例如屏幕阅读器等),你就不能使用javascript或其中一个流行的插件(flash),因为它们会阻止合法用户的访问。

也许你可以有一个cron作业从你的数据库中挑选一个随机片段并用Google搜索来检查匹配。然后,您可以尝试抓住有问题的网站并要求他们将内容删除。

您还可以监控来自给定IP的请求数量,并在它超过阈值时将其阻止,尽管您可能必须将合法机器人列入白名单并且不会对僵尸网络使用(但如果您遇到僵尸网络,也许翻录不是你最大的问题。)

如果您正在制作公共网站,那么这非常困难。有些方法涉及服务器端脚本以生成内容或使用非文本(Flash等)来最小化翻录的可能性。

但说实话,如果你认为你的内容如此优秀,只需密码保护并将其从公共场所删除。

我的观点是网络的重点是将有用的内容传播给尽可能多的人。

如果内容是公开的并且免费提供,即使页面视图限制或其他任何内容,您也无能为力。如果您需要注册和/或付款来访问数据,您可能会对其进行一些限制,至少您可以看到谁读取了什么并识别出似乎正在刮擦整个数据库的用户。

但是我觉得你应该更加面对这样一个事实:这是网络的运作方式,没有太多方法可以阻止机器读取人类的能力。将所有内容输出为图像当然会使大多数人失望,但随后该网站不再可访问,更不用说即使是非禁用用户也无法复制粘贴任何内容 - 这可能非常烦人。

总而言之,这听起来像是DRM /游戏保护系统 - 只会让你的合法用户感到害怕,以防止一些你无法阻止的不良行为。

您可以尝试使用Flash / Silverlight / Java显示所有页面内容。这可能会阻止大多数爬行者进入他们的轨道。

我曾经有一个基于User-Agent标头阻止或允许的系统。 它依赖于爬虫设置他们的用户代理,但似乎大多数人都这样做。

如果他们使用假标题来模拟流行的浏览器,那么它将无效。

尽可能使用人类验证器并尝试使用某种框架(MVC)。网站翻录软件有时无法破解这种页面。同时检测用户代理,至少会减少可能的破解者数量

许可以下: CC-BY-SA归因
不隶属于 StackOverflow
scroll top