但是如何要一次性抓取多個頁碼下的數(shù)據(jù),該如何抓取呢?如下圖所示,是 某網(wǎng)址中關(guān)于股票的一些數(shù)據(jù): 現(xiàn)要求抓取以上網(wǎng)頁中的全部近5天的4頁數(shù)據(jù),并能實時更新。網(wǎng)址如下: http://vip.stock.finance.sina.com.cn/q/go.php/vLHBData/kind/ggtj/index.phtml?last=5&p=1 01 檢查Excel的版本 以下數(shù)據(jù)清理使用的是Excel Power Query的功能。 如果你是Excel2013及Excel2010版本的,請在微軟官網(wǎng)下載插件安裝即可。 下載網(wǎng)址: https://www.microsoft.com/en-us/download/details.aspx?id=39379 如果你是Excel2016,2019以及365版本的用戶,你可以直接在【數(shù)據(jù)】選項卡下面找到相關(guān)的菜單: 02 具體操作步驟 具體的操作步驟如下圖所示: Step-01:單擊【數(shù)據(jù)】-【新建查詢】-【從其他源】-【自網(wǎng)站】,如下圖所示: Step-02:在彈出的對話框中選擇【高級】,在URL部分粘貼復(fù)制出來的網(wǎng)址,將網(wǎng)址拆分成兩部分,第二分為表示頁碼的ID的部分,最后單擊【確定】,如下圖所示: Step-03:在彈出的對話框中選擇“Table 0”列表,然后單擊【編輯】,如下圖所示: Step-04:進入到Power Query的編譯器界面 ,單擊【高級編輯器】, 然后在'let'前面輸入:(n as number) as table =>,將并原來的代碼的部分“ 修改為: Step-05:然后彈出自定義函數(shù)的界面,在這個界面里輸入?yún)?shù)只能查詢單頁的數(shù)據(jù),還需要構(gòu)造一個頁碼的范圍。然后單擊左邊的查詢框,右鍵單擊【新建查詢】-【其他源】-【空查詢】,如圖所示:
Step-07:單擊【添加列】-【調(diào)用自定義函數(shù)】-【功能查詢】選擇Table 0,最后單擊【確定】,如下圖所示: Step-08:單擊擴展按鈕,在彈出的對話框中勾選掉”使用原始列名作為前綴“,最后單擊【確定】,如下圖所示: Step-09:修改第1列的列名為”頁碼“,然后關(guān)閉并上載。如下圖所示: 最終效果如下圖所示: 如果要隨時更新數(shù)據(jù),右鍵任意一個單元格,單擊【刷新】即可。如下圖所示: |
|