2017-09-14 79 views
1

我正在尋找一種方法從Yahoo Finance獲取所有共同基金和ETF代理商的名單。我發現像一些解決方案,例如:Yahoo Finance API獲取所有共同基金和ETF代收券的清單

https://github.com/Benny-/Yahoo-ticker-symbol-downloader

http://investexcel.net/all-yahoo-finance-stock-tickers/

但檢查幾十個隨機行情後unfortunantely大多不屬於共同基金類別。只要我能找到一種方法來檢查代碼的類別,就有了這個代號的列表似乎很有用。

enter image description here

使用搜索框,彈出顯示股票的類別雅虎財經網站。如何以編程方式複製此功能或使用例如YQL?

編輯:

以下丹尼爾的提醒後,我已經成功地過濾代號和 更新他們對我的GitHub: https://github.com/MichaelDz6/Yahoo_Finance_ETFs_Web_Scraper

回答

2

有可能告訴羯羊股票的共同基金或ETF,但很難區分共同基金和ETF。

作爲一個例子,讓我們帶着股票代碼TIBIX來研究Mututal基金。據我所知,只有共同基金和ETF在其個人資料標籤中有「基金家庭」類別。因此,您需要YQL來檢查股票是否包含內含「基金系列」的HTML跨度。

生YQL查詢

select * from htmlstring where url='https://finance.yahoo.com/quote/TIBIX/profile?p=TIBIX' and xpath='//span/*[contains(.,"Fund Family")]//text()' 

端點的查詢

https://query.yahooapis.com/v1/public/yql?q=select%20*%20from%20htmlstring%20where%20url%3D'https%3A%2F%2Ffinance.yahoo.com%2Fquote%2FTIBIX%2Fprofile%3Fp%3DTIBIX'%20and%20xpath%3D'%2F%2Fspan%2F*%5Bcontains(.%2C%22Fund%20Family%22)%5D%2F%2Ftext()'&format=json&env=store%3A%2F%2Fdatatables.org%2Falltableswithkeys 

如果TICKER是共同基金或ETF,查詢應該返回這樣的響應:

{"query":{"count":1,"created":"2017-09-25T07:07:10Z","lang":"en-US","results":{"result":"Fund Family"}}} 

不管怎樣結果將是空的。

相關問題