他们是如何阻止网页抓取的?

时间:2012-01-22 15:49:03

标签: java web-crawler

我最近编写了一个java爬虫程序,它可以在网站中找到视频链接并保存在文本文件中。但是存在严重的问题。

为了防止网页抓取,他们使用一些方法来更改服务器中视频的路径。我知道他们不会动态改变视频链接的实际路径。这太昂贵了。但是,我可以想出他们用一些像session-id这样的密钥来加密文件路径。

现在,我从Web服务器收到HTTP 410 - Gone错误。有什么想法他们如何防止爬行和解决方案来克服这些家伙的聪明方法?

1 个答案:

答案 0 :(得分:5)

人们可以采用多种方法来保护他们的资源免遭盗窃/抓取:

  • 拒绝可疑的用户代理字符串
  • 禁止具有非典型使用模式的IP地址 - 包括访问过快,同时,选择性下载(如果从未下载CSS / JS,这是抓取的迹象)或在您的方法中过于有条理(下载)每个区域顺序,普通用户不会这样做)
  • 要求设置HTTP Referrer,并且要在站点内的页面上设置,可能来自有效的链接源(例如,如果视频未在主页上链接,那么它可能会拒绝标题被设置为 - 当它看到这个时它也可能被记录/ IP阻止)

如果他们对他们发布的信息(或信息不属于公共领域)有版权主张,如果他们试图阻止此类访问,则暗示;那么你所做的事情在世界上大多数地区都可能是非法的。