【场景描述】采集美团商铺评论数据。
【源网站介绍】美团:美食攻略,外卖网上订餐,酒店预订,旅游团购,飞机票火车票,电影票,ktv团购吃喝玩乐全都有!店铺信息查询,商家评分/评价一站式生活服务网站。
【使用工具】前嗅ForeSpider数据采集系统,免费下载:
l 采集网站
【入口网址】https://www.meituan.com/feedback/3272142/
【采集内容】
采集某商家店铺下的所有评论数据。
【采集效果】如下图所示:
l 采集思路
l 配置步骤
1. 新建采集任务
选择【采集配置】,点击任务列表右上方【+】号可新建采集任务,将采集入口地址填写在【采集地址】框中,【任务名称】自定义即可,点击下一步。
2.观察翻页请求链接
①在浏览器中打开该页面,点击不同的翻页,观察左上角页面链接,发现没有变化。说明翻页中的数据在请求链接中。
②点击F12,如下图所示操作,先清空所有请求,点击任意一个翻页,右侧出现对应请求链接。打开请求的Preview,看到有表格中的数据。说明该请求为该翻页对应的请求链接。
右击该请求,可复制链接。
③将复制的链接粘贴到文档中,并用同样的方法,再获取另外两个翻页链接,观察翻页请求链接规律如下所示:
发现请求链接规律为:
https://www.meituan.com/ptapi/poi/getcomment?id=3272142&offset=+(页数-1)*10+&pageSize=10&sortType=1
3.拼取翻页请求链接
①选中链接抽取,打开脚本窗口,写一个for循环,拼取翻页请求链接。
②脚本文本如下所示:
for(int i=0;i<=5;i++)//for循环来采集多个翻页数据 { url u;//固定搭配,定义一个url u.title="第"+i+"页";//定义url标题为第i页 u.urlname="https://www.meituan.com/ptapi/poi/getcomment?id=3272142&offset="+i*10+"&pageSize=10&sortType=1";//根据翻页请求规律,拼写请求链接 u.entryid=CHANN.id;//固定搭配 u.tmplid=2;//将拼好的链接关联模板02 RESULT.AddLink(u);//固定搭配, }
③采集预览,查看是否为链接是否正确,复制任意一条链接,并在浏览器中打开该链接。
如下图所示,源码中包含该翻页的数据内容,则表示请求链接配置正确,可继续下一步操作。
4.抽取数据
①新建模板02,在其下新建一个数据抽取,如下图所示:
②新建数据表,具体如下图所示:
④关联数据表
⑤由于数据在请求的源码中,数据抽取需要写脚本来实现。打开脚本窗口,新建数据抽取脚本。
⑥打开浏览器,观察源码,发现页面表格中的数据,在页面源码的json串中,具体位置在comments的数组中,每个数值,对应一条评论数据。每个评论数据分别在每个数值的参数中。
根据数据所在位置规律,编写脚本如下所示:
脚本文本:
var str=DOM.GetSource().ToStr();//获取请求链接中所有的源码
jScript js;//定义一个js
var obj = js.RunJson(str);//运行数组
var data=obj.comments;//定义data为diff数组
for(var i=0;i<10;i++){//有20个数值,所以写一个for循环,来获取这些数值的内容
record re;//定义返回值,固定搭配
re.id=MD5(URL.title.Right("@_@")+i);
re.nickname=data[i].userName;
re.userurl=data[i].userUrl;
re.price=data[i].avgPrice;
re.comment_=data[i].comment;
re.commenttime=data[i].commentTime;
re.star=data[i].star;
re.menu=data[i].menu;
RESULT.AddRec(re,this.schemaid);//结束返回一个数据,固定搭配
}RESULT.AddRec(re,this.schemaid);//结束返回一个数据,固定搭配
}
⑥采集预览
发现数据都预览出来了,说明配置成功。
l 采集步骤
模板配置完成,采集预览没有问题后,可以进行数据采集。
1.建立数据表单
选择【数据建表】,点击【表单列表】中该模板的表单,在【关联数据表】中选择【创建】,表名称自定义,这里命名为【pinglun】(注意命名不能用数字和特殊符号),点击【确定】。创建完成,勾选数据表,并点击右上角保存按钮。
2.开始采集
选择【数据采集】,勾选任务名称,点击【开始采集】,则正式开始采集。
3.导出数据
采集结束后,可以在【数据浏览】中,选择数据表查看采集数据,并可以导出数据。
4.导出的文件打开如下图所示:
*本教程仅供教学使用,严禁用于商业用途!