Excel怎么抓取網絡數據?
從各個網站爬取數據,一直是程序猿的專屬,業余的至少也得學個Python什么的,但是小必今天告訴你,Excel也能進行網站數據的抓取。下面小必從大經濟論壇中的最新精彩貼子為例,跟大家一起學習如何抓取網站中多頁數據:
網址:https://bbs.pinggu.org/z_index.php?type=3&page=1
上面截圖的是最新精華帖的第一頁,但是要抓取的是前15頁的內容:
首先觀察每一頁的網址的變化:
第1頁:https://bbs.pinggu.org/z_index.php?type=3&page=1
第2頁:https://bbs.pinggu.org/z_index.php?type=3&page=2
第3頁:https://bbs.pinggu.org/z_index.php?type=3&page=3
從上面的網址中可以看出,每頁的ID就是網址的最后一個數字,那么根據這個規律,接下來使用Excel來抓取以上的相關的內容。具體步驟如下:
Step-01:新建一個空白的工作表,單擊【數據】-【新建查詢】-【從其他源】-【自網站】,如下圖所示:
Step-02:在新彈出的對話框中選擇【高級】,在擴展的對話框中的【URL】部分輸入網址除頁碼ID之外的內容,在第二個框里輸入頁碼ID為1,單擊【確定】,如下圖所示:
Step-03:在新彈出的對話框中選擇“table0”查詢,然后單擊【編輯】,如下圖所示:
Step-04:在新彈出的對話框中,刪除第一列無用的列,然后選中第4列,單點【轉換】-【拆分列】-【按分隔符】,在彈出的對話框中選擇【最左側的分隔符】-【特殊符拆分】-【換行】-【確定】,再選中第5列,然后同樣的操作進行拆分,然后修改字段名稱。如下圖所示:
Step-05:單擊【視圖】-【高級編譯器】,在let前面輸入“(n as number) as table =>”,然后單擊【確定】(構建自定義函數),如下圖所示:
Step-06:在下面的參數框里任意的數字就可以查詢到任意頁碼的內容,但是不能抓取多頁。如果要一次性抓取多個頁碼,請看下一個步驟。如下圖所示:
Step-07:新建一個新的空查詢,即右鍵單擊【新建查詢】-【其他源】-【空查詢】,然后在彈出的界面中,在編輯欄里輸入公式:={1..15},回車鍵后生成1至15的列表,最后單擊【到表】。如下圖所示:
Step-08:單擊【添加列】-【調用自定義函數】-【功能查詢】里選擇上面步驟的Table0,最后單擊確定。如下圖所示:
Step-09:單擊擴展按鈕,擴展表。如下圖所示:
Step-10:得到抓取的相關數據,到此完成抓取,修改列名,關閉并上載。如下圖所示:
抓取結果如下圖: