理论上说,数据防采的可能性并不大,这是由本身的技术所决定的。熟悉技术的人都知道,在打开网页的时候,实际是已经将网页数据缓存到本地了,只是通过浏览器进行解析而已,这就决定了这些网页数据的可见性,既然可见,就可以获取。但对于任何事情,都讲究一个性价比,所以,从根本上无法杜绝数据被采,那么我们就增加其采集的成本,通过此种方法使其达到不可承受的程度,也就从另一个角度来讲解决了防采的问题。事务是两面性,增加其采集成本的同时,也会增加自身的网站制作成本,这个不要被忽略掉。
介绍几种常用的防采方法:
1、将关键信息作特殊处理:
譬如:电话、电子邮件等非常有用的信息。特殊处理可以由多种方法,1)图片化,将电话支撑图片,然后通过网页加载。此种方式最为有效,因为对于数据采集而言尽管可以下载图片,但大部分采集软件都不具备OCR识别功能,即便后期通过OCR工具识别了,但对于大量数据的对应将会非常痛苦。2)加密干扰:将电话号码在网页源码中进行加密处理,在显示的时候通过js进行解析获取数据。此种方式在一定程度上解决了防采的问题是因为采集软件对js支持不够完善,但如果采集软件对js解析达到一定程度,此种方法将失效。3)通过显示方式进行不规则的干扰处理,譬如:在电话中加入更多的字符,但在格式设置上将其fontsize设置为0,不进行显示。此种方式在文章防采方面效果会好一些。
2、分离数据:
分离数据可能不太容易理解。简单的说,在数据采集时,往往是采集一组有意义的数据,譬如招聘采集:公司、职位、职位介绍、联系方式。这是一个对应关系,缺一不可,只有在一组数据时才会有意义,那么我们在做网站时要将其分离,将公司、职位及联系方式通过不同的地址将其组合进行显示。这样在采集时就造成了数据对应的困难。如果数据无法对应,则数据采集后也就失去了意义。
3、将网页地址不规则化或加密处理:
这个容易理解,很多网站的Url地址都具备一定的规则,譬如:1.html、2.html或者Page=1等等,这种规则很容易被人发现,也就很容易被采集到,但如果对以上网址增加了一些特殊的处理:294243.html 421382.html这样,就失去了成批采集的手段,单独采集页面将无限增加其成本。至于这样的特殊处理,可以由你自己来制定一个小程序进行识别。
今天先介绍这三种常用的防采方法,后续将会慢慢介绍。