您的位置:首页 > 其它

防采集 - 最看不起采集,一点技术含量都没有!

2010-06-27 10:25 211 查看

者自己是写采集器的,所以对网站防采集有一些心得体会。因为是在上班时间,各种方法只是简单的提及。

很多防采集方法在施行的时候需要考虑
是否影响搜索引擎对网站的抓取,所以先来分析下一般采集器和搜索引擎爬虫采集有何不同。

相同点:a.
两者都需要直接抓取到网页源码才能有效工作,b. 两者单位时间内会多次大量抓取被访问的网站内容;c. 宏观上来讲两者IP都会变动;d.
两者多没耐心的去破解你对网页的一些加密(验证),比如网页内容通过js文件加密,比如需要输入验证码才能浏览内容,比如需要登录才能访问内容等。


同点:搜索引擎爬虫先忽略整个网页源码脚本和样式以及html标签代码,然后对剩下的文字部分进行切词语法句法分析等一系列的复杂处理。而采集器一般是通
过html标签特点来抓取需要的数据,在制作采集规则时需要填写目标内容的开始标志何结束标志,这样就定位了所需要的内容;或者采用对特定网页制作特定的
正则表达式,来筛选出需要的内容。无论是利用开始结束标志还是正则表达式,都会涉及到html标签(网页结构分析)。

然后再来提出一些防
采集方法

1、限制IP地址单位时间的访问次数

分析:没有哪个常人一秒钟内能访问相同网站5次,除非是程序访问,而有这种喜好的,就剩下搜
索引擎爬虫和讨厌的采集器了。

弊端:一刀切,这同样会阻止搜索引擎对网站的收录

适用网站:不太依靠搜索引擎的网站

采集器会怎么
做:减少单位时间的访问次数,减低采集效率

2、屏蔽ip

分析:通过后台计数器,记录来访者ip和访问频率,人为分析来访记录,屏
蔽可疑Ip。

弊端:似乎没什么弊端,就是站长忙了点

适用网站:所有网站,且站长能够知道哪些是google或者百度的机器人

采集
器会怎么做:打游击战呗!利用ip代理采集一次换一次,不过会降低采集器的效率和网速(用代理嘛)。

3、利用js加密网页内容

Note:
这个方法我没接触过,只是从别处看来

分析:不用分析了,搜索引擎爬虫和采集器通杀

适用网站:极度讨厌搜索引擎和采集器的网站

采集
器会这么做:你那么牛,都豁出去了,他就不来采你了

4、网页里隐藏网站版权或者一些随机垃圾文字,这些文字风格写在css文件中


析:虽然不能防止采集,但是会让采集后的内容充满了你网站的版权说明或者一些垃圾文字,因为一般采集器不会同时采集你的css文件,那些文字没了风格,就
显示出来了。

适用网站:所有网站

采集器会怎么做:对于版权文字,好办,替换掉。对于随机的垃圾文字,没办法,勤快点了。

5、
用户登录才能访问网站内容

分析:搜索引擎爬虫不会对每个这样类型的网站设计登录程序。听说采集器可以针对某个网站设计模拟用户登录提交表单行为。


用网站:极度讨厌搜索引擎,且想阻止大部分采集器的网站

采集器会怎么做:制作拟用户登录提交表单行为的模块

6、利用脚本语言做分
页(隐藏分页)

分析:还是那句,搜索引擎爬虫不会针对各种网站的隐藏分页进行分析,这影响搜索引擎对其收录。但是,采集者在编写采集规则时,要分
析目标网页代码,懂点脚本知识的人,就会知道分页的真实链接地址。

适用网站:对搜索引擎依赖度不高的网站,还有,采集你的人不懂脚本知识


集器会怎么做:应该说采集者会怎么做,他反正都要分析你的网页代码,顺便分析你的分页脚本,花不了多少额外时间。

7、防盗链措施(只允许
通过本站页面连接查看,如:Request.ServerVariables(“HTTP_REFERER“) )

分析:ASP/'
target='_blank'
class='infotextkey'>asp和php可以通过读取请求的HTTP_REFERER属性,来判断该请求是否来自本网站,从而来限
制采集器,同样也限制了搜索引擎爬虫,严重影响搜索引擎对网站部分防盗链内容的收录。

适用网站:不太考虑搜索引擎收录的网站

采集器会怎么
做:伪装HTTP_REFERER嘛,不难。

8、全flash、图片或者pdf来呈现网站内容

分析:对搜索引擎爬虫和采集器支持
性不好,这个很多懂点seo的人都知道

适用网站:媒体设计类并且不在意搜索引擎收录的网站

采集器会怎么做:不采了,走人

9、
网站随机采用不同模版

分析:因为采集器是根据网页结构来定位所需要的内容,一旦先后两次模版更换,采集规则就失效,不错。而且这样对搜索引擎爬虫
没影响。

适用网站:动态网站,并且不考虑用户体验。

采集器会怎么做:一个网站模版不可能多于10个吧,每个模版弄一个规则就行了,不同模
版采用不同采集规则。如果多于10个模版了,既然目标网站都那么费劲的更换模版,成全他,撤。

10、采用动态不规则的html标签


析:这个比较变态。考虑到html标签内含空格和不含空格效果是一样的,所以< div >和<
div >对于页面显示效果一样,但是作为采集器的标记就是两个不同标记了。如果每次页面的html标签内空格数随机,那么

采集规则
就失效了。但是,这对搜索引擎爬虫没多大影响。

