【场景描述】采集人民网上的人民日报新闻数据。
【源网站介绍】
人民网,是世界十大报纸之一《人民日报》建设的以新闻为主的大型网上信息发布平台,也是互联网上最大的中文和多语种新闻网站之一。
【使用工具】前嗅ForeSpider数据采集系统,点击下方链接可免费下载
http://www.forenose.com/view/forespider/view/download.html
【入口网址】http://paper.people.com.cn/rmrb/html/2021-09/07/nbs.D110000renmrb_01.htm
【采集内容】
采集人民日报新闻的标题、发布时间、文章正文等。

【采集效果】如下图所示:

l 思路分析
配置思路概览:

l 配置步骤
1. 新建采集任务
选择【采集配置】,点击任务列表右上方【+】号可新建采集任务,将采集入口地址填写在【采集地址】框中,【任务名称】自定义即可,点击下一步。

2.获取每日新闻链接
①在浏览器上观察该页面,发现每天的新闻页面链接都不一样,在链接中含有日期。

②复制几天的链接,发现规律如下所示:

③可将日期设置为关键词,用脚本拼接出每天新闻的链接。

④高级配置,设置关键词参数:

⑤写脚本,拼接链接:

脚本文本:
var sear=EXTRACT.GetSearch(this); //关键词获取
var k=sear.Search();
while(k){ //遍历关键词
url u;
u.urlname="http://paper.people.com.cn/rmrb/html/"+k.wd+"/nbs.D110000renmrb_01.htm";//根据链接规律拼写链接
u.title=k.wd;//将标题设置为关键词名称
u.entryid=this.id;
u.tmplid=1;//关联模板01
k=sear.Search();
RESULT.AddLink(u);
}⑥采集预览,如下图所示,每日的新闻链接已生成,右键复制任意一条,在浏览器中打开,看是否为正确链接。

3.获取新闻列表链接
①在浏览器中打开任意一天的新闻数据页,观察每条新闻的链接,可发现规律。

②通过观察可发现,视频链接规律为:

③根据新闻列表链接的规律,编写脚本拼出新闻链接,具体操作如下:

脚本文本为:
var i=URL.urlname.Left("nbs.D110000");//定义i为当前模板链接的【nbs.D110000】左侧部分,即取i为当天新闻页链接的前半部分
var j=URL.urlname.Middle("rmrb/html/","/nbs.");//定义j为当前模板链接中的日期部分
var b=j.Replace("-","",from=-1).Replace("/","",from=-1);//将j中的-和/去掉,日期格式为:20210907
for(int c =1;c<= 7;c++)//写for循环获取每天的前7条新闻
{
url u ;
u.urlname=i+"nw.D110000renmrb_"+b+"_"+c+"-01.htm";//根据新闻列表链接规律,拼写链接
u.title=c;//将标题设置为第几条新闻
u.entryid=this.id;
u.tmplid=2;//关联模板02
RESULT.AddLink(u);
}④采集预览,如下图所示:

4.抽取新闻数据
①新建一个数据表单,具体步骤和字段属性如下所示:

②新建模板02,在该模板下新建一个数据抽取。

③填写示例地址,采集预览,双击进入下一层,复制任意一条新闻链接,复制在示例地址位置:

④关联数据表单,如下图所示:

⑤抽取数据采用定位取值法,具体操作如下图所示:



⑥采集预览,如下图所示:

l 采集步骤
模板配置完成,采集预览没有问题后,可以进行数据采集。
①首先要建立采集数据表:
选择【数据建表】,点击【表单列表】中该模板的表单,在【关联数据表】中选择【创建】,表名称自定义,这里命名为【ribao】(注意命名不能用数字和特殊符号),点击【确定】。创建完成,勾选数据表,并点击右上角保存按钮。

②选择【数据采集】,勾选任务名称,点击【开始采集】,则正式开始采集。

③采集中:

④采集结束后,可以在【数据浏览】中,选择数据表查看采集数据,并可以导出数据。


⑤导出的文件打开如下图所示:

*本教程仅供学习交流,严禁用于商业用途!