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

采集网站:

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

?

使用功能点:

Ajax滚动教程

Ajax点击和翻页教程

分页列表及详细信息提取

?

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

?

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

?

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


步骤1:创建采集任务

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

1

?

2)要采集的网址制?#31243;?#21040;网站输入框?#26657;?#28857;击“保存网址

2

?

步骤2:创建翻页循环

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

3

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

4

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

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

?

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

5

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

6

步骤3:创列表循环

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

7

?

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

8

?

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

9

?

步骤4:提取微博信息

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

10

?

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

11

?

步骤5:提取微博评论

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

因此,我们需要对“点击元素”步骤,设置页面滚动完成后向下滚动,滚动次数为“2次?#20445;看?#38388;隔“3秒?#20445;?#28378;动方式为“直接滚动到底部?#20445;?#28982;后点击“确定”保存

?

2)下拉页面,?#19994;讲?#28857;击?#23433;?#30475;更多”按钮。在操作提示框?#26657;?#36873;择“循环点击单个元素”

由于此网页涉及Ajax技术,我们需要进行一些高级选项的设置。选?#23567;?#28857;击元素”步骤,打开?#26696;?#32423;选项?#20445;?#21246;选“Ajax加载数据?#20445;?#35774;置时间为“4秒?#20445;?#28982;后点击“确定”保存

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

?

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

? 选?#23567;?#24490;环翻页”步骤(微博评论的循环翻页),将其拖入到图中箭头?#36214;?#30340;绿色加号位置(即“循环?#20445;?#24494;博链接的循环列表)步骤中的“提取数据”后)


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

?

4)接下来就是提取微博评论,选中页面内的第一个评论区块(不在操作提示框中做任何操作)

?

?

?

5)继续选中页面中的第二个评论区块,选中后,全部变为绿色,在操作提示框?#26657;?#36873;择“采集以下数据”

?

6)自动创建循环列表完成,自动提取了很多字段。其中有多个字段都是不需要的。选中不需要的字段,点击下面的垃圾桶图标,可将不需要的字段删除

?

?

?

7)字段选择完成后,可进行自定义命名

?

?

?

8)选中图中的“循环?#20445;?#21363;评论列表的循环),将其拖动到流程中的绿色加号位置(先循环翻页完,再提取数据,避免重复)

?

?

9)拖动后如图所示

?

?

步骤6:数据采集及导出

1)点击“开始采集?#20445;?#36873;择“启动本地采集”

?

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

?

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

?