0

我正在一个包含 Spring MVC 中房地产列表的网站上工作。我想防止脚本通过抓取网站来窃取内容。有没有人有可以轻松插入spring mvc环境的技术经验?

用户代理太简单而无法规避。

我的一个想法是跟踪服务器端的两个计数器。ipaddress --> (counter xhr request, counter page request)

  • 计数器页面请求通过过滤器增加
  • 文档准备就绪后,计数器 xhr 请求增加

如果过滤器注意到两个计数器完全不同步,则该 ip 被阻止。

这可以工作还是有更简单的技术?

干杯

编辑

我知道,如果抓取工具是持久的,他们会找到获取内容的方法。但是,我想让它尽可能难。

4

3 回答 3

0

你根本无法阻止它,但你可以尽可能地让它变得更难。

使其更难的一种方法是根据时间非常频繁地更改您的内容 URL,并在 url 中附加一些加密标志。

一些建议在给定的链接中。 http://blog.screen-scraper.com/2009/08/17/further-thoughts-on-hindering-screen-scraping/ http://www.hyperarts.com/blog/the-definitive-guide-to-博客内容抓取如何停止它/

于 2013-06-15T04:25:20.173 回答
0

通过 ajax 加载内容。使 ajax 请求动态化,这样他们就不能只是去抓取 ajax 请求。

只有复杂的爬虫支持 java 脚本的执行。

大多数抓取工具不会通过真正的浏览器运行页面,因此您可以尝试利用它来发挥自己的优势。

于 2013-06-15T10:48:46.330 回答
0

在我的头顶上:

  • 寻找请求页面的模式。定期间隔是一个标志。常规频率可能是一个标志(一天四次,但在一天中的不同时间)。
  • 需要登录。在用户登录之前什么都不会显示,所以至少爬虫必须有一个帐户。
  • 每隔一段时间在内容周围混合标签名称。这可能会破坏他们的剧本。这样做足够多次,他们会寻找更绿色的牧场。
于 2013-06-14T23:22:50.323 回答