采集场景

在微博主页(https://weibo.com/)登录后,输入关键词搜索,采集得到的搜索结果列表数据。支持按【高级搜索】中设置的条件进搜索。

 

 

采集字段

博主用户名、发布时间、博文、分享数、评论数、点赞数、评论、评论用户名、评论时间。

 

采集结果

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

 

 

教程说明

本篇更新时间:2020/05/13   八爪鱼版本:V8.1.12

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

 

采集步骤

步骤一:打开网页

步骤二、微博登录

步骤三、在【高级搜索】中选择搜索条件

步骤四、点击【展开全文】,展开微博全文

步骤五、使用自动识别,自动识别列表页和翻页

步骤六、编辑字段 步骤

步骤七、调整流程逻辑 步骤

步骤八、优化字段

步骤九、采集多个关键词的搜索结果数据

步骤十、设置翻页次数

步骤十一、启动采集

 

以下为具体步骤:

 

步骤一、打开网页

 

在首页点击左上角  按钮,选择【自定义任务】,输入微博首页网址 https://weibo.com/,然后点【保存设置】,八爪鱼自动打开网页。

 

 

特别说明:

a. 打开网页后,如果开始【自动识别】,请点击【不再自动识别】或【取消识别】将其关掉。因为本文不适合使用【自动识别】。

b. 【自动识别】适用于自动识别网页上的列表、滚动和翻页,识别成功后直接启动采集即可获取数据。详情点击查看 【自动识别】教程

 

步骤二、微博登录

 

要采集博文列表数据,首先需要登录。如果没有登录,只能采集第一页的博文。

在八爪鱼中的登录步骤:

 

1、打开浏览器模式

点击  按钮,打开浏览器模式。在浏览器模式中,输入账号密码并登录。

 

2、使用Cookie登录微博

进入【打开网页】设置界面,勾选【使用指定的Cookie】,点击【获取当前页面Cookie】并保存。

这样就获取到了登录后的Cookie,启动时直接以登录状态打开网页。

 

 

特别说明:

a. 什么是浏览器模式?在浏览器模式下,我们可以像在浏览器中一样点击操作网页,不会生成流程步骤。如需编辑流程步骤,需关闭浏览器模式。关闭状态:  ;打开状态: 

b. Cookie是什么?通俗的说,Cookie是一些存储在用户电脑上的小文件,用来保存一些站点的用户数据,作用是让浏览器为用户定制内容。例如:用户第一次访问某网站,输入了账号密码登录。浏览器会问你是否需要【记住账号密码】。选择【是】以后,浏览器就会将这些账号密码信息存储在用户电脑上。下次再访问此网站,就无需再次输入账号密码。详情点击查看 处理需要登录的网页(含登录时有验证码

c. 怎么判断是否获取到Cookie?获取Cookie后  会变成   ,点击  ,可查看具体的Cookie内容。

 

步骤、在【高级搜索】中选择搜索条件

 

在八爪鱼中有2种方式实现:

① 在八爪鱼中做一遍流程:输入关键词 → 点击【高级搜索】→ 在【高级搜索】中选择条件 → 点击【搜索微博】,获得搜索结果。

② 在网页中完成 输入关键词 → 点击【高级搜索】→ 在【高级搜索】中选择条件 → 点击【搜索微博】,获得一条带有搜索关键词和筛选条件的网址,将这条网址直接复制进八爪鱼中去进行采集。

第2种方式更快更稳,示例中选择第2种方式。

 

1、获得带有搜索关键词和筛选条件的网址

先在浏览器中测试一下。打开微博首页,输入关键词【疫情】,在【高级搜索】中选择条件:【原创】【2020-04-01 至 2020-04-05】,得到网址:https://s.weibo.com/weibo/%25E7%2596%25AB%25E6%2583%2585?q=疫情&scope=ori&suball=1&timescope=custom:2020-04-01:2020-04-05&Refer=g&page=1。

 

 

特别说明:

a. 在【高级搜索】中选择什么条件,在得到的网址中就有一个对应参数,请注意观察筛选条件跟网址参数的对应关系,选择自己需要的。

 

2、将1中的网址,输入进八爪鱼中

在【打开网页】后,增加一个步骤【打开网页1】。

双击进入【打开网页1】设置页面,输入网址 https://s.weibo.com/weibo/%25E7%2596%25AB%25E6%2583%2585?q=疫情&scope=ori&suball=1&timescope=custom:2020-04-01:2020-04-05&Refer=g&page=1 ,然后保存,八爪鱼自动打开这个网页。

 

 

步骤四、点击【展开全文】,展开微博全文

 

微博字数过多,会被折叠起来。点击【展开全文】,可将其展开。

 

1、建立【循环点击】,点击所有【展开全文】

① 选中第一个【展开全文】

② 再点击第二个【展开全文】

③ 在操作提示框中点击【循环点击每个链接】

 

2、修改【循环点击】XPath

【循环点击】默认的XPath无法精准定位到所有【展开全文】,需手动修改。

双击进入【循环列表】设置页面,选择【循环方式】为【不固定元素列表】,修改XPath为://*[text()='展开全文'] ,然后保存。

 

3、设置Ajax超时

同时【展开全文】为Ajax加载,需设置Ajax超时。

进入【点击元素】设置页面,设置【Ajax超时】为5秒,然后保存。

 

 

特别说明:

a. 使用了Ajax技术的网页,需勾选【Ajax超时】,【Ajax超时】时间请根据采集需求和网页加载情况进行设置,并非是一成不变的,详情点击查看 Ajax教程 

b. 修改【循环列表】的XPath,需要一定的XPath知识。点击查看 XPath学习与实例教程 

 

步骤五、使用自动识别,自动识别列表页和翻页

 

1、使用自动识别,自动识别列表和翻页

出现搜索结果列表,并通过点击【展开全部】展开博文后:【点击自动识别】 ,等待一段时间,成功识别了文章列表中的数据和翻页。

点击【生成采集设置】,将自动识别出的列表数据和翻页,生成为采集流程,方便我们使用和修改。

 

  

特别说明:

a. 本文使用【自动识别】,自动识别网页上的列表、滚动和翻页。识别成功后会生成采集规则,再对采集规则调整,以采集目标数据。如果【自动识别】的结果与以上图片不同,可点击【取消识别】自行配置采集流程或联系客服反馈。详情点击查看 【自动识别】教程

 

2、修改【循环列表1】和【循环翻页】XPath

自动识别生成【循环列表1】和【循环翻页】存在不通用的情况,需要手动修改。

进入【循环翻页】设置页面,修改XPath为://li[@class='cur']/a/../following-sibling::li[1]/a 然后点击【应用】保存。

进入【循环列表1】设置页面,修改XPath为://div[@class="card-wrap" and @mid] 然后点击【应用】保存。

 

 

特别说明:

a. 如何写一条精准的XPath?这里需要一定的XPath知识,点击查看 XPath学习与实例教程 

 

步骤六、编辑字段

 

在【当前页面数据预览】面板中,可删除多余字段,修改字段名,移动字段顺序等。

 

 

步骤七、调整流程逻辑

 

我们需要的采集逻辑为:点击第1页【共X条回复】展开主评论下的回复 → 采集第1页博文列表的数据 → 【循环翻页】翻到第2页 。

但自动生成的采集流程不是这样的,需手动拖动步骤进行调整。

最终合理流程如下图所示:

 

 

特别说明:

a. 流程执行逻辑是怎样的?点击查看 采集原理与流程执行逻辑 教程

 

步骤八、优化字段

 

1、改【博文】字段XPath

【博文】字段默认的XPath,无法精准定位到展开后的全部博文,需修改XPath。

双击进入【提取列表数据】设置页面,点击【博文】字段后的  按钮,修改XPath为://div[@class="content"]//*[@class='txt'][last()] ,然后保存。

 

 

2、格式化字段

【转发数】和【评论数】两个字段,默认会带上 转发 和 评论 的文本。

如果需要去掉文本,只保留数字,可以通过格式化实现:

点击【转发数】字段后的 【...】 按钮,选择【格式化数据】→ 【添加步骤】→【正则表达式匹配】,输入正则表达式【\d+】后保存。

【评论数】的格式化数据过程相同。

 

 

步骤九、采集多个关键词的搜索结果数据

 

回顾一下,步骤三中我们输入关键词【疫情】,在【高级搜索】中选择条件:【原创】【2020-04-01 至 2020-04-05】,得到目标网址:https://s.weibo.com/weibo/%25E7%2596%25AB%25E6%2583%2585?q=疫情&scope=ori&suball=1&timescope=custom:2020-04-01:2020-04-05&Refer=g&page=2。

如果保持【高级搜索】的条件不变,需要更换其他关键词进行采集,怎么办?以下为具体步骤:

 

1、添加【循环-输入网址】步骤

在【打开网页】步骤后,添加一个【循环】。

进入【循环】设置页面。选择循环方式为【网址列表】,点击   按钮,进入网址输入页面。

 

2、根据网址中参数的规律,批量生成网址

选择【批量生成】,输入一个带有关键词和【高级搜索】条件的网址:

https://s.weibo.com/weibo/%25E7%2596%25AB%25E6%2583%2585?q=疫情&scope=ori&suball=1&timescope=custom:2020-04-01:2020-04-05&Refer=g&page=2。

鼠标选中网址中 q= 和 & 中间的部分并将其删掉(这部分内容是关键词,示例中输入的是【疫情】,复制进八爪鱼中时转码了),然后点击【添加参数】→ 选择参数类型为【自定义列表】→ 输入准备好的关键词(可同时输入多个关键词,一行一个即可),然后保存。

点击【保存设置】后,八爪鱼自动打开网页。

 

3、调整流程

将多余的【打开网页1】删掉

将整块【循环翻页】拖入到【循环-打开网页2】中。

 

 

特别说明:

a. 八爪鱼支持通过网址中参数的规律,自动批量生成网址,详情点击查看 根据规律批量生成网址 教程 

 

步骤十、设置翻页次数

 

由于微博本身的限制,搜索关键词后最多显示前50页的博文,即最多只需翻50次。

进入【循环翻页】设置页面,点开【退出循环设置】,勾选【循环执行次数等于】为50,即最多执行50次就退出翻页。

 

 

步骤十一、启动采集

 

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

 

 

特别说明:

a.【本地采集】是使用自己的电脑进行采集,【云采集】是使用八爪鱼提供的云服务器采集,点击查看本地采集与云采集详解

 

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

 

 

数据示例:

 

 

作者:Bin

编辑:Aisling