采集场景

今日头条是重要的新闻资讯网站,首页(https://www.toutiao.com/)默认展示最新的新闻列表,点击新闻标题,可进入新闻详情页,查看每条新闻的详情页数据。

 

采集字段

标题、来源、时间、正文、图片url等字段。

 

 

鼠标放到图片上,右键,选择【在新标签页中打开图片】可查看高清大图

下文其他图片同理 

 

采集结果

采集结果可导出为Excel,CSV,HTML,数据库等多种格式。导出为Excel示例:

 

 

教程说明

本篇更新时间:2020/5/26    八爪鱼版本:V8.1.8

如果因网页改版造成网址或步骤无效,无法收集到目标数据,请联系官方客服,我们将及时修正。

 

采集步骤

步骤一:打开网页

步骤二、设置页面滚动

步骤三、创建【循环点击】,进入每个新闻详情页

步骤四、创建【判断条件】步骤,并设置分支条件

步骤五、提取详情页中的文本字段

步骤六、提取详情页正文中的图片url

步骤七、启动采集

 

以下为具体步骤:

 

步骤一、打开网页

 

在首页【输入框】中输入目标网址  https://www.toutiao.com/,点击【开始采集】,八爪鱼自动打开网页。

 

 

特别说明:

a. 打开网页后,如果开始开始【自动识别】,请等待自动识别完成。八爪鱼支持自动识别网页上的列表,滚动和翻页,识别成功后直接启动采集并获取数据。如果【自动识别】的结果不是我们需要的,可点击【取消】关闭智能识别,自行配置采集流程。详情点击查看【自动识别】

 

步骤二、设置页面滚动

 

打开头条首页后,向下滚动页面加载出更多新闻列表,在八爪鱼中也需进行滚动设置。

进入【打开网页】设置页面,点开【页面加载后】,设置【页面加载后向下滚动】,滚动方式为【向下滚动一屏】,【滚动次数】为10次,【每次间隔】1秒 并保存。

 

 

特别说明:

a. 设置中的滚动次数和时间间隔,请根据采集需求和网页加载情况进行设置,并非是一成不变的,具体请点击查看 处理滚动加载数据的网页教程

 

步骤三、创建【循环点击】,进入每个新闻详情页

 

1、创建【循环点击】

① 选中页面上1条新闻标题(不带图的) 

② 继续选中第2条新闻标题(带图的),这样页面中全部的新闻标题都被识别到了

③ 在操作提示框中,点击【循环点击每个链接】,进入第一条新闻的详情页

 

 

特别说明:

a. 经过以上连续3步,【循环点击】创建完成。【循环】中的项,对应着页面上所有新闻链接。启动采集后,八爪鱼就会自动依次点击每个链接,进入其详情页。

b. 为何通过以上3步,可建立【循环点击】?详情点击查看 采集点击多个链接后的详情页数据 教程 。 

 

2、修改【循环点击】XPath

默认生成的【循环点击】XPath,无法精准定位到每个新闻链接,需手动修改。

进入【循环点击】设置页面,选择【循环方式】为【不固定元素列表】,修改XPath为://div[@class="title-box"]/a[@class="link"][@href] ,然后点击【应用】保存。

 

 

特别说明:

a. XPath是什么?怎么写?需要系统学习XPath知识,点击查看 XPath学习与实例教程 

 

步骤四、创建【判断条件】步骤,并设置分支条件

 

今日头条的新闻详情页有多种结构,部分文章是头条本身平台的,部分文章是其他平台直接接入的。

针对这种情况,在八爪鱼中需使用【判断条件】,分开采集。满足条件1,走条件1分支;满足条件2,走条件2分支;以上条件都不满足,走最右侧分支。

以下为具体操作步骤。

 

1、创建【判断条件】步骤

在【点击元素】后,增加一个【判断条件】。

 

2、设置【分支】条件

当前详情页默认的是【今日头条】源的新闻,页面中有【今日头条】字样,可将此设置为条件。

在流程图中选中【分支】,在网页中选中【今日头条】,然后在操作提示框中点击【设置为分支判断条件】。

进入【分支】设置按钮,调整条件为【当前页面包含元素】。

 

3、设置【分支1】条件

点击【循环列表】的  按钮,选择一条其他源的新闻(示例中选择的是环球网的),再点击【点击元素】,进入此条新闻的详情页。

在流程图中选中【分支1】,在网页中选中【环球网】,然后在操作提示框中点击【设置为分支判断条件】。

进入【分支】设置按钮,调整条件为【当前页面包含元素】。

 

4、设置【分支2】条件

今日头条的新闻,走最左的分支;环球网的新闻,走分支1;其他源的新闻,则走最右分支。因此,我们还需要添加一个分支,不设任何条件。

点击【分支1】右侧的   按钮,增加一个【分支2】,【分支2】的执行条件为:不判断,总是执行该分支。

 

 

步骤五、提取详情页中的文本字段

 

对于不同的详情页结构,所有的文本字段都需单独提取一遍。

 

1、提取【分支】文本

点击【循环列表】的  按钮,选择一条今日头条的新闻,再点击【点击元素】,进入此条新闻的详情页。

选中页面中的文本,然后在操作提示框中,点击【采集该元素文本】。

文本类字段都可以按照这样的方式提取。示例中我们提取了标题、来源、时间、正文。

 

2、提取【分支1】文本

点击【循环列表】的  按钮,选择一条其他源的新闻(示例中选择的是环球网的),再点击【点击元素】,进入此条新闻的详情页。

用同样的方法,在当前页面中提取字段。

 

 

特别说明:

a. 文本、图片、视频、源码是不同的数据形式,在操作提示框选择提取方式时稍有不同。文本一般为【采集该元素文本】,图片一般为【采集该图片地址】,更多提取方式请点击查看  不同数据类型(文本、图片、链接、源码等)的抓取方式 教程

 

3、编辑字段

使用判断条件时,有一个需要注意的地方:各分支中所有字段的个数和字段名需保持一致。

按照这样的准侧,分别进入【分支】和【分支1】中的【提取数据】设置页面,编辑字段名。

 

 

步骤六、提取详情页正文中的图片url

 

对于不同的详情页结构,图片url字段也都需单独提取一遍。

 

1、提取【分支】中的图片url

点击【循环列表】的  按钮,选择一条今日头条的、有1张以上图片的新闻,再点击【点击元素】,进入此条新闻的详情页。

然后建立一个提取图片url的循环:

① 选中一张图片

② 在黄色操作提示框中,选择【选中全部】

③ 选择【采集以下图片地址】

 

2、提取【分支1】中的图片url

 

方法与1相同,不再赘述。

 

 

特别说明:

a. 经过以上连续3步,【循环-提取数据】创建完成。【循环】中的项,对应着页面上所有图片,【提取数据】中的字段,对应着每个图片的图片地址。启动采集以后,八爪鱼就会按照循环中的顺序依次提取每个图片地址。 

b. 为何通过以上3步,可建立【循环-提取数据】?点击查看 列表数据采集教程 

 

3、编辑字段

使用判断条件时,有一个需要注意的地方:各分支中所有字段的个数和字段名需保持一致。

按照这样的准侧,分别进入【分支】和【分支1】中的【提取数据】设置页面,编辑字段名。

 

4、合并字段

默认的一条图片url会提取为一条数据,如果希望同一篇文章的图片合并在同一单元格中,需进行如下设置:

进入【提取列表数据1】设置页面,然后进入【图片URL】设置页面,设置【自定义数据合并方式】为【同一字段多次提取合并和一行】。

 

 

步骤七、启动采集

 

1、单击【采集】并【启动本地采集】。启动后八爪鱼开始自动采集数据。

 

 

2、采集完成后,选择合适的导出方式导出数据。支持导出为Excel、CSV、HTML、数据库等。这里导出为Excel。示例数据:

 

 

作者:tangtang

编辑:Aisling