本文介绍使用八爪鱼采集新浪微博评论的方法

采集网站:

https://weibo.com/mdabao?is_search=0&visible=0&is_all=1&is_tag=0&profile_ftype=1&page=1#feedtop

 

使用功能点:

Ajax滚动教程

Ajax点击和翻页教程

分页列表及详细信息提取

 

新浪微博:新浪微博是一个由新浪网推出,提供微型博客服务类的社交网站。用户可以通过网页、WAP页面、手机客户端、手机短信、彩信发布消息或上传图片。新浪可以把微博理解为“微型博客”或者“一句话博客”。用户可以将看到的、听到的、想到的事情写成一句话,或发一张图片,通过电脑或者手机随时随地分享给朋友,一起分享、讨论;还可以关注朋友,即时看到朋友们发布的信息。

 

新浪微博评论采集数据说明:本文进行了新浪微博-微博评价进行采集。首先个人微博主页,然后循环点击每一条微博,进入之后采集评价信息。本文仅以“新浪微博-微博评价采集”为例,大家在实操过程中,可根据自身需求,更换新浪微博的其他内容进行数据采集。

 

新浪微博评论采集字段详细说明:博主ID,发博时间,博文链接,微博内容,微博评论。


步骤1:创建采集任务

1)进入主界面,选择“自定义模式”

1

 

2)要采集的网址制粘贴到网站输入框中,点击“保存网址

2

 

步骤2:创建翻页循环

1)系统自动打开网页,进入微博。观察网页结构,当把页面下拉至底部的时候,会出现“正在加载中,请稍后”的字样,随着我们的下拉,页面会有新的数据加载出来。经过2次下拉加载,此页面达到最底部,出现“下一页”按钮

3

此网页涉及Ajax下拉加载,需要对其进行一些高级选项的设置。打开“高级选项”,勾选“页面加载完成后向下滚动”,设置滚动次数为“4次”,每次间隔“3秒”,滚动方式为“直接滚动到底部”,最后点击“确定”

4

注意: 这里的滚动次数及间隔时间,需要针对网站进行设置。

测试方法可以参考:八爪鱼7.0教程——AJAX滚动教程

 

2)将页面下拉到底部,点击“下一页”按钮,在右侧操作提示框中,选择循环点击下一页

5

“打开网页”类似,此步骤同样涉及Ajax下拉加载。打开“高级选项”,勾选“页面加载完成后向下滚动”,设置滚动次数为“4次”,每次间隔“3秒”,滚动方式为“直接滚动到底部”,最后点击“确定”

6

步骤3:创列表循环

1)移动鼠标选中页面里的第一条微博链接。选中后,系统会自动识别页面里的其他相似链接。在右侧操作提示框中,选择“选中全部”

7

 

2)选择“循环点击每个链接”,以创建一个列表循环

8

 

3)系统会自动点击进入第一条微博的详情页。观察网页结构,微博评论页面,需经过1次下拉加载,才会出现“查看更多”按钮。此步骤也涉及Ajax下拉加载。打开“高级选项”,勾选“页面加载完成后向下滚动”,设置滚动次数为1次”每次间隔“3秒”,滚动方式为“直接滚动到底部”,最后点击“确定”

9

 

步骤4:提取微博信息

1)微博详情页中,我们想采集博主ID、发博时间、微博内容、微博URL和微博评论。点击要采集的字段,在右侧的操作提示框中,选择“采集该元素的文本”(采集微博URL,则选择“采集该链接地址”)

10

 

2)字段信息选择完成后,选中相应的字段,可以进行字段的自定义命名完成后,点击“确定”

11

 

步骤5:提取微博评论

1)继续观察页面发现,经过两次下拉加载之后,评论才会完全加载出来,出现“查看更多”按钮

因此,我们需要对“点击元素”步骤,设置页面滚动完成后向下滚动,滚动次数为“2次”,每次间隔“3秒”,滚动方式为“直接滚动到底部”,然后点击“确定”保存

 

2)下拉页面,找到并点击“查看更多”按钮。在操作提示框中,选择“循环点击单个元素”

由于此网页涉及Ajax技术,我们需要进行一些高级选项的设置。选中“点击元素”步骤,打开“高级选项”,勾选“Ajax加载数据”,设置时间为“4秒”,然后点击“确定”保存

注:Ajax即延时加载、异步更新的一种脚本技术,通过在后台与服务器进行少量数据交换,可以在不重新加载整个网页的情况下,对网页的某部分进行更新。
表现特征:a、点击网页中某个选项时,大部分网站的网址不会改变;b、网页不是完全加载,只是局部进行了数据加载,有所变化。
验证方式:点击操作后,在浏览器中,网址输入栏不会出现加载中的状态或者转圈状态。

 

3)回顾采集过程,操作思路是: 打开要采集的网页>建立微博链接的翻页循环>建立微博链接的循环列表>点击微博链接,进入微博详情页>建立微博评论的翻页循环
已有的流程图没有遵循此逻辑,我们需要手动调整一下流程图结构
▶ 选中“循环”步骤(微博链接的循环列表),将其拖入到图中箭头指向的绿色加号位置(即第1个“循环翻页”和到第2个“循环翻页”之间)

▶ 选中“循环翻页”步骤(微博评论的循环翻页),将其拖入到图中箭头指向的绿色加号位置(即“循环”(微博链接的循环列表)步骤中的“提取数据”后)


▶ 拖动完成后,流程图如图所示

 

 

4)接下来手动创建微博评论的循环列表。选中左侧工具栏中的循环图标,将其拖入到流程图中的绿色加号位置

 

5)选中“循环”步骤,如图选择循环方式为“不固定元素列表”循环,并在图中位置填入xpath://*[@class='list_li S_line1 clearfix' and @node-type],然后点击“确定”保存


注:这里的xpath为什么要这么写,涉及到了xpath知识,请查看 xpath教程

 

6)选择页面中要采集的字段,这里采集的是评论者ID,先选中页面中的评论者ID,再在操作提示框中,选择“采集该链接的文本”,评论时间、评论内容采集方法同理

 

7)自定义修改字段名称,修改完成后点击 “确定”保存

 

8)将“提取数据”步骤,移动到图中绿色加号位置,即“循环”步骤中

 

步骤6:数据采集及导出

1)点击“开始采集”,选择“启动本地采集”

 

2)采集完成后,会跳出提示,选择“导出数据”。选择“合适的导出方式”,将采集好微博发博数据导出

 

3)这里我们选择excel作为导出为格式,数据导出后如下图