采集教程及采集分页设置问题
所属分类:
实用技巧 / 应用技巧
阅读数:
466
收藏 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。这里多试几次,因为这里代码可选择范围小。
如何设置一个严格30分钟过期的Session示例介绍
SESSION和COOKIE是每个面试官必问的知识点,下面为大家介绍下如何设置一个严格30分钟过期的Session,具体示例如下,感兴趣的朋友可以参考下哈,希望对大家有所帮助
收藏 0赞 0分享
禁用Cookie三种方法(保护你的隐私)
cookie的作用很多人都知道——cookie里面保存着我们所浏览过的网页的记录,为了安全起见下面为大家介绍禁用Cookie的三种方法,感兴趣的朋友可以参考下哈
收藏 0赞 0分享
URL中井号的作用介绍
URL中的井号(#)是比较常见的,下面就为大家介绍一些有关井号的故事,感兴趣的朋友可以了解下
收藏 0赞 0分享
访问Excel的几种方式介绍
本文将为大家介绍下访问Excel的几种方式:通过OLEDB方式、通过Microsoft.Office.Interop.Excel访问及其他相关等等,感兴趣的朋友可以参考下,希望对大家有所帮助
收藏 0赞 0分享
HttpClient抓取网页的两种方式
可以利用NodeFilter对网页进行分析及利用Visitor对网页进行分析实现抓取网页,具体如下感兴趣的朋友可以参考下,希望对大家有所帮助
收藏 0赞 0分享
GHOST删除分区和修复硬盘坏扇区不仅仅是备份还原
如果你只是用GHOST来备份和还原数据的话,那你可委屈了这款“功能强大”的软件了。其实GHOST还有一些比较另类的功能,接下来为大家介绍下GHOST删除分区和修复硬盘坏扇区
收藏 0赞 0分享
sharepoint 2010版本图文安装教程
这篇文章主要为大家详细介绍了Microsoft Share Point2010中文版图文安装的相关资料,具有一定的参考价值,感兴趣的小伙伴们可以参考一下
收藏 0赞 0分享
Chrome开发者工具9个调试技巧详解
对于我们前端开发者来说,Chrome自带的开发者工具绝对是不可或缺的调试工具,我们常用的调试方法包含一些console等,而Chrome自带的开发者工具其实很强大,下面我们来聊聊一些你可能不知道的使用方法。
收藏 0赞 0分享
查看更多