本次文章以上市、上櫃、興櫃各一支股票為例,來跟大家說明如何使用IMPORTXML函式抓取第三方來源的股價與其他資料
如果還沒看前面文章的記得先去補充基本概念
用 Google 試算表製做簡易股票報價表及理財表
用 Google 試算表製做歷史股價走勢圖(K線)
用 Google 試算表進行技術分析(雙週線)(月線)
===========================
好啦以下是正文,之前每次改了一下抓取的資料源,過沒多久就被封掉了
感覺每次都在跟資料源競賽,看是先找到抓取方式,還是先被封掉XDD
這次要感謝一位網友提供一個方法
不過直接貼上使用卻失敗了,後來我重新去Bloomberg網站研究了一下,並且研究了一下IMPORTXML函式的使用方式,終於成功了
首先先來說明一下IMPORTXML函式
官方文件請見下方連結
簡單的說,就是針對特定網址去做XPath_查詢
我知道講太多技術的東西大家會想放棄
直接告訴大家結論
本次用IMPORTXML函式從bloomberg的網站抓資料
在Bloomberg上,台股的代碼通常是XXXX:TT,公式如下
=IMPORTXML("https://www.bloomberg.com/quote/"&$B2&"","//span[@class='priceText__1853e8a5']")
我先在B2的欄位放入我要查詢的股票代號,如下圖,把想要查詢的台股代碼加上:TT
然後再於C2的欄位放上公式
就成功啦!!!
以下如法泡製,就可以把上櫃的金洲,與興櫃的乾杯股價查詢出來了
是不是很簡單呢?
本次程式碼已經更新到理財表格長期支援版內
有訂閱的朋友記得去下方連結文章留言email就可以收到表格了
我將思想傳授他人,他人之所得,亦無損於我之所有;猶如一人以我的燭火點燭,光亮與他同在,我卻不因此身處黑暗。湯瑪斯‧傑弗遜(Thomas Jefferson)
太強大,一直以來,只能用googlefinance查上市股價,遇到上櫃就本不到了,謝謝版大提供方法,...
回覆刪除更正:查,
刪除請問有沒有辦法抓到上櫃公司成交量資料,謝謝
回覆刪除可以
刪除vicsamsungsten@gmail.com
回覆刪除1. "&$B2&"" 這個最後面的兩個 “” 好像沒有意義? 實測好像拿掉也可以?
回覆刪除2. 同樣的方法,想要從Bloomberg網站抓 52週高低 & 當天的股價增跌幅+/-%好像不行 不知道是不是中間的字串有空格的緣故
有沒有建議的方法嘗試一下?
增跌幅: =IMPORTXML("https://www.bloomberg.com/quote/"&C4&":TT","//span[@class='changePercent__2d7dc0d2 negative__53babed0']")
字串是: changePercent__2d7dc0d2 negative__53babed0' 中間有個空格
52L & 52H:
=IMPORTXML("https://www.bloomberg.com/quote/"&C4&":TT","//span[@class='textLeft__c99cf899 ']")
=IMPORTXML("https://www.bloomberg.com/quote/"&C4&":TT","//span[@class='textRight__9a2b77e6 ']")
兩個字串都有一個空格在最後面
感謝分享! 照本宣科也有成功抓取Key Statistics 像是PE EPS等等
回覆刪除不過goodinfo好像格式就不太相同 就失敗了哈...
昨天還可以使用,今天就不行了,是Bloomberg有改版嗎?
回覆刪除你好今天不行用了 是不是網站改版了
回覆刪除作者已經移除這則留言。
回覆刪除可以改用ImportFromWeb:
回覆刪除在此處獲取加載項:
https : //gsuite.google.com/marketplace/app/importfromweb_easy_web_scraping/278587576794然後將IMPORTXML替換為IMPORTFROMWEB
= IMPORTFROMWEB("https://www.bloomberg.com/quote/"&C3&":TT","//span [@class='priceText__1853e8a5']")
參考來源 https://support.google.com/docs/thread/72619939?hl=en
thanks for share
刪除https://gsuite.google.com/marketplace/app/importfromweb_easy_web_scraping/278587576794
回覆刪除版主你好 我按照你的方法 寫了一份抓取月營收EPS當日股價的檔案
回覆刪除不過需要擷取的數據太多(因為不是只抓一個股,大概有360個欄位要抓取資料) 會發生loading太久讀取步到
請問有人知道要怎麼解決嗎
想請教一下,如希望importxml在Bloomberg恒生指數PE,該如何?
回覆刪除(https://www.bloomberg.com/quote/HSI:IND)
去年下記還可以用,但現在不成了。
=importxml("https://www.bloomberg.com/quote/HSI:IND","//*/div/div/section[3]/div[6]/div/div[1]/div[1]/div/span[2]")