2020年的電影市場沉寂了大半年,隨著國慶檔幾部影片的上映,差不多恢復到了往年的熱度,不過打算看哪部電影不能僅看是否熱門,更靠譜的是參考電影評分,更準確的說,是看豆瓣的評分。
這篇文章就來看看如何用PowerBI批量抓取豆瓣電影的數據。以最近正在上映的電影為例,豆瓣網址為:
https://movie.douban.com/
利用從web獲取數據的功能,將這個網址放進去,就可以輕鬆獲取這些影片的評分:
這種方式抓取的只有一個評分數據,其實在每部電影的詳情頁,有更豐富的數據,比如電影的導演、主演、評分人數、影評條數等。
比如最近最熱門的電影《姜子牙》的豆瓣詳情頁:
如何能批量抓取每一部電影詳情頁中的這些數據呢?下面就來看看操作步驟。
1、批量獲取電影的詳情頁網址。
要想獲得詳情頁的數據,首先就需要先得到每部電影的詳情頁網址,批量獲取網址的方法,之前也介紹過(參考:Power BI如何獲取網頁中的連結?這個方法非常好用)。
先打開前兩部電影的詳情頁並將網址複製下來,然後利用"使用示例添加表"的功能,將前兩行數據粘貼到前兩行,系統就可以自動識別並補全剩餘的信息。
或許是豆瓣電影網頁的數據結構不夠規範,所以提取出來的數據,與網站實際看到的略有出入,將重複的、以及不正確的數據刪除即可。
2、提取某一部電影詳情頁需要的數據。
選擇某一個電影,進入詳情頁,比如提取出《姜子牙》的導演、主演、評分人數等數據,依然"使用示例添加表",將這些數據提取成一行,
然後將這一行數據清洗成規範的數據。
3、利用第2步的查詢建立自定義函數。
右鍵該查詢>創建函數,
命名為movieinfo,並修改前兩行代碼,定義網址為參數:
自定義函數製作完成。
4、調用自定義函數。
在第1步查詢的基礎上,調用創建好的自定義函數:
然後展開數據即可獲得每一部電影的詳細數據:
將抓取到的數據上載到數據模型中就可以進行分析了,
不得不說,之前備受矚目的《花木蘭》評分真的好低,不推薦觀看。
以上就是PowerBI批量抓取連結網頁中數據的步驟,具體細節,可能不同的網站需要不同的處理,但整體思路基本如此。