【问题标题】:YQL finance data JSON format for use with highcharts用于 highcharts 的 YQL 财务数据 JSON 格式
【发布时间】:2013-02-28 17:08:29
【问题描述】:

我正在使用 jQuery 和 highcharts.js 在我的网页上构建一个单一的折线图,显示用户请求的任何公司的历史财务数据。我一直在玩 YQL 并使用这个语句来检索一些 JSON 格式的引号:

select * from yahoo.finance.historicaldata where symbol = "AAPL" and startDate = "2013-02-01" and endDate = "2013-02-25"

这是一个指向带有我的查询的 YQL 控制台的链接:

http://developer.yahoo.com/yql/console/?q=show%20tables&env=store://datatables.org/alltableswithkeys#h=select%20*%20from%20yahoo.finance.historicaldata%20where%20symbol%20%3D%20%22AAPL%22%20and%20startDate%20%3D%20%222013-02-01%22%20and% 20endDate%20%3D%20%222013-02-25%22

它返回一堆关于执行开始时间和执行结束时间的信息,然后最后它给了我后面的引号:

"results": {
"quote": [
{
 "date": "2013-02-25",
 "Date": "2013-02-25",
 "Open": "453.85",
 "High": "455.12",
 "Low": "442.57",
 "Close": "442.80",
 "Volume": "13306400",
 "Adj_Close": "442.80"
},

我无法从结果中提取收盘价信息,我尝试了以下代码但遇到了问题。

    $.getJSON('http://query.yahooapis.com/v1/public/yql?q=select%20*%20from%20yahoo.finance.historicaldata%20where%20symbol%20%3D%20%22AAPL%22%20and%20startDate%20%3D%20%222013-02-01%22%20and%20endDate%20%3D%20%222013-02-25%22&format=json&diagnostics=true&env=store%3A%2F%2Fdatatables.org%2Falltableswithkeys&callback=cbfunc', function(data){

    console.log(data);

    var close = data.query.results.quote.close;
    document.write(close);

})

由于我是 jquery、yql 和 json 的新手,谁能告诉我哪里出错了。

谢谢

【问题讨论】:

    标签: javascript ajax json highcharts yql


    【解决方案1】:

    在我看来,返回的报价对象是一个数组? 你试过了吗

    var close = data.query.results.quote[0].Close;
    document.write(close);
    

    如果没有,请尝试在该行设置断点并检查数据对象(例如在 firebug 中)。

    【讨论】:

    • 我尝试过使用 firebug,但仍然无法正常工作。它表明:查询:对象 {count=16} 结果:对象 {quote=[16]} 引用 0:对象 { date="2013-02-25", Date="2013-02-25", Open= "453.85", more...} 这对所有 16 个引号都是一样的
    猜你喜欢
    • 1970-01-01
    • 2015-07-11
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2017-12-11
    • 1970-01-01
    相关资源
    最近更新 更多