在第 2 课:采集单个数据中,学习了如何从网页抓取我们的文本、图片、超链接,对八爪鱼【自定义配置】任务采集数据的过程进行了展示。本课将继续深入学习采集有一些列表中的数据。
列表是最常见的网页样式。示例:京东商品列表,58个同城房书源列表,豆瓣列表。通过简单配置,八爪鱼可以自动采集全部列表中的数据。
现在有一个豆瓣图书列表的网页:https://book.douban.com/tag/%E5%B0%8F%E8%AF%B4。网页上有很多结构相同的图书列表,每个图书列表列表的领域:图书标题、出版信息、评分、评价人数、图书简介等。
我们想将上述网页上的一些列表中的资料,按照网页排列的内容汇总下来,保存为Excel等结构化的数据,如下图所示:
在八爪鱼中如何操作呢?
采集列表数据
一、智能识别
使用智能识别,支持输入识别网址,自动获取数据并生成流程。
二、自行配置采集流程
以下为具体步骤:
步骤一、输入网址
在首页【输入框】中输入目标网址,点击【开始采集】,八爪鱼自动打开网页。如果自动开始智能识别,可点击【不再自动识别】或【取消识别】。如果已关闭智能识别,可以进行下一个步骤。
步骤二、建立【循环-提取数据】
观察网页可以看到此网页上有很多图书列表,每个列表结构相同,都包含图书标题、出版信息、评分、评价人数、图书简介等领域。最关键的点在于:如何让八爪鱼识别所有列表,并按具体收集图书列表中的数据。
在八爪鱼中,建立【循环提取数据】可实现此需求。【循环提取数据】会包含所有的图书列表,并按顺序收集其中的数据。 【循环提取数据】需要特定的步骤,下面为具体步骤。
先看建立【循环-提取数据】的完整步骤:
以下步骤,进行详情说明:
1、选中页面上1个图书列表。选中后的列表会被绿色框框起来,同时出现黄色操作提示框,八爪鱼提示识别到当前选中的元素组中有多个【子元素】,这里的【子元素】就是图书列表中被红色框框起来的具体的元素。
特别说明:
a.选中1个列表,第1个,第2个,第3个...列表都行。
b.在选中列表时,需特别注意范围。被选中的范围(绿色部分)需最大,包括要采集的所有内容。
2、在黄色操作提示细节,选择【选中全部子元素】。第1个商品列表中的具体细节就被选中了,八爪鱼发现页面还有很多同类的相同子元素。
3、黄色操作提示按钮,继续选择【选中全部相似组】
4、在黄色操作提示下,选择【元素中数据内容 】。此时八爪鱼将列表中的字段都提取下来了。
特别说明:
a.连续步骤1-4是连续线程,连续不断创建表【循环-提取数据】。如果1选中页面上1个列表后,没有出现2【选中全部子元素】怎么办?请下拉至文末查看解决方法。
完成了4步,【循环以上提取】数据创建完成。可以看到流程项中自动生成了1个循环步骤。循环中的数据对应页面上所有商品列表。
步骤三、编辑字段
八爪鱼自动为我们提取了列表中的所有字段,可以对这些字段进行删除、修改字段名称等操作。
鼠标移到【数据预览】
移动对应的字段名称,可修改字段名称(字段名称表头)。
也可以切换布局方式进行编辑,布局布局方式有【纵向布局布局】和【横向布局布局】
步骤四、启动采集
1、点击【保存】,点击【采集】按钮八爪鱼开始开始采集数据。(本地采集是使用自己的电脑进行采集,采集云是八爪鱼提供的云服务器采集),点击查看具体说明)
2、采集完成后,选择合适的导出方式导出数据。支持导出为Excel、CSV、HTML。这里导出为Excel。
数据示例:
三、没有出现【选中全部子元素】解决办法
在步骤二、建立【循环-提取数据】时,如果图1所示选中页面上的1个列表后,没有出现2【选中全部子元素】解决办法:
示例网址:https://s.weibo.com/weibo/%25E8%2583%25A1%25E6%25AD%258C?topnav=1&wvr=6&b=1
先看一个建立【循环-提取数据】的完整步骤:
详细的步骤拆分说明:
1、选中页面上的1个列表。
2、继续选择页面上的另1个列表(目的是帮助八爪鱼识别页面中的所有同类列表)。
3、在黄色操作提示中,选择提取数据【文本内容】。如果数据被提取到一个单元格中,则需要单独提取每个字段,进行下面的操作。
4、手动提取需要的数据。鼠标点击【循环列表】,再在选中的列表手动点击提取需要的内容,一定要先点击循环列表再提取,否则你会重复提取第1个列表中的数据。
5.在循环列表和提取数据步骤添加执行前等待时间,可设置4秒(网页加载慢的时候可能会采集不到数据,所以需要进行设置等待网页加载)
通过上面的4步,【循环-提取数据】也能够创建完成。可以看到,界面中自动生成了1个循环步骤。循环中的项对应页面上的所有微博列表。循环中提取数据的字段,对应着着微博列表中的字段。开始采集以后,八爪鱼会随着循环中的列表采集所有的微博博文信息。
【循环提取数据】创建完成以后,接下来的步骤与上面一样,这里就不再赘述。
编辑:Mia