本文来源:http://www.wojilu.com/forum1/topic/3021 

作者:songboriceboy 


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

(补充:也可以使用 google chrome浏览器,按f12使用开发工具,效果差不多)

相对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工具,可以直观的进行配置规则的获取,简单,快速的进行采集配置。