Yahoo Query Language(YQL)的任何.NET示例?

时间:2011-06-06 12:18:19

标签: c# .net visual-studio-2010 yql

我想对Yahoo Query Language (YQL)做一些简单的调用。有人在.NET中实现过这个吗?

以下是我想用.NET制作的查询:

select MarketCapitalization 
from yahoo.finance.quotes 
where symbol 
  in ("YHOO","AAPL","GOOG","MSFT","unknown")

更新

一切都在100%工作,谢谢@fernaramburu。

4 个答案:

答案 0 :(得分:8)

是。实际上有两个很好的例子,因为我刚刚在几个小时前测试过......

http://jarloo.com/get-yahoo-finance-api-data-via-yql/

http://jarloo.com/code/get-historical-stock-data/

希望这有帮助!它对我帮助很大!

答案 1 :(得分:6)

不是一个例子,但完整的.NET库是Yahoo! Finance Managed

使用lib的说明可以找到here

答案 2 :(得分:3)

  

要访问YQL Web服务,Web应用程序可以调用HTTP GET,将YQL语句作为URL参数传递...

然后WebRequest将成为你的朋友。 您可以找到大量有关如何在网络上对Web服务进行GET调用的信息。

或者您在谈论LINQ提供商?

答案 3 :(得分:3)

这里有一个完整的例子(可下载的.NET源代码):

http://andy.edinborough.org/C-OAuth-Implementation/

此示例实现了OAuth,让您可以利用每天100,000个请求和10,000个请求/小时的更高使用率限制。

要创建OAuth密钥,请参阅So, you want to use some Yahoo! APIs

如果没有小的改动,代码将无效:用“show tables”替换披萨的查询。

<强>更新

如果不将以下字符串附加到查询中,则YQL无效:

&env=http%3A%2F%2Fdatatables.org%2Falltables.env

完整的查询字符串是:

http://query.yahooapis.com/v1/public/yql?q=select%20*%20from%20yahoo.finance.quotes%20where%20symbol%20in%20%28%22MSFT%22%29&diagnostics=true&env=http%3A%2F%2Fdatatables.org%2Falltables.env

从YQL查询中获取完整查询URL:

  • 浏览至Yahoo YQL query console
  • 创建一个查询,例如select * from yahoo.finance.quotes where symbol in ("MSFT")
  • 在页面的基础上,“休息查询”下有一个部分。复制这个。此URL可在任何浏览器(或使用YQL的任何桌面应用程序)中使用。
  • 修改C# source,将字符串&env=http%3A%2F%2Fdatatables.org%2Falltables.env附加到两个重载的QueryYahoo函数中的网址。