songboriceboy
发表于: 2012/5/2 9:09 引用 回复 只看该作者 1# TOP
版主
性别: 男
积分:461
阅读权限:659
帖子: 108
加入时间: 2011/8/31
最后登录: 2015/11/10

    使用新版采集,需要一个工具配合使用,需要使用firefox火狐浏览器,并安装firebug插件。

    相对1.8版正则表达式匹配采集内容的方式,新版采集模块采用更加简明的方式进行配置。现举例说明如下:



第一步:抓取链接列表
    1.列表网址   http://ent.163.com/special/00031HA4/ch_news.html

    这里的列表网址一般是网站新闻更新的总入口,上面这个例子就是网易华语电影新闻的入口,每隔一定时间,这里的新闻及链接会进行更新,故我们需对此进行监控。

    2.链接集合设置(css路径方式)  div.col1     (这里是为了进一步限制链接的范围,不可以置空。)



    这里,我们就要借助于firebug的强大功能了,首先,我们点击右上角黑框圈住(图示1)的小瓢虫图片按钮,firefox浏览器下部将弹出firebug控制台。接着我们在firebug控制台中点击(图示2)的蓝色按钮,然后使用鼠标在firefox浏览器中移动,选择各个网页元素,会发现在各种网页元素上会出现蓝色的框框,此处我们框住全部新闻网页链接。如图所示,全部新闻网页链接的周围出现一个蓝色的框框,同时控制台下方会指示该框选,对应的网页dom元素及路径。如图示3所示,这里我们看到对应的css选择符是,此时我们对准点击右键,在弹出的菜单中选择复制CSS路径,如下图所示:



    打开一个记事本程序,将剪切板中复制的内容拷贝到文本文件中,这里我们得到的是html body div.area div.col1,拷贝最后一个空格之后的内容(这里是div.col1)到采集配置的第二项中(链接集合设置(css路径方式))。

    3.匹配链接模板设置(通配符方式)   http://ent.163.com/12/*/*/*.html 

    观察全部新闻链接的模式,找出它们的共同之处。一些链接如下:


    我们发现它们都可以表示成如下的形式:http://ent.163.com/12/*/*/*.html 这里*代表任意字符串。同时也可以在整个模式的后面加上一个$,代表终止,即http://ent.163.com/12/*/*/*.html$,这样可以排除一些http://ent.163.com/12/0430/04/80AGHD6800032DGD.html&id=5这样的不想采集的链接。

    到此为止,第一步就完成了。


    第二步:抓取详细页

    在第一步中,我们获得了待抓取的全部新闻链接地址集合,在第二步中我们需要针对每条采集的新闻进行正文提取的配置。配置的方法和上面第一步中(2)链接集合设置(css路径方式)中处理方法相同,也是利用firebug对新闻正文进行框选,然后获取正文的css路径,填写到匹配规则即可。如下图所示:


    这里我们获得的css路径是div#endText,填写到匹配规则即可。如下图所示:


    到此为止,全部的配置就完成了,相对老版采集方式,步骤相同,只是配置网址链接集合和网页正文的方式发生了改变。相对于正则表达式的方式,更为简单易用,用户不必了解复杂的正则表达式知识,借助firefox+firebug工具,可以直观的进行配置规则的获取,简单,快速的进行采集配置。

本帖于 2013/6/21 13:41:07 被 掷鸡蛋者 最后编辑
关键词 采集 修改tag
相关文章
三人行必有我师
qdz9527
发表于: 2012/5/2 9:58 引用 回复 只看该作者 2# TOP
版主
性别: 男
积分:1263
阅读权限:1798
帖子: 320
加入时间: 2012/4/10
最后登录: 2017/9/12
顶下
掷鸡蛋者
发表于: 2012/5/2 10:01 引用 回复 只看该作者 3# TOP
管理员
性别: 男
积分:52167
阅读权限:43379
帖子: 8315
加入时间: 2010/4/29
最后登录: 2018/12/12
这个强烈推荐,楼主是这方面高手,帮忙重写了wojilu的采集功能。
而死,不默而生
xszu
发表于: 2012/5/2 11:27 引用 回复 只看该作者 4# TOP
江湖豪侠
性别: 男
积分:1377
阅读权限:2350
帖子: 528
加入时间: 2012/4/13
最后登录: 2014/7/18
这个功能不错  如果能伪原创更好  
蜂蜜 12306 43399小游戏 星星动漫
super0555
发表于: 2012/5/2 15:45 引用 回复 只看该作者 5# TOP
版主
性别: 男
积分:1889
阅读权限:2052
帖子: 573
加入时间: 2010/7/3
最后登录: 2014/6/14
厉害 楼主试试IE8的开发人员工具(按F12键),估计应该也可以。
Time never goes back.
掷鸡蛋者
发表于: 2012/5/2 17:01 引用 回复 只看该作者 6# TOP
管理员
性别: 男
积分:52167
阅读权限:43379
帖子: 8315
加入时间: 2010/4/29
最后登录: 2018/12/12
其实不管是IE,还是firefox,还是chrome,都是按f12,不过还是firebug最强
而死,不默而生
jamesliu
发表于: 2012/5/2 17:32 引用 回复 只看该作者 7# TOP
江湖豪侠
性别: 男
积分:1573
阅读权限:1223
帖子: 247
加入时间: 2010/5/8
最后登录: 2018/6/16
很给力!
union
发表于: 2012/5/2 19:17 引用 回复 只看该作者 8# TOP
版主
性别: 男
积分:1794
阅读权限:1548
帖子: 260
加入时间: 2011/5/28
最后登录: 2014/12/10

弱弱的问下蛋哥这次的版本美工有搞没   

掷鸡蛋者
发表于: 2012/5/2 20:02 引用 回复 只看该作者 9# TOP
管理员
性别: 男
积分:52167
阅读权限:43379
帖子: 8315
加入时间: 2010/4/29
最后登录: 2018/12/12

弱弱的问下蛋哥这次的版本美工有搞没   

union at 2012-5-2 19:17

有 super0555 帮忙设计,但最后还不确定

而死,不默而生
super0555
发表于: 2012/5/2 20:58 引用 回复 只看该作者 10# TOP
版主
性别: 男
积分:1889
阅读权限:2052
帖子: 573
加入时间: 2010/7/3
最后登录: 2014/6/14
其实我修改那个还是不能算好,我想这么大个系统,至少是要discuz、phpwind级别的美工,我觉得这几个应该是一个级别的,但是还是差距很大啊。
Time never goes back.

快速回复主题