谷歌财务api从2017年9月6日起不工作

时间:2017-09-07 07:48:20

标签: javascript yahoo-finance stockquotes google-finance-api google-javascript-api

我使用google finance api获取股票报价并在我的网站上显示内容。从2017年9月6日起,这突然停止了工作。我以前获得股票报价的网址是https://finance.google.com/finance/info?client=ig&q=SYMBOL&callback=

以前,我使用雅虎财务api并且它不一致。所以,我转而使用google finance api。

你能帮帮我吗?

谢谢, 拉姆

8 个答案:

答案 0 :(得分:6)

此网址有效。我认为只是将网址从www.google.com更改为finance.google.com

https://finance.google.com/finance/getprices?q=ACC&x=NSE&p=15&i=300&f=d,c,o,h,l,v

答案 1 :(得分:2)

最后我开始使用雅虎财经。数据不是直播,有20分钟的延迟。我认为这对面临像我这样的问题的人会有所帮助。

yahoo api url是https://query.yahooapis.com/v1/public/yql?q=select%20 *%20from%20yahoo.finance.quotes%20 where%20symbol%3D%22MSFT%22& env = store://datatables.org/alltableswithkeys

这将以xml格式返回股票数据。您可以解析xml以获取所需的字段。

谢谢, 拉姆

答案 2 :(得分:1)

我们有同样的问题&我们在下面找到了Microsoft Bing API for Stock Markets提供的替代API。 API下面以JSON格式返回股票数据。

https://finance.services.appex.bing.com/Market.svc/ChartAndQuotes?symbols=139.1.500209.BOM&chartType=1d&isETF=false&iseod=False&lang=en-IN&isCS=false&isVol=true

谢谢,Shyamal

答案 3 :(得分:0)

昨天遇到这个问题时,我很想找到这样的帖子!

就像Salketer所说,Google财经API在2012年正式“关闭”。但是,出于某种原因它仍然工作到2017年9月5日。我建立了一个程序来管理我的投资组合,使用GF API获取实时报价美股。它于2017年9月6日停止工作,所以我假设“秘密提供”API背后的工程师现在“实际上”停止了服务。

我找到了另一种https://www.alphavantage.co/documentation/,这似乎是免费实时美国股票报价的最佳选择。他们只需要您的电子邮件,没有别的。它有点慢,因为它还没有多符号查询,但乞丐不能选择。

答案 4 :(得分:0)

在Verizon今年5月收购雅虎并结束免费API服务后,我在使用雅虎财务后很长一段时间不得不转用Google财务。我回去重新研究了这个问题,有人创建了一个新的雅虎金融API调用,它与新的雅虎API一起使用。 https://stackoverflow.com/a/44092983/8316350

可以在此处找到python源代码和安装程序:https://github.com/c0redumb/yahoo_quote_download

参数是(ticker,start_date和end_date),其中日期是yyyymmdd格式并返回unicode字符串列表。以下测试将下载几周的数据,然后仅提取调整后的收盘价以返回名为adj_close的列表:

from yahoo_quote_download import yqd
import string
quote = yqd.load_yahoo_quote('AAPL', '20170515', '20170530')
print(quote[0]) # print the column headers
print(quote[1]) # print a couple rows of data
print(quote[2]) # just to make sure it looks right
quote.pop()  # get rid of blank string at end of data
quote = [row.encode("utf-8") for row in quote]  # convert to byte data
quote = [string.split(row, ',') for row in quote] # split the string to create a list of lists
adj_close = [row[5] for row in quote]  # grab only the 'adj close' data and put into a new list
print(adj_close)

返回:

Date,Open,High,Low,Close,Adj Close,Volume
2017-05-15,156.009995,156.649994,155.050003,155.699997,155.090958,26009700
2017-05-16,155.940002,156.059998,154.720001,155.470001,154.861862,20048500
['Adj Close', '155.090958', '154.861862', '149.662277', '151.943314', '152.461288', '153.387650', '153.198395', '152.740189', '153.268112', '153.009140', '153.068893']

答案 5 :(得分:0)

在我获得?info链接之前,我正在手动阅读每个股票的Google财经页面。由于这不再适用,我将回到网页。

这是我的python片段:

def get_market_price(symbol):
    print "Getting market price: " + symbol

    base_url = 'http://finance.google.com/finance?q='

    retries = 2

    while True:
        try:
            response = urllib2.urlopen(base_url + symbol)
            html = response.read()
        except Exception, msg:
            if retries > 0:
                retries -= 1
            else:
                raise Exception("Error getting market price!")

        soup = BeautifulSoup(html, 'lxml')

        try:
            price_change = soup.find("div", { "class": "id-price-change" })
            price_change = price_change.find("span").find_all("span")
            price_change = [x.string for x in price_change]

            price = soup.find_all("span", id=re.compile('^ref_.*_l$'))[0].string
            price = str(unicode(price).encode('ascii', 'ignore')).strip().replace(",", "")

            return (price, price_change)
        except Exception as e:
            if retries > 0:
                retries -= 1
            else:
                raise Exception("Can't get current rate for scrip: " + symbol)

示例:

Getting market price: NSE:CIPLA
('558.55', [u'+4.70', u'(0.85%)'])

答案 6 :(得分:0)

您只需解析此请求的结果:

https://finance.google.com/finance/getprices?q=GOOG&x=NASD&p=1d&i=60&f=d,c,o,h,l,v

(在纳斯达克,一天,频率60秒,日期,关闭,高,低,开放,体积)

答案 7 :(得分:0)

我在PHP中遇到了同样的问题。

我将网址https://www.google.com/finance/converter?a= $ amount& from = $ from_Currency& to替换为$ $ to_Currency

https://finance.google.com/finance/converter?a=1&from= $ from_Currency&安培;要= $ to_Currency

对我来说很好。