如何避免被刮伤?

我们有一个可search的数据库(DB),我们将结果限制为每个页面15个,只有100个结果,但仍然有人试图抓取该网站。

我们禁止那些速度够快的网站。 我想知道还有什么我们可以做的。 Flash渲染结果可能?

通过AJAX检索logging,并使用AJAX调用的身份validationID(如API键),可以使其变得更加困难。

当然,你可以通过阅读ID来解决这个问题,然后使用它来发送AJAX请求。

与Flash呈现是一种替代,因为你指出(尽pipe仍然不是100%不可解),就像在PDF中呈现一样。

由于你的数据库显然是有需求的,你有没有想过要把它变成什么样子? 与刮板build立业务联系,鼓励与API合适使用?

有一些很好的信息, 你如何阻止脚本每秒钟砰的一次你的网站数百次?

没有任何技术解决scheme来阻止有动机的个人窃取您公开访问的内容。

但是,您可以通过以下方式合法保护您的知识产权:

  • 确保您的网站有明确的版权
  • 在页脚中张贴明确禁止刮取的服务条款
  • 考虑将数字水印embedded到您网站的所有内容中。 不要忘记,文本也可以被embedded水印!

如何设置身份validation(可能是validation码),跟踪使用情况以及限制对某些logging或search的访问是否是给定的时间段?

你可能会发现,当你使用不同的技术时,刮板会改善他们的来临。 也许有一种方法可以分析用户的行为,这些用户是否会出现validation码或其他破坏? 也许你可以在一段时间内将结果限制在一个较小的数值上,迫使刮板等待10天。 如果他们之间没有login,那么假设他们是scapers?

无论你做什么,一定要把你的技术混合起来,给他们一点点长寿。

你需要考虑到刮板可能没有使用你的网页和表单,他们可能只是在http层次上调用你的网站。

我认为最好的解决办法是在ip地址请求超过一定的请求阈值后抛出catchpa。

您需要非常小心,以确保您不会影响真正用户的应用程序的可伸缩性。

如问题中所述,限制每页数据量只会增加客户端针对您的服务器请求的数量。