123

Google サービスからの財務データへのアクセスを探しています。

Microsoft の株価データを取得するこの URLを見つけました。

この種の HTTP リクエストで Google が許可する可能性のあるすべてのパラメータは何ですか? 入手できるさまざまな情報をすべて確認したいと思います。

4

13 に答える 13

75

Google Finance Gadget APIは 2012 年 10 月以降正式に廃止されましたが、2014 年 4 月の時点ではまだ有効です。

http://www.google.com/finance/info?q=NASDAQ:GOOG
http://www.google.com/finance/info?q=CURRENCY:GBPUSD
http://finance.google.com/finance/ info?client=ig&q=AAPL,YHOO

チャートも取得できます: https://www.google.com/finance/getchart?q=YELP

アプリケーションが公共の消費を目的としている場合、Google Finance API を使用することは Google の利用規約に違反することに注意してください。

Python の完全なコードについては、google-finance-get-stock-quote-realtimeを確認してください

于 2011-04-15T01:48:00.777 に答える
39

ポートフォリオを管理するためのAPI全体があります。*リンクが削除されました。Googleは、このための開発者APIを提供しなくなりました。

株価を取得するのは少し難しいです。誰かがGoogleスプレッドシートを使用して株価を取得した記事を1つ見つけました。

ガジェットを使用することもできますが、それはあなたが求めているものではないと思います。

あなたが言及したAPIは興味深いものですが、文書化されていないようです(とにかく見つけることができた限り)。

参考までに、過去の価格に関する情報をいくつか示します。

于 2009-02-09T11:25:00.177 に答える
16

このサイトは役に立ちました。

http://benjisimon.blogspot.com/2009/01/truly-simple-stock-api.html

非常にシンプルで便利な yahoo が提供しているように見える API にリンクしています。

例えば:

http://finance.yahoo.com/d/quotes.csv?s=GOOG+AAPL&f=snl1

詳細はこちら:

http://www.gummy-stuff.org/Yahoo-data.htm

于 2010-09-21T16:13:26.767 に答える
4

Yahoo と Google のデータの問題点は、商用目的で使用すると利用規約に違反することです。あなたのサイト/アプリがまだ小さいときは、大したことではありませんが、少し成長するとすぐに取引所から離れ始めます。ライセンスされたソリューションの例は、FinancialContent: http://www.financialcontent.com/json.php またはXignite です。

于 2012-06-01T17:30:52.347 に答える
3

おそらく興味深いことに、Google Finance API のドキュメントには、JavaScript を介してさまざまなパラメーターにアクセスする方法を詳しく説明したセクションが含まれています。

JavaScript API は、上記の JSON リクエストのラッパーである可能性があると思います...おそらく、どの HTTP リクエストが送信されているかを確認できます。

于 2009-02-09T11:28:16.520 に答える
3

これは Google のアクティブな API ではなくなりました。Xignite を試すことができますが、有料です: http://www.xignite.com

于 2013-04-13T16:49:45.817 に答える
3

巨人の肩の上に構築...これは、Googleの現在のすべての株式データをローカルのBashシェル変数に変換するために私が書いたワンライナーです。

stock=$1 

# Fetch from Google Finance API, put into local variables
eval $(curl -s "http://www.google.com/ig/api?stock=$stock"|sed 's/</\n</g' |sed '/data=/!d; s/ data=/=/g; s/\/>/; /g; s/</GF_/g' |tee /tmp/stockprice.tmp.log)

echo "$stock,$(date +%Y-%m-%d),$GF_open,$GF_high,$GF_low,$GF_last,$GF_volume"

そうすれば、$GF_last $GF_open $GF_volume などの変数をすぐに利用できるようになります。env を実行するか、/tmp/stockprice.tmp.log 内を参照してください

http://www.google.com/ig/api?stock=TVIX&output=csv by itself returns:

<?xml version="1.0"?>
<xml_api_reply version="1">
<finance module_id="0" tab_id="0" mobile_row="0" mobile_zipped="1" row="0" section="0" >
<symbol data="TVIX"/>
<pretty_symbol data="TVIX"/>
<symbol_lookup_url data="/finance?client=ig&amp;q=TVIX"/>
<company data="VelocityShares Daily 2x VIX Short Term ETN"/>
<exchange data="AMEX"/>
<exchange_timezone data="ET"/>
<exchange_utc_offset data="+05:00"/>
<exchange_closing data="960"/>
<divisor data="2"/>
<currency data="USD"/>
<last data="57.45"/>
<high data="59.70"/>
<low data="56.85"/>

etc.

したがって、stock="FBM" /tmp/stockprice.tmp.log (および環境) には次のものが含まれます。

GF_symbol="FBM"; 
GF_pretty_symbol="FBM"; 
GF_symbol_lookup_url="/finance?client=ig&amp;q=FBM"; 
GF_company="Focus Morningstar Basic Materials Index ETF"; 
GF_exchange="NYSEARCA"; 
GF_exchange_timezone=""; 
GF_exchange_utc_offset=""; 
GF_exchange_closing=""; 
GF_divisor="2"; 
GF_currency="USD"; 
GF_last="22.82"; 
GF_high="22.82"; 
GF_low="22.82"; 
GF_volume="100"; 
GF_avg_volume=""; 
GF_market_cap="4.56"; 
GF_open="22.82"; 
GF_y_close="22.80"; 
GF_change="+0.02"; 
GF_perc_change="0.09"; 
GF_delay="0"; 
GF_trade_timestamp="8 hours ago"; 
GF_trade_date_utc="20120228"; 
GF_trade_time_utc="184541"; 
GF_current_date_utc="20120229"; 
GF_current_time_utc="033534"; 
GF_symbol_url="/finance?client=ig&amp;q=FBM"; 
GF_chart_url="/finance/chart?q=NYSEARCA:FBM&amp;tlf=12"; 
GF_disclaimer_url="/help/stock_disclaimer.html"; 
GF_ecn_url=""; 
GF_isld_last=""; 
GF_isld_trade_date_utc=""; 
GF_isld_trade_time_utc=""; 
GF_brut_last=""; 
GF_brut_trade_date_utc=""; 
GF_brut_trade_time_utc=""; 
GF_daylight_savings="false"; 
于 2011-12-15T15:50:31.857 に答える
2

