采集教程及采集分页设置问题
所属分类:
实用技巧 / 应用技巧
阅读数:
427
收藏 0赞 0分享
其实采集可以这么理解,定义头和尾,除了在截取链接不需要检测,在其它地方你定义的头和尾,在同一个html表里不能有相同的,为什么不能有相同的呢?是因为采集的每一步(除了截取链接外)都是根据你所定义的头和尾来截取页面内容的。所以你在定义头和尾不仅不能有相同的,还要尽可能地把不需要的内容排除开。如果你理解了这个定义头和尾,基本上对于简单的页面是能采集的。下面我以一个实例来说明一下:
以下内容为程序代码:
新闻列表网址:http://ent.qq.com/newxw/thd_sjym.htmhttp://ent.qq.com/newxw/thd_sjym.htmhttp://ent.qq.com/newxw/thd_sjym.htm
列表开始代码: <td style="padding-left:6px;"><table border="0" cellpadding="0" cellspacing="0" class="table_logo">
列表结束代码: <td height="5" colspan="2"></td>
链接开始代码:·<a target="_blank" href="
链接结束代码:">
标题开始标记:<title>
标题结束标记:</title>
正文开始标记:<div id="ArticleCnt">
正文结束标记:<div id="ArticleTopic"></div>
上面所采集的页面是比较标准的。现在来分析一下:
列表网址:就是你要采集的页面,这一步很关键,以前这一步我是乱搞,现在发现这一步关系到你能否采集完所有内容。一般你进入采集页面先判断一下是不是有多页,如果有多页你进入第二页和第一页是不是有规律变化,比如是:xxxx_1.htm,xxx_2.htm,特别注意数字,如果第一页开始就有_id的规律,那就把第一页作为列表网址,如果第一页与第二页没相关规律,而是从第二页开始才能这样的规律,那将第二页作为列表网址,第一页放到一边,等所有数据采集完了,再来采集单独页面,反正以后也只采集第一页,为啥?因为一般更新的都在第一页。
列表开始与结束:这里就是向采集程序说明你要采集的内容大概方向,比如上例里的列表网址,里面有好多内容,我只采集右边的新闻,这时你可以搜索第一条新闻,向上看,找段在这个HTML文件里唯一的内容,这里定义头和尾要值得注意的是:空格也算的。比如<a href前有四个空格,这也算个特征,反正不管怎么样,只要是全文仅有的就行。同样方法,只是这次搜索最后一条新闻,定位一下,省得全文乱找,浪费时间,往下推找个全文仅有的代码,
链接开始与结束,这里你得看一下采集页面了,然后再看HTML文件,一般是<a href= 开始,>结束。中间的内容就让采集程序帮你去放
到这里已经接近成功了,这时为了保险一点,随机点五个页面,找五个页面的共同点,把标题开始与结束,正文开始与结束填一下,
最后测试一下。应该可以了吧。
下面谈谈分页,分页有二种,一种是采集页的分页,另一种是文章内容的分页。
采集页的分页:
例:
以下内容为程序代码:
新闻列表网址:http://www.pconline.com.cn/mobile/news/hgxz/index_1.htmlhttp://www.pconline.com.cn/mobile/news/hgxz/index_1.html
列表开始代码:1px solid; ">文章列表 </TD>
列表结束代码: <DIV ALIGN="CENTER">
列表索引分页: 批量生成:http://www.pconline.com.cn/mobile/news/hgxz/index_{$ID}.htmlhttp://www.pconline.com.cn/mobile/news/hgxz/index_{$ID}.html
生成范围:4to1
链接开始代码:<a href="
链接结束代码:target="_blank"
标题开始标记:<title>
标题结束标记:-太平洋电脑网Pconline-[手机新品速递]</title>
正文开始标记:广告:ad_top</IFRAME>
正文结束标记:<br clear=all>
请注意列表网址与列表索引分页链接的不同之处:就是将index_1.html改为了index_{$ID}.html,
生成范围:这里有多少页就?to?,有二种选择,由后到前,前到后,随便你喜好。
内容页的分页:
例:
以下内容为程序代码:
新闻列表网址:http://www.enet.com.cn/emobile/inforcenter/articlelist.jsp?page=1&atype=A&acid=4146http://www.enet.com.cn/emobile/inforcenter/articlelist.jsp?page=1&atype=A&acid=4146
列表开始代码:<td class="filter4" width="350"><font color="#FFFFFF">手机资讯
列表结束代码: <td height="2"></td>
批量生成: http://www.enet.com.cn/emobile/inforcenter/articlelist.jsp?page={$ID}&atype=A&acid=4146http://www.enet.com.cn/emobile/inforcenter/articlelist.jsp?page={$ID}&atype=A&acid=4146
生成范围:10to1(这样的好处最新新闻在前面,不然刚好跟采集页面相反,最后一页为最新新闻)
链接开始代码:<td><a href="
链接结束代码:target="_blank"
标题开始标记:<strong class="p24">
标题结束标记: <td align="center">(这里要把前面的空格一起复制了,不然会出现错误)
正文开始标记:<table width="100%" border="0" cellspacing="0" cellpadding="2" align="center">
正文结束标记:<p id="adv_under_cont"></p>
下页开始标记: <a href="./(找到下一页,把<a href="./的空格也复制了)
下页结束标记:">下一页</a>
请注意下页开始与结束:找到分页代码,找到下一页的代码:定义好下一页开始与结束就OK。这里多试几次,因为这里代码可选择范围小。
Win XP系统语言栏丢失解决三例
案例一:
问:一台计算机使用Windows XP操作系统,最近任务栏内无法显示语言栏,我通过“区域和语言选项”里的设置找回了语言栏,重新启动计算机后,问题依旧,请问是什么问题造成的?
收藏 0赞 0分享
设计软件中的系统字体应用小技巧
大家都知道,在操作系统的安装目录下有字体库,要使用种字体首先需要安装,但是这会造成字体占用系统盘空间过多。设计使用的字体都不少,怎么说也有几个G,很占资源,下面教大家一个稍微节省资源的方法。
收藏 0赞 0分享
十个习惯让你精通新的开发技术
这篇文章,是从我的《高效开发人员的五个特征》一文中抽出的一个观点。从我自身的事业和习惯中,我考虑了很多方式怎么样才能有效地学习。
收藏 0赞 0分享
小谈RADMIN爆破
最近做渗透测试时常碰到RADMIN一类的东西..
一碰到此类的程序,一般我都会先看下对方把RADMIN的端口配置成什么..以及相应的PASS(加密过的)
收藏 0赞 0分享
联众密码的逆向算法公布
闲来无事,每天上联众,联众的密码经过加密后保存在本地注册表里,看看是怎么加密的。下了个ollydbg,一路跟踪,发现算法极其简单,给出Delphi版本的解密算法(加密部分有兴趣的一起来讨论)。算法比较粗糟,谁帮优化一下:)
收藏 0赞 0分享
关于三种主流WEB架构的思考
做WEB好几年了,各种语言和技术都稍有涉猎。今天心血来潮,突然想总结一下。其实不论什么技术,什么需求,通常WEB开发就是通过WEB前端管理一个或大或小或独立或分布式的关系型数据库,很多东西都是相通的。这里说的WEB架构,是指WEB应用开发中每种技术独有的资源组织形式(包括文件,数
收藏 0赞 0分享
一篇关于程序员性格的文章第1/3页
软件开发中人们很少注意个人性格问题。自从 1965年Edsger Dijkstra的有里程碑意义的文章“程序开发是一种人类活动”发表以来,程序员性格被认为是合理的和有成效的研究领域,虽然有些题目如“大桥建筑者的心理”和“对律师行为的研究实验”看起来可能是荒唐的,而在计算机领域,“
收藏 0赞 0分享
查看更多