Excel VBA 簡易爬蟲

更新於 發佈於 閱讀時間約 4 分鐘

首先用Chrome瀏覽器,在證交所的目標數據網頁上按F12,在Network、All、Headers項目下,逐一點選網頁的Name,然後搭配網頁選單的擾動,就能判斷正確的還原網址。以每5秒委託成交統計為例,還原的網址為
https://www.twse.com.tw/exchangeReport/MI_5MINS?response=json&date=20220105

raw-image

有了網址後,就利用Excel VBA來做一隻簡單的網頁爬蟲

Option Explicit
Sub CatchWebData()
Dim urlText As String
Dim NumDate As String
Dim Path As String

NumDate = "20220105"
Path = "D:\" + NumDate + "證交所五秒數據.txt"
urlText = "https://www.twse.com.tw/exchangeReport/MI_5MINS?response=json&date="
urlText = urlText + NumDate
'台灣證券交易所,五秒委託、成交量,每日共計3241筆

'Part1 使用Late Binding方式,避免引用程序
Dim myXML As Object '宣告物件
Set myXML = CreateObject("Microsoft.XMLHTTP") '物件繼承XMLHTTP功能

'Part2 抓取資料
Dim myText As String
myXML.Open "GET", urlText, False '開啟目標網頁,開啟方法為GET
myXML.send '送出請求
myText = myXML.responseText '伺服器回傳資料,本機電腦用myText接收Set myXML = Nothing
'myText字串內容可以參考實際證交所網頁
'https://www.twse.com.tw/exchangeReport/MI_5MINS?response=json&date=20220105

'Part3 整理字串,JSON字串有固定格式{}、[]
Dim ii, x, y, z As Variant
x = InStr(1, myText, ":[[") + 3 '所需字串資料起點位置
y = InStr(1, myText, "]],") '所需字串資料末端位置
myText = Mid(myText, x, y - x) '重新抓取所需的字串資料,剃除頭尾不需要的資料
z = Split(myText, "],[") '利用拆字串函數,將分解後的集合,存入陣列之中

'Debug.Print z(0)
'Debug.Print z(3240)

Open Path For Append As #1 'Excel VBA 寫出到外部文字檔,使用Append、Print方法
Print #1, "時間;委買筆;委買量;委賣筆;委賣量;成交筆;成交量;成交金額"
Close #1

For ii = 0 To 3240
z(ii) = Replace(z(ii), Chr(34) & "," & Chr(34), ";") '整理資料:將資料間的逗號改為分號
z(ii) = Replace(z(ii), Chr(34), "") '整理資料:去除資料間的引號
Open Path For Append As #1
Print #1, z(ii)
Close #1
Next ii

End Sub



