我们希望使用HTTP请求检查库存的历史数据,并获取JSON。
使用yahoo API,我发现很难不仅清楚地理解HTTP请求字段,而且以获取某一天的数据(不是每天的平均值,而是期间的值某一天),用这个:
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%222012-09-11%22%20and%20endDate%20%3D%20%222014-02-11%22&format=json&diagnostics=true&env=store%3A%2F%2Fdatatables.org%2Falltableswithkeys&callback=
1。没有任何关于如何设置每个字段的说明(也不是在Yahoo控制台上)。
2。您无法设置某一天,并获取其值。
除雅虎之外是否有一个稳定的解决方案现在是免费的? 或者,有人可以帮我理解请求中所有这些垃圾的标志吗?
答案 0 :(得分:17)
< 网址>本身包含数据选择标签:
http://query.yahooapis.com/v1/public/yql?q=
select * from yahoo.finance.historicaldata
where symbol = "AAPL"
and startDate = "2012-09-11"
and endDate = "2014-02-11"
&format=json
&diagnostics=true
&env=store://datatables.org/alltableswithkeys
&callback=
所以最后几个(一对,注意结果中的endDate的解释)天2014-08-10之间... 2014-08-12 on" AAPL":
"results":{
"quote":[
{
"Symbol":"AAPL",
"Date":"2014-08-12",
"Open":"96.04",
"High":"96.88",
"Low":"95.61",
"Close":"95.97",
"Volume":"33795000",
"Adj_Close":"95.97"
},
{
"Symbol":"AAPL",
"Date":"2014-08-11",
"Open":"95.27",
"High":"96.08",
"Low":"94.84",
"Close":"95.99",
"Volume":"36585000",
"Adj_Close":"95.99"
}
]
}
(完整的Y!响应记录)
{
"query":{
"count":2,
"created":"2014-08-14T21:32:41Z",
"lang":"en-EN",
"diagnostics":{
"url":[
{
"execution-start-time":"0",
"execution-stop-time":"1",
"execution-time":"1",
"content":"http://www.datatables.org/yahoo/finance/yahoo.finance.historicaldata.xml"
},
{
"execution-start-time":"5",
"execution-stop-time":"16",
"execution-time":"11",
"content":"http://ichart.finance.yahoo.com/table.csv?g=d&f=2014&e=12&c=2014&b=10&a=7&d=7&s=AAPL"
},
{
"execution-start-time":"18",
"execution-stop-time":"28",
"execution-time":"10",
"content":"http://ichart.finance.yahoo.com/table.csv?g=d&f=2014&e=12&c=2014&b=10&a=7&d=7&s=AAPL"
}
],
"publiclyCallable":"true",
"cache":[
{
"execution-start-time":"4",
"execution-stop-time":"4",
"execution-time":"0",
"method":"GET",
"type":"MEMCACHED",
"content":"91a0664b4e7cf29d40cce123239fec85"
},
{
"execution-start-time":"17",
"execution-stop-time":"18",
"execution-time":"1",
"method":"GET",
"type":"MEMCACHED",
"content":"31dd9633be8581af77baa442f314c921"
}
],
"query":[
{
"execution-start-time":"5",
"execution-stop-time":"17",
"execution-time":"12",
"params":"{url=[http://ichart.finance.yahoo.com/table.csv?g=d&f=2014&e=12&c=2014&b=10&a=7&d=7&s=AAPL]}",
"content":"select * from csv(0,1) where url=@url"
},
{
"execution-start-time":"18",
"execution-stop-time":"28",
"execution-time":"10",
"params":"{columnsNames=[Date,Open,High,Low,Close,Volume,Adj_Close], url=[http://ichart.finance.yahoo.com/table.csv?g=d&f=2014&e=12&c=2014&b=10&a=7&d=7&s=AAPL]}",
"content":"select * from csv(2,0) where url=@url and columns=@columnsNames"
}
],
"javascript":{
"execution-start-time":"3",
"execution-stop-time":"29",
"execution-time":"25",
"instructions-used":"34359",
"table-name":"yahoo.finance.historicaldata"
},
"user-time":"31",
"service-time":"23",
"build-version":"0.2.2666"
},
"results":{
"quote":[
{
"Symbol":"AAPL",
"Date":"2014-08-12",
"Open":"96.04",
"High":"96.88",
"Low":"95.61",
"Close":"95.97",
"Volume":"33795000",
"Adj_Close":"95.97"
},
{
"Symbol":"AAPL",
"Date":"2014-08-11",
"Open":"95.27",
"High":"96.08",
"Low":"94.84",
"Close":"95.99",
"Volume":"36585000",
"Adj_Close":"95.99"
}
]
}
}
}
有人可能会发现,完全成熟的查询处理重新包装源自和后处理的数据源请求:
<强> http://ichart.finance.yahoo.com/table.csv?g=d&f=2014&e=12&c=2014&b=10&a=7&d=7&s=AAPL
强>
得到以下特性:
Date,Open,High,Low,Close,Volume,Adj Close
2014-08-12,96.04,96.88,95.61,95.97,33795000,95.97
2014-08-11,95.27,96.08,94.84,95.99,36585000,95.99
Per aspera Ad Astra ... (...更多GHz,更多TB,更多Gbps,更多...,更多......,摩尔!)