适合网站:所有动态且不想遵守网页设计规范的网站。

采集器会怎么做:还是有对策的,现在
html cleaner还是很多的,先清理了html标签,然后再写采集规则;应该用采集规则前先清理html标签,还是能够拿到所需数据。


结:

一旦要同时搜索引擎爬虫和采集器,这是很让人无奈的事情,因为搜索引擎第一步就是采集目标网页内容,这跟采集器原理一样,所以很多防止采集的
方法同时也阻碍了搜索引擎对网站的收录,无奈,是吧?以上10条建议虽然不能百分之百防采集,但是几种方法一起适用已经拒绝了一大部分采集器了。

三、
关于防采集的方法

火车头:下面讲一些主要的防采集方法。可以说是攻防对战吧。打开一个网页实际就是一个Http请求浏览器。百度蜘蛛,小
到我们的采集器使用的都是一个原理,模拟http请求,所以我们同样能模拟出浏览器。百度蜘蛛出来所以绝对的防采集根本不存在,只是难度的高低。或者你认
为搜索引擎的搜录也无所谓了。你可以用一些非常强大的activex,flash,全图片文字的形式,这个我们无能为力。

普通的防采集方
法有

1、来源判断

2、登录信息判断 Cookie

3、请求次数判断。如一段时间内请求多少,非常规操作
则封IP

4、发送方式判断 POST GET 使用JS,Ajax等请求内容

举例:

1.2不用说了,论
坛,下载站等。。

3、一些大网站,需要配置服务器,单纯靠脚本判断资源消耗比较大

4、如一些招聘站,asp.net的分
页,Web2.0站的ajax请求内容

当然我们后面还发现一些*****锏,今天第一次在这里给大家公布出来~~
有优质内容需要防采集的朋友可以考虑试下

1、网页默认deflate压缩输出(gzip容易一点,容易解压)
我们普通的浏览器和baidu支持识别gzip,deflate输出内容

2、网页内容不定时 /0
内容自动截断,这两点基本可以防主大部分主流软件采集及web采集程序了~

今天主要想要表达的一点,大家在做站时一定要注意技术的提高,
比如我们里面有后期外部php及.net接口处理采集数据。或者干脆你自己做一个发布时的接口程序自己入库。我们伪原创做得再好,一样有非常多的会员使
用,那样又不原创了,采集一样需要技术,只有你通过采集器获得了没有多少人有的数据,你才是唯一了。可能是我最为技术型人的一个通病,谢谢大家!


动环节

问:您刚才提到对采集有屏蔽,那对搜索引擎呢

答:采集和百度爬虫是一模一样的原理 还有浏览器也是一样的
所以没有绝对的屏蔽,相反还会影响客户体验,你可以做一些不影响客户体验和搜索引擎搜录而提高采集难度的尝试

问:你刚才讲的是网页内容采
集,有没有针对匹配关键词的指定字段的高速采集,比如采集所有带”IDC“的网页的邮箱和电话号码?用过一些,速度很慢,而且数据量明显太少。

答:
我们不做这样批量的工具,其实比如做论坛发帖机之类的实现起来道理一样,也很容易,其实实现起来也是可以,只是有更多的一些人工操作,我们里面有
正则匹配。。也就是你要的这种单一工具把这种正则都集成在里面了。而我们需要用户自己去写

问:采集的复杂度应该就在这吧?页面规则的不规
则性和多变性?

答:在软件里面设置能够匹配多种模板的正则表达式,一样可以采集到多模板的网站,所谓“道高一尺,魔高一丈”。

问:
火车头,能不能说一下怎么把phpcms的文章模块下的第一级栏目显示出来啊?

答:用的是 07 还是08版
07版有一个终极栏目的属性 如果是,就不显示。

问:火车头,你觉得哪个CMS比较好用,你给大家推荐一个你最钟意的CMS系统吧。

答:
我现在是对phpcms更熟悉一些。选择一个适合自己的就够了。研究透一个。

问:有个采集工具 海纳
号称不要编写采集规则,不知道有没有同学研究过,想请教其原理?

答:你说的这个是内容主体识别的范畴了。也做过,但只对一些新闻网站识别
得比较好 ,这是一个自动匹配形式的工具,就像百度新闻一样,能自动匹配到正文数据。对大数据量的提取有好处。但精度相对低点点,因为人工不可控。

问:2008
版本能平滑升级到 2009吗?我是免费用户,呵呵。

答:软件升级:请运行程序目录下的updateto2009.exe进行升级。支
持3.2sp5及2008版到2009版的升级,支持所有用户

问:请问伪原创的问题怎么处理呢?

答:我们伪原创做得再
好,一样有非常多的会员使用,那样又不原创了,采集一样需要技术,只有你通过采集器获得了没有多少人有的数据,你才是唯一了。比如我们有同义词替换功能,
这个词库就需要最好你自己去扩充一个属于自己的伪原创。使用同义词近义词替换,排除敏感词,不同的标签之间数据融合,指如标题内容之间数据的相互替换给标
题。内容分词。为文章标题等生成拼音地址
给文章加上摘要。采集一些其他编码的网站,我们可以做到简繁体转化,可以采集中文网站翻译成英文(虽然比较垃圾,但应该可以算是原创)网民,默认的我们能
够自动识别网页的编码。但可能也会有出错的时候,这时候你需要在任务第四页手工定义一下,比如是gb2312还是utf8等等。
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: 
相关文章推荐