留言
avatar-img
留言分享你的想法!
avatar-img
Piemann的沙龍
21會員
118內容數
Piemann的沙龍的其他內容
2025/04/01
2025.04.01 明顯的,Cheat GPT 功能越來越強大,應用範圍只多不少 !! 輸入問題如下 : 1. 有一個隨機碼,長度為5個不重複的數字及小寫英文字母所組成, 例如 e2k9z、ju72d、...,共有一萬筆數據 2. 請設計一個雜湊函數方案,讓隨機碼對應到實數整數空間 3.
Thumbnail
2025/04/01
2025.04.01 明顯的,Cheat GPT 功能越來越強大,應用範圍只多不少 !! 輸入問題如下 : 1. 有一個隨機碼,長度為5個不重複的數字及小寫英文字母所組成, 例如 e2k9z、ju72d、...,共有一萬筆數據 2. 請設計一個雜湊函數方案,讓隨機碼對應到實數整數空間 3.
Thumbnail
2024/12/01
龐氏騙局定義 : 由後繼者的投資本金,支付前期投資者的紅利,謂之 !! 案例 : 制定獎勵生育誘因、追求人口紅利之國策,其實就是隱形的龐氏騙局 !! 那生命的意義,除了在於繼起宇宙生命之外,還有啥意義 ? 對曰 : 還得創造傳奇 ! 那如何創造傳奇 ? 對曰 : 確定目標、集中資源、專研
2024/12/01
龐氏騙局定義 : 由後繼者的投資本金,支付前期投資者的紅利,謂之 !! 案例 : 制定獎勵生育誘因、追求人口紅利之國策,其實就是隱形的龐氏騙局 !! 那生命的意義,除了在於繼起宇宙生命之外,還有啥意義 ? 對曰 : 還得創造傳奇 ! 那如何創造傳奇 ? 對曰 : 確定目標、集中資源、專研
2024/11/17
1990~1991之際,爆發第一次波灣戰爭(市場稱為第三次石油危機),起因是兩伊戰爭期間,伊拉克對科威特欠下巨債,戰後伊拉克藉端生事,要求取消相關債權,科威特不願意,因此伊拉克便開始調動軍隊部署於邊境(1990.七月中下旬),緊張局勢快速升溫,及至入侵(1990.08.02)科威特佔領全境後(199
2024/11/17
1990~1991之際,爆發第一次波灣戰爭(市場稱為第三次石油危機),起因是兩伊戰爭期間,伊拉克對科威特欠下巨債,戰後伊拉克藉端生事,要求取消相關債權,科威特不願意,因此伊拉克便開始調動軍隊部署於邊境(1990.七月中下旬),緊張局勢快速升溫,及至入侵(1990.08.02)科威特佔領全境後(199
看更多
你可能也想看
Thumbnail
2025 vocus 推出最受矚目的活動之一——《開箱你的美好生活》,我們跟著創作者一起「開箱」各種故事、景點、餐廳、超值好物⋯⋯甚至那些讓人會心一笑的生活小廢物;這次活動不僅送出了許多獎勵,也反映了「內容有價」——創作不只是分享、紀錄,也能用各種不同形式變現、帶來實際收入。
Thumbnail
2025 vocus 推出最受矚目的活動之一——《開箱你的美好生活》,我們跟著創作者一起「開箱」各種故事、景點、餐廳、超值好物⋯⋯甚至那些讓人會心一笑的生活小廢物;這次活動不僅送出了許多獎勵,也反映了「內容有價」——創作不只是分享、紀錄,也能用各種不同形式變現、帶來實際收入。
Thumbnail
嗨!歡迎來到 vocus vocus 方格子是台灣最大的內容創作與知識變現平台,並且計畫持續拓展東南亞等等國際市場。我們致力於打造讓創作者能夠自由發表、累積影響力並獲得實質收益的創作生態圈!「創作至上」是我們的核心價值,我們致力於透過平台功能與服務,賦予創作者更多的可能。 vocus 平台匯聚了
Thumbnail
嗨!歡迎來到 vocus vocus 方格子是台灣最大的內容創作與知識變現平台,並且計畫持續拓展東南亞等等國際市場。我們致力於打造讓創作者能夠自由發表、累積影響力並獲得實質收益的創作生態圈!「創作至上」是我們的核心價值,我們致力於透過平台功能與服務,賦予創作者更多的可能。 vocus 平台匯聚了
Thumbnail
如何觀察一家個股的好壞,最直觀的方式就是查詢其財務報表,像是資產負債表或是現金流量表等等,但這些報表中存在著密密麻麻的眾多指標,真的是會讓人看了頭昏眼花,而且也真的是極少數人才會每個指標都關注,大多的人一定都是觀察幾個自認為比較重要的指標而已吧,因為我就是如此,因此今天我們就來學習如何一鍵輕鬆查詢報
Thumbnail
如何觀察一家個股的好壞,最直觀的方式就是查詢其財務報表,像是資產負債表或是現金流量表等等,但這些報表中存在著密密麻麻的眾多指標,真的是會讓人看了頭昏眼花,而且也真的是極少數人才會每個指標都關注,大多的人一定都是觀察幾個自認為比較重要的指標而已吧,因為我就是如此,因此今天我們就來學習如何一鍵輕鬆查詢報
Thumbnail
今天繼續我們股市LINE BOT的訊息顯示教學,繼上次我們查詢了平均股利的資訊後,這次我們來製作如何查詢歷年股利的部份,其實大同小異,就差在爬取的網站資料差異而已,那我們就開始今天的教學吧!!
Thumbnail
今天繼續我們股市LINE BOT的訊息顯示教學,繼上次我們查詢了平均股利的資訊後,這次我們來製作如何查詢歷年股利的部份,其實大同小異,就差在爬取的網站資料差異而已,那我們就開始今天的教學吧!!
Thumbnail
這是很久以前嘗試過的股票資訊視覺化的小專案,主要是參考自FINVIZ的美股TreeMap發想而來的。在Plotly的說明網站中看到了Sunburst的圖表,便試著按照一樣的邏輯試做了一次。 這篇會大致介紹製作流程,以及如何將互動圖表輸出並崁入wordpress之中。
Thumbnail
這是很久以前嘗試過的股票資訊視覺化的小專案,主要是參考自FINVIZ的美股TreeMap發想而來的。在Plotly的說明網站中看到了Sunburst的圖表,便試著按照一樣的邏輯試做了一次。 這篇會大致介紹製作流程,以及如何將互動圖表輸出並崁入wordpress之中。
Thumbnail
前陣子因為Heroku被駭客入侵原因,導致Github串聯被封阻,一度無法進行教學,不過近日Heroku已重新全面開放串聯,因此我們將持續恢復教學文章,今天我們要教的是如何爬取個股的平均股利資訊,讓我們輕鬆一鍵了解個股股利的發放狀況
Thumbnail
前陣子因為Heroku被駭客入侵原因,導致Github串聯被封阻,一度無法進行教學,不過近日Heroku已重新全面開放串聯,因此我們將持續恢復教學文章,今天我們要教的是如何爬取個股的平均股利資訊,讓我們輕鬆一鍵了解個股股利的發放狀況
Thumbnail
在上一篇教學中,我們學會如從Goodinfo!中將個股的一些最新與基本資訊爬取下來並打印出來,而先前我們也教過如何爬取台股、全球等較大範圍的新聞爬取,而今天我們就打算將範圍縮小,只針對個股的新聞來進行抓取,那我們就開始今天的教學吧!! 匯入套件 爬取YAHOO!股市
Thumbnail
在上一篇教學中,我們學會如從Goodinfo!中將個股的一些最新與基本資訊爬取下來並打印出來,而先前我們也教過如何爬取台股、全球等較大範圍的新聞爬取,而今天我們就打算將範圍縮小,只針對個股的新聞來進行抓取,那我們就開始今天的教學吧!! 匯入套件 爬取YAHOO!股市
Thumbnail
在上一篇教學中,我們學會了如何將鉅亨網上的新聞爬取下來,並且顯示在LINE BOT中,而我們今天則來教一下如何查詢個股的一些基本資訊,以及最新的開盤價、成交價等資訊吧!!
Thumbnail
在上一篇教學中,我們學會了如何將鉅亨網上的新聞爬取下來,並且顯示在LINE BOT中,而我們今天則來教一下如何查詢個股的一些基本資訊,以及最新的開盤價、成交價等資訊吧!!
Thumbnail
在一系列的基礎教學過後,我們終於要來教學跟股票相關的文章了,那就是「如何爬取最新的財經新聞」,別嫌之前的基礎枯燥乏味,基礎打好我們才能夠將功能運用的千變萬化,所以還沒看過之前的基礎教學,可以先去觀看唷!!廢話不多說,我們就開始今天的教學吧!!
Thumbnail
在一系列的基礎教學過後,我們終於要來教學跟股票相關的文章了,那就是「如何爬取最新的財經新聞」,別嫌之前的基礎枯燥乏味,基礎打好我們才能夠將功能運用的千變萬化,所以還沒看過之前的基礎教學,可以先去觀看唷!!廢話不多說,我們就開始今天的教學吧!!
Thumbnail
Excel VBA 簡單的網頁爬蟲
Thumbnail
Excel VBA 簡單的網頁爬蟲
Thumbnail
https://www.youtube.com/watch?v=AUq-BqPG500 程式執行只有配樂展示,無講話 前言: 這次跟大家分享一下怎麼用EXCEL VBA抓取Goodinfo中,經營績效理不同分頁的資料,如上圖。 文後會附上程式範例給大家做參考。 4.資料整理,欄位定位。
Thumbnail
https://www.youtube.com/watch?v=AUq-BqPG500 程式執行只有配樂展示,無講話 前言: 這次跟大家分享一下怎麼用EXCEL VBA抓取Goodinfo中,經營績效理不同分頁的資料,如上圖。 文後會附上程式範例給大家做參考。 4.資料整理,欄位定位。
Thumbnail
這篇是記錄一下透過VBA抓取goofinfo股息跟報價的方式。適合對VBA做投資工具設計有興趣的朋友閱讀,因為這個比較進階,有興趣再研究。
Thumbnail
這篇是記錄一下透過VBA抓取goofinfo股息跟報價的方式。適合對VBA做投資工具設計有興趣的朋友閱讀,因為這個比較進階,有興趣再研究。
追蹤感興趣的內容從 Google News 追蹤更多 vocus 的最新精選內容追蹤 Google News