B站的番劇很多人都喜歡看:
Power Query進行網絡數據抓取的4步:
- 網站分析
- 試抓
- 自定義函數
- 抓取
網絡抓取的難點應該就在這一步,因為不同的網站有不同的數據結構,所以沒有一種通用的方法,能夠適用于所有的站點,都有一站一分析。
打開谷歌瀏覽器:
初步判斷這個應該就是真是的抓取地址,對于新番排名有兩種:3日排名/周排名。
我們再來看數據預覽:
網站返回的是一份JSON格式的數據。
通過上面的分析,這個網站是GET方法的抓取,可以直接通過真實直接抓取。
試抓
建立查詢,從web,粘貼真實地址:
直接就得到這個JSON數據。
將數據逐級展開,就得到了一份表格:
試抓成功后我們就開始下一步,自定義函數。
自定義函數
如果我們只抓取這一頁的數據,就不用定義函數了,直接提交結果就可以了,如果我們要把兩種數據都抓下來,就要用一個函數來執行這個過程:
抓取
最后一步抓取,我們建一個小表就有兩個值,{3,7},通過這兩個值抓下來兩個表,合并到一起:
展開就是我們要的數據了:
這個表中的數據既包含了排名的分數,也包含了播放量、追番、彈幕數量,所以我們可以根據這幾列的數據來做自己的一個數據排列。
至此,B站新番排名的數據抓取就完成了,我么可以用Power BI Desktop中的圖片可視化對象,做一個展示:
Power BI 商店中有個Strippet Browser非常適合做圖片與文字的瀏覽:
Strippet Browser
支持的字段很多,我們就這組數據用不到那么多的字段,只填幾個主要字段就好:
第一個字段是必填的,下面標題、圖片我們填好,還有最后一行,要填排序字段:
我們是用彈幕數量來作為排序依據的。
這個視覺對象有兩種圖片排列方式,
- 一種是縮略圖矩陣排列:選中文章時在下方顯示細節內容;
- 一種翻書式的排列:直接在書頁中展開細節內容;
矩陣式排列:
書頁式排列:
你正在追的是哪一部呢?


