【问题标题】:How to fetch data from Google Finance API post 6th September 2017 for multiple stocks如何从 2017 年 9 月 6 日发布的 Google Finance API 获取多只股票的数据
【发布时间】:2017-09-11 13:20:17
【问题描述】:

9 月 6 日发布

我正在做一个项目,我想从 Google Finance API 显示多只股票的实时价格,其中包含changechange in %volumeTimestamp of data等信息。

ROI/EROANet-profit-margin 这样的比率很少——这完全是可选的。 (如果可用,那么就很神奇,如果没有,那么仍然不是什么大问题。)

就效率而言,为每只股票发送一个请求是荒谬的。

我尝试了多种方法,例如

https://finance.google.com/finance?q=NSE:ABAN,NSE:ABB&output=json

这给了我股票的基本信息,但不是实时价格。

https://finance.google.com/finance?q=NSE:ABAN,ABB&output=json

这个查询只是承认存在名为 ABAN 的股票。

我对 NSE(印度国家证券交易所)的数据感兴趣。 我已经为这件事经历了 2-3 个线程,但无法获得太多信息, 雅虎也停止了对印度市场的支持,因此该选项也被排除在列表之外。

这个项目是学术性的,所以如果可能的话,我想要一个免费的数据来源。

对此的任何帮助将不胜感激。

【问题讨论】:

    标签: python api google-finance stockquotes


    【解决方案1】:

    更新:谷歌杀了它。

    您可以使用以下技巧:

    1. 查询您需要的股票的 ID(您可以这样做一次,ID 似乎是永久的):

    https://finance.google.com/finance?output=json&q=,,...(每个查询最多 14 只股票)

    输出将包含您应该收集的“id”字段。 示例:

    {...
    "searchresults" : [
    {
    "title" : "Aban Offshore Ltd",
    "id" : "3302534",
    "ticker" : "ABAN",
    "exchange" : "NSE",
    ...
    } , {
    "title" : "ABB India Ltd",
    "id" : "5296497",
    "ticker" : "ABB",
    "exchange" : "NSE",
    ...
    }]
    ...
    
    1. 使用 ID 查询信息:

    https://finance.google.com/finance/data?dp=mra&output=json&catid=all&cid=3302534,5296497,...(不知道限制,但超过 14 个 ID)

    输出将包含有关每个 ID 的信息

    {...,company:{related:{cols:[...],
    rows:[
    {id:"3302534",
    values:["3302534","ABAN","Aban Offshore Ltd","ABAN","NSE","INR","178.35","+0.40","chg","0.22","","-184.19","","0.39","0.59","10.41B","","0.00","","0.63","63.15","74.78","448.77","531.41","-5.34","-32.89","-6.46","1.40","-59.21","93.14","52.77","12.88","1,275","17,579.20","-10,408.33","9,275.71"]},
    {id:"5296497",
    values:["5296497","ABB","ABB India Ltd","ABB","NSE","INR","1,365.20","+24.00","chg","1.79","","17.88","76.36","8.66","3.09","289.56B","","4.00","0.30","1.56","7.76","7.76","18.28","18.28","4.95","11.90","9.86","1.43","4.08","32.94","7.56","5.92","5,603","91,840.50","3,744.70","6,945.30"]}],
    visible_cols:[...]}}}
    

    这些列是:ID、Ticker、Name、Ticker、Exchange、Currency、Price、Change、Unknown、Change%、Unknown、EPS、PE、PB、PS、Cap、EntValue、Div、DivYield、CurrRatio、LtDebtToAssets、 TotalDebtToAssets、LtDebtToEquity、TotalDebtToEquity、ReturnOnAvgAssets、ReturnOnAvgEquity、ReturnOnAvgInvestment、Beta、NetProfitMargin、GrossMargin、EBITDMargin、OperatingMargin、员工、收入、净收入、EBITDA

    很遗憾,没有延长的交易时段价格或任何最后交易时间。 如果您知道如何获取股票的最后交易时间,请告诉我。

    【讨论】:

    • 首先非常感谢您的详细描述,我只是想确认您为这些列发布的顺序(第二种方法)是否正确?还有有什么方法可以验证吗?
    • 这些列是通过将 json 中的数据与财务页面上的数据进行比较而得出的。我希望有更可靠的来源,但到目前为止我还没有找到更好的来源。
    • 现在已经搬家了!
    • 它不起作用,给出 200 响应和一些 HTML 内容,而不是 JSON。
    • 不幸的是,几乎所有的 Google Finance API 都早已死去。
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2021-03-02
    • 2011-01-17
    • 1970-01-01
    相关资源
    最近更新 更多