Excel 股市資料抓取服務

提供Excel 股市資料抓取服務
可透過下列方式聯絡我
Email: iamaraymond@yahoo.com.tw
(FB請先加我好友再私訊,不然會跑到陌生訊息)

課程:
Excel VBA 金融資料抓取 | 打造股票研究系統 (學生數: 602,學員評價5顆星)
無痛起步-Excel VBA超入門實戰(學生數: 413,學員評價5顆星)


顯示具有 網路爬蟲 標籤的文章。 顯示所有文章
顯示具有 網路爬蟲 標籤的文章。 顯示所有文章

2019年9月10日 星期二

躲進JavaScript裡的資料

今天一位同學在抓券商資料時,使用XMLHTTP法,抓完發現有些個股名稱抓不到,但之前用IE法明明可以完整抓下來

2018年9月6日 星期四

Excel VBA 抓取樂透網站

最近一位學生傳了一個連結給我
問如何抓取表中的那些開獎數字

我對此網站內容沒甚麼興趣,畢竟我也沒玩過樂透
但我對如何抓此網站的資料倒是十分有興趣

網站架構不算複雜,只能算是一個小型網站
然而我認為這對於初學者是難度頗高的網站

2018年8月17日 星期五

Excel VBA 下載CSV

Excel VBA有蠻多種下載CSV的方式
1.使用Workbooks.Open(網址)
2.使用QueryTable
3.使用XMLHTTP物件

以上一篇文章抓的三大法人買賣超日報為範例

2018年8月16日 星期四

Excel VBA 抓取三大法人買賣超日報(搭配Javascript)

看到一位網友提問,希望抓取證交所三大法人買賣超日報
於是便自己先抓抓看
找到資料源後,發現資料是以JSON呈現,而且還是比較難處理的格式
想到很久以前有學著使用Javascript來處理這種格式,因此今天來複習一下

2018年7月16日 星期一

Excel VBA爬蟲 VS 其他語言爬蟲


最近看到網友問到「Excel VBA跟其他語言爬蟲有甚麼差異?有甚麼優點?」

我以教會零程式基礎的同學如何做網頁資料擷取(網路爬蟲)的角度來切入

以下是我的想法,歡迎大家交流

其實爬蟲技術都是一樣的,因為主要是觀察網頁有哪些特點,並加以運用來抓到自己想要的資料,而選擇使用Excel VBA有幾個優點:

2018年6月9日 星期六

Excel VBA 自動下載期交所三大法人選擇權資料

Excel VBA 網路資料蒐集 完整教學:


資料來源網址

此程式可讓使用者輸入欲查詢的天數
例如想要收集近20天的資料
就在inputbox輸入20
如果想固定收集特定天數的資料
也可在程式碼的inputbox改成你想要的天數



2018年5月29日 星期二

2018年5月26日 星期六

Excel VBA 自動下載網路檔案

Excel VBA 網路資料蒐集 完整教學:


今天想來複習一下用VBA下載網路檔案的語法
於是想到了從公開資訊觀測站自動下載年報檔案

只要在Excel的A3儲存格輸入股票代號
接著從A6開始往下輸入要抓的年度即可

2018年5月24日 星期四

HTMLFile物件的侷限性

今天在抓新聞資料時,想使用HTMLFile物件去抓新聞內文

http://www.cna.com.tw/news/afe/201805230211-1.aspx

在抓內文時可看到有很多像是Div、P這種很難定位的Tag,也沒有ID可以使用
但幸好找到了section這個特別的Tag

2018年5月21日 星期一

Excel VBA抓取股價資料


Excel VBA 網路資料蒐集 完整教學:

有位網友提供了一個連結:
http://webrtqt.fortunengine.com.tw/rtdata/k-chart/day-2330.txt?ts=1526775289018

裡面內容

其實這也是抓資料常會碰到的格式
但既然資料在哪裡已經知道了
接下來就是只要簡單的資料整理就好了

Excel VBA抓台灣匯率表的資料


Excel VBA 網路資料蒐集 完整教學:

近期在用Excel VBA抓台灣匯率表的資料
http://rate.bot.com.tw/xrt?Lang=zh-TW



2018年5月17日 星期四

WinHttp物件:自動忽略憑證錯誤

在用WinHttp寫網路爬蟲時,最怕遇到一種錯:


對於非資訊背景的我,即使找到了相關的文件,也猶如在看天書一樣完全無法理解

2018年5月13日 星期日

[教學文] 利用VBA抓股價資料--找出網站資料庫


之前的文:
https://raymondchiendtrt.blogspot.tw/2018/05/vba.html
https://raymondchiendtrt.blogspot.tw/2018/05/vba-xmlhttp.html

其實要找出網路資料藏在哪一個Request並不是一件困難的事,尤其像現在有各式各樣抓取網路封包的工具,如各瀏覽器的開發人員工具、Fiddler等等,而對我來說,我自己是比較習慣使用Chrome開發人員工具,因此就以此為基礎來寫教學文

首先,打開開發人員工具的方法有2個,第一個是直接按下F12,第二個是在網頁任意處按下「檢查」,即可呼叫出開發人員工具,為什麼這個工具這麼重要呢?

前面有說過,我們的網頁是由Client端發出的各個Request拿回來的Response所拼成的,而這個工具在被打開後,會記錄發送了哪些Request,整齊的列在上面

要找出藏有資料的Request有幾個小方法:
1.通常會藏在”doc””XHR”,也有少數是藏在”JS”
2.名稱通常會包含關鍵字,例如股票代號、或是該商品的縮寫、代號等等的

以下開始圖文教學(以抓取股價為例)

2018年5月9日 星期三

VBA網路爬蟲-XMLHTTP物件


之前的文
VBA網路爬蟲(網路資料蒐集)--簡述原理

要使用XMLHTTP,首先要先引用XMLHTTP物件
引用是一個甚麼概念呢?
VBA最基本的功能大部分是侷限在Excel的內部操作上
而引用則是把VBA帶出了Excel,來到外面的世界
變得可以操控文件、資料夾、IE瀏覽器等等
就像是請來了一個專家,你用VBA告訴這個專家我要做甚麼
舉大家比較熟的IE為例,其實當大家在使用createObject("InternetExplorer.Application")時
你就像聘請一位專家,當你用VBA寫下 IE.navigate"網址",就是請他把IE瀏覽到某個網頁

解決XMLHTTP緩存問題


http://forum.twbts.com/thread-20749-1-1.html

今天在幫忙解問題時,遇到緩存的問題
在我們使用XMLHTTP第一次發送request時,他除了把資料抓下來以外,還會有個有點像「記憶」的功能,也就是說當你下次發送相同request時,他會直接去用他記憶的內容把結果回傳給你

2018年5月7日 星期一

VBA網路爬蟲(網路資料蒐集)--簡述原理



 http://forum.twbts.com/thread-20748-1-1.html

最近回復了許多帖子都是關於如何用VBA做網路爬蟲,抓取如股票資料等資訊,所以想說直接寫成一篇教學文,讓對此有興趣的朋友有個入門的管道,只是因為這些都是自學而來,若有錯誤或建議還請版主以及版上的各位高手不吝指教。

小弟學習使用VBA做網路爬蟲有一陣子了,抓過不少資料,也累積了一些心得
小弟比較熟悉的爬蟲方式有三種:
1.QueryTable(也有人稱QT)
2.操控IE
3.XMLHTTP(這物件的兄弟蠻多的,如MSXMLWinHttp等等的)
其中12的方法在論壇中已經使用過許多次,建議大家如果有需要的話可以自行搜尋一下相關的帖子(或是之後我在寫教學文)

XMLHTTP似乎較少人運用,但就速度上來說,其實是比QT法和IE法快上好幾倍,簡單講一下原因,不知道各位有沒有想過,當我們在網路上按下某個連結時,到底發生了甚麼事呢?