处理雅虎财务api http错误

时间:2016-11-07 22:52:23

标签: api http processing yahoo-finance

我有以下代码从yahoo finance API获取一些数据:

JSONObject data;
String q = "select * from yahoo.finance.quote where symbol in (\"TSLA\",\"NFLX\")";

void setup(){
  data = loadJSONObject("https://query.yahooapis.com/v1/public/yql?" + q);
  println(data);
}

但是当我运行此代码时,我收到以下错误:

来自yahoo.finance.quote的

https://query.yahooapis.com/v1/public/yql?select *,其中(“TSLA”,“NFLX”)中的符号不​​存在或无法读取

这是否意味着此api已折旧?或者我的网址是否错误?有人可以帮我这个吗?雅虎开发者网站非常不清楚:(

提前谢谢!!!!

1 个答案:

答案 0 :(得分:0)

查看代码中的网址:

https://query.yahooapis.com/v1/public/yql?select%20*%20from%20yahoo.finance.quote%20where%20symbol%20in%20(%22TSLA%22,%22NFLX%22)

当我访问它时,我收到此错误:

<error xmlns:yahoo="http://www.yahooapis.com/v1/base.rng" yahoo:lang="en-US">
<description>You must specify a yql statement (q=) to execute</description>
</error>

这告诉我在yql语句之前需要q=。 所以我添加它:

https://query.yahooapis.com/v1/public/yql?q=select%20*%20from%20yahoo.finance.quote%20where%20symbol%20in%20(%22TSLA%22,%22NFLX%22

当我访问该网址时,我收到此错误:

<error xmlns:yahoo="http://www.yahooapis.com/v1/base.rng" yahoo:lang="en-US">
<description>No definition found for Table yahoo.finance.quote</description>
</error>

我用Google搜索了这个错误,发现了很多资源,包括这一个:YQL - No definition found for Table

根据该答案,您需要执行一些额外设置才能访问yahoo.finance.quote表。