あなたが説明した最も簡単な方法は、このリンクです。これは「ダウジョーンズ工業株平均」用です

リンク 2は「NASDAQ-100」用です

NASDAQリンク 3に関連するすべての情報

私はこれがそれであるべきだと思います。それ以外の場合は、Microsoft と同じように JSON 表記で同じものが必要です

この古い投稿を参照してください。これが役立つと思います。

アップデート:

ボリュームの詳細やその他の詳細を知るために、IE オブジェクトを使用してリンクから詳細を取得し、特定の ID のコンテンツを警告する vbscript を作成しました (.vbs ファイルを作成して実行します。

Set IE = CreateObject("InternetExplorer.Application")
while IE.readyState = 4: WScript.Sleep 10: wend
IE.Navigate "https://www.google.com/finance?q=INDEXNASDAQ%3ANDX&sq=NASDAQ&sp=2&ei=B3UoUsiIH5DIlgPEsQE"
IE.visible = true
while IE.readyState = 4: WScript.Sleep 10: wend
dim ht
ht= IE.document.getElementById("market-data-div").innerText
msgBox ht
IE.quit

これは、このようなページからの値を警告します

3,124.54 0.00 (0.00%)
Sep 4 - Close
INDEXNASDAQ real-time data - Disclaimer
Range       -
52 week 2,494.38 - 3,149.24
Open        -
Vol.    0.00

私はこれが役立つと確信しています..

于 2013-08-23T12:49:01.223 に答える
2

使用できる例を次に示します。Google Finance はまだ入手していませんが、Yahoo の例を次に示します。HTMLAgilityPackが必要になります。これは素晴らしいです。ハッピー シンボル ハンティング。

を使用してプロシージャを呼び出しますYahooStockRequest(string Symbols);

ここで、Symbols = コンマで区切られた記号の文字列、または 1 つの記号のみ

public string YahooStockRequest(string Symbols,bool UseYahoo=true)
        {
            {
                string StockQuoteUrl = string.Empty;

                try
                {
                    // Use Yahoo finance service to download stock data from Yahoo
                    if (UseYahoo)
                    {
                        string YahooSymbolString = Symbols.Replace(",","+");
                        StockQuoteUrl = @"http://finance.yahoo.com/q?s=" + YahooSymbolString + "&ql=1";
                    }
                    else
                    {
                        //Going to Put Google Finance here when I Figure it out.
                    }

                    // Initialize a new WebRequest.
                    HttpWebRequest webreq = (HttpWebRequest)WebRequest.Create(StockQuoteUrl);
                    // Get the response from the Internet resource.
                    HttpWebResponse webresp = (HttpWebResponse)webreq.GetResponse();
                    // Read the body of the response from the server.

                    HtmlAgilityPack.HtmlDocument doc = new HtmlAgilityPack.HtmlDocument();
                    string pageSource;
                    using (StreamReader sr = new StreamReader(webresp.GetResponseStream()))
                    {
                        pageSource = sr.ReadToEnd();
                    }
                    doc.LoadHtml(pageSource.ToString());
                    if (UseYahoo)
                    {
                        string Results=string.Empty;
                        //loop through each Symbol that you provided with a "," delimiter
                        foreach (string SplitSymbol in Symbols.Split(new char[] { ',' }))
                        {
                            Results+=SplitSymbol + " : " + doc.GetElementbyId("yfs_l10_" + SplitSymbol).InnerText + Environment.NewLine;
                        }
                        return (Results);
                    }
                    else
                    {
                        return (doc.GetElementbyId("ref_14135_l").InnerText);
                    }

                }
                catch (WebException Webex)
                {
                    return("SYSTEM ERROR DOWNLOADING SYMBOL: " + Webex.ToString());

                }

            }
        }
于 2011-03-04T16:26:10.833 に答える
0

Google の Financial Data API を使用してチャート データを検索するには、検索用語を探すように Google にアクセスし、検索エンジンに「finance」と入力すると、Google Finance へのリンクが表示されます。Google 金融検索エンジンでティッカー名を金融データ API エンジンに入力すると、結果が表示されます。ただし、すべての Google 財務チャートは 15 分遅れており、現在の価格ではなくティッカーの過去の履歴をよりよく理解するために使用できるのはせいぜい 15 分であることに注意してください。

遅延チャート情報の解決策は、リアルタイムの財務データ API を取得することです。その一例は、リアルタイムの相場情報を備えた barchartondemand インターフェイスと、探している正確なチャートを簡単に見つけられるようにするその他の詳細な機能です。完全にカスタマイズ可能な機能と、必要な正確な取引情報のための特定のプログラミング ツールを備えた barchartondemand のツールは、Google の財務を大幅に上回っています。

于 2015-03-23T06:29:31.343 に答える