【場景描述】采集美團商鋪評論數據。
【源網站介紹】美團:美食攻略,外賣網上訂餐,酒店預訂,旅游團購,飛機票火車票,電影票,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.導出的文件打開如下圖所示:
*本教程僅供教學使用,嚴禁用于商業用途!