如果你到愛淘寶上搜索一個關鍵詞,就會出來很多結果,任意一個關鍵詞對應的至少也有幾十頁的內容:
如果你要把所有這些頁面的數據抓取下來做分析,看看銷售金額,看看哪些店鋪銷售的好:
哪些產品賣得好:
接下來,我們就來做這個網站數據的抓取。
網址分析
打開愛淘寶網站,輸入關鍵字得到搜索結果網頁上右鍵,檢查然後點選幾個頁面的數字網址分析的過程就是一個找規律的過程:
我們點選頁碼時會有對應的網址URL,我們要觀察這個網址的變化規律,其中我們注意到兩點:
page=4key=Excel前後都是用&符號連接的,當我們選不同的頁面時,page會變化,正好對應的時頁碼,我們就知道,這個page對應的就是:
而key對應的就是我們搜索的關鍵字--“Excel”。
自定義抓取函數
數據>從網站輸入我們找到的實際網址URL修改成我們想要的函數這個函數有兩個參數:
page:要抓取的頁碼key:搜索關鍵字用這兩個參數替換掉URL中的頁碼數字和“Excel”
嘗試抓取
建一個列表1-100,轉換到表,並且轉換為文本格式自定義列,調用自定義函數愛淘寶的數據格式是json,Power Query可以直接解析。
轉換數據
展開記錄刪除不需要的列替換格式碼數據很整齊,除了產品聲明中有些格式符號,統一替換掉就行,另外圖片URL和其他跳轉的URL都沒有https,如果你要在Power BI中製作圖片牆,就需要替換“//”為“https://”,這樣這個圖片URL才是有效的URL。
上面的這個數據抓取的過程在Excel中與Power BI Desktop中幾乎是一樣的,如果你在Power BI Desktop中抓取了數據,就可以直接在Power BI Desktop中做出漂亮的圖片牆。
Power BI Desktop圖片URL這個問題好像是修復了,之前我們還需要用二進制保存圖片到本地,才能顯示圖片,今天試了一下,可以直接通過圖片URL顯示圖片了。
最後總結一下:
這次的抓取沒有遇到斷網的情況,這個網站視乎不反對大家抓取數據,而且使用Power Query抓取關鍵字Excel共100頁一共5991條數據,用不了幾秒鐘,速度也可以。對於不願意寫代碼,又有網絡抓取需求的朋友來說,Power Query也算是一種選擇吧。