質問
単純なシンボル検索サービスを提供するだけの API はありますか?つまり、会社名を入力するとティッカーシンボルが表示されます。Google Finance の画面スクレイピングだけを試してみましたが、しばらくするとレート制限がかかり、CAPTCHA を入力する必要があります。約2000のティッカーシンボルを一括検索しようとしています。何か案は?
解決
あなたがそうのようにヤフーのシンボル検索を使用することができます:
ここで、のクエリの会社名です。
あなたは見返りにこのような何かを得るでしょう。
YAHOO.Finance.SymbolSuggest.ssCallback(
{
"ResultSet": {
"Query": "ya",
"Result": [
{
"symbol": "YHOO",
"name": "Yahoo! Inc.",
"exch": "NMS",
"type": "S",
"exchDisp": "NASDAQ"
},
{
"symbol": "AUY",
"name": "Yamana Gold, Inc.",
"exch": "NYQ",
"type": "S",
"exchDisp": "NYSE"
},
{
"symbol": "YZC",
"name": "Yanzhou Coal Mining Co. Ltd.",
"exch": "NYQ",
"type": "S",
"exchDisp": "NYSE"
},
{
"symbol": "YRI.TO",
"name": "YAMANA GOLD INC COM NPV",
"exch": "TOR",
"type": "S",
"exchDisp": "Toronto"
},
{
"symbol": "8046.TW",
"name": "NAN YA PRINTED CIR TWD10",
"exch": "TAI",
"type": "S",
"exchDisp": "Taiwan"
},
{
"symbol": "600319.SS",
"name": "WEIFANG YAXING CHE 'A'CNY1",
"exch": "SHH",
"type": "S",
"exchDisp": "Shanghai"
},
{
"symbol": "1991.HK",
"name": "TA YANG GROUP",
"exch": "HKG",
"type": "S",
"exchDisp": "Hong Kong"
},
{
"symbol": "1303.TW",
"name": "NAN YA PLASTIC TWD10",
"exch": "TAI",
"type": "S",
"exchDisp": "Taiwan"
},
{
"symbol": "0294.HK",
"name": "YANGTZEKIANG",
"exch": "HKG",
"type": "S",
"exchDisp": "Hong Kong"
},
{
"symbol": "YAVY",
"name": "Yadkin Valley Financial Corp.",
"exch": "NMS",
"type": "S",
"exchDisp": "NASDAQ"
}
]
}
}
)
JSONとで動作するように非常に簡単ですどちらます。
のハッシュ...誰にも教えていない。の
他のヒント
グーグル・ファイナンスは、あなたが一度、次のURLを使用しての100の株価まで取得してみましょうします:
www.google.com/finance/info?infotype=infoquoteall&q= [ticker1]、[ticker2]、...、[tickern
例
www.google.com/finance/info?infotype=infoquoteall&q=C,JPM,AIG
誰かがここで利用可能なフィールドを解読しています:
ます。http://qsb-mac.googlecode。 COM / SVN /トランク/ヴァーミリオン/モジュール/ StockQuoter / StockQuoter.pyする
現在の価格(「L」)は、リアルタイムで、遅れはヤフー・ファイナンスと同等です。あなたが知っておくべきいくつかの癖があります。株式の一握りは、交換接頭辞が必要です。たとえば、あなたが「BTIM」を照会する場合は、「不正な要求」エラーが発生しますが、「AMEX:BTIMは」動作します。いくつかの銘柄はさえ交換プリフィックスでは動作しません。たとえば、「FTWRD」と照会「NASDAQ:FTWRD」両方グーグル・ファイナンスは、このナスダック株式のための情報を持っているにもかかわらず、「不正な要求」エラーを生成する
。 存在する場合、「エル」のフィールドを、あなたの現在の市場導入前または後の時間の価格を指示します。
HTTP リクエストを送信できるのは、 http://finance.yahoo.com シンボル、名前、引用符、その他あらゆる種類のデータをリクエストします。データは次のように返されます。 .CSV そのため、1 つのクエリで複数のシンボルをリクエストできます。
したがって、次のように送信すると、
http://finance.yahoo.com/d/quotes.csv?s=MSFT+F+ATT&f=sn
次のようなものが返されます:
"MSFT","Microsoft Corp"
"F","FORD MOTOR CO"
"ATT","AT&T"
ここにあります 記事 呼ばれた Yahooデータのダウンロード どれの さまざまなタグが含まれています データをリクエストするために使用されます。
NASDAQサイトのホストは、各証券取引所(NYSE、AMEXおよびNASDAQ)にティッカーシンボルのCSVリストを分離します。あなたは、キャプチャを完了し、CSVダンプを取得する必要があります。
サービスにサインアップしたくない場合は、おそらく取引所自体に戻ると思います。それらのほとんどはまだ CAPTCHA されていません...
次のシンボル検索ページ:
- ニューヨーク証券取引所 にあります http://www.nyse.com/interface/html/SymbolLookup.html
- ナスダック にあります http://www.nasdaq.com/asp/NasdaqSymLookup2.asp?mode=stock
- ロンドン証券取引所 にあります http://www.londonstockexchange.com/en-gb/pricesnews/prices/Trigger/genericsearch.htm
- ASX にあります http://www.asx.com.au/asx/research/codeLookup.do
等...
使用YQL、あなたが心配する必要はありません。これは、ヤフーによるクエリ言語だとあなたはティッカーのために会社の名前を含むすべての在庫データを取得することができます。これは、RESTのAPIだとそれがXMLやJSONを経由して結果を返します。私は自分のサイト上で完全なチュートリアルとソースコードを持って見て取る:にhttp:// WWW .jarloo.com /ヤフー株式シンボルルックアップ/ の
現在、NASDAQのWebサイトでは、公にバルクのリストを含むCSVファイルを提供しています - それは、最初の文字によって分割されます。
http://www.nasdaq.com/スクリーニング/企業・バイ・name.aspx?文字= A&レンダリング= をダウンロードしてください。
GoogleのファイナンスはAPIを持っている - あなたはおそらく主要開発者のために適用する必要がありますが、少なくともあなた自身のスクリーン・スクレイピングの手間を節約したい:<のhref = "http://code.google.com/apis /finance/reference.html」のrel = "nofollowをnoreferrer"> http://code.google.com/apis/finance/reference.html の
最善の策は、おそらく他の検索サービス (まだ画面スクレイピング) のいずれかを使用し、CAPTCHA が必要ないかどうかを確認することです。
最後のものはどの時点でも CAPTCHA を必要とする可能性が最も低いように見えますが、3 つすべてを確認する価値があります。
YQL を使用します。パブリック API から情報を取得するための SQL に似た言語:YQLコンソール(外部リンク)
これにより、作業に適した XML ファイルが得られます。