Excel 股市資料抓取服務

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

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


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 Find語法+SelectionChange事件

Excel VBA 網路資料蒐集 完整教學:
http://raymondchiendtrt.blogspot.tw/2018/05/vba_72.html

在麻辣家族中有網友問到:

請問有什麼方式可以點選上方,小明的名子,然後接跳到A8位置
點選小王 位置移動到A25 小綠A40 小黑A65

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





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月15日 星期二

如何每隔一段時間自動執行程式?

在麻辣家族中有一則發問:

如何每隔30分鐘讓程式執行複製貼上的動作
將A欄的值複製到C欄,下一次到D欄
一直到執行20次為止

我一開始的想法是用
Application.wait now()+timeValue("00:30:00")
就好
這段語法會讓程式先停住30分鐘後再執行下一步

2018年5月14日 星期一

VBA錯誤處理流程(全圖解)

Excel VBA 網路資料蒐集 完整教學:
https://raymondchiendtrt.blogspot.com/2018/08/vba_22.html

一般來說,當我們的程式執行起來沒有錯誤時,可以直接執行到底



2018年5月13日 星期日

連結


資安:
https://ithelp.ithome.com.tw/users/20103559/ironman/1202?page=1
https://ithelp.ithome.com.tw/articles/10192361

網路爬蟲:
http://club.excelhome.net/thread-893760-1-1.html
http://club.excelhome.net/forum.php?mod=viewthread&tid=869382&page=1#pid5952249
https://www.mobile01.com/topicdetail.php?f=511&t=4737630&p=1
http://club.excelhome.net/thread-1159783-4-1.html

Fiddler教學
http://club.excelhome.net/thread-1159783-1-1.html

Github新手教學
https://www.youtube.com/watch?v=py3n6gF5Y00

[教學文] 利用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月8日 星期二

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法快上好幾倍,簡單講一下原因,不知道各位有沒有想過,當我們在網路上按下某個連結時,到底發生了甚麼事呢?