Google财经,如何获取JSON数据流?

| 我试图尽早解释这一点,但显然失败了! 因此,例如,如果您有一个Google金融图表打开,则: http://www.google.com/finance?q=INDEXNASDAQ:.IXIC 我想以某种方式在C#中使用(HttpWebRequest)对象,以便可以获取Google发送到页面以更新图形的少量数据。 一位朋友提到这是JSON? 我试图使用下面的代码示例,但是即使我将keep alive属性设置为\'true \',它仍然无法正常工作: http://msdn.microsoft.com/zh-cn/library/system.net.httpwebrequest.keepalive.aspx#Y369     
已邀请:
        您还需要更改将
Connection
属性设置为
Close
的示例行。注释掉这一行(以及将keep-alive属性设置为true):
myHttpWebRequest2.Connection = \"Close\";
您这样做了,您的示例应该运行良好。 关于获取数据并使用
HttpWebRequest
进行处理,您可以这样做。返回的数据不是JSON-看起来像纯文本,我猜Google的javascript正在解析它。 (我尚未检查过Google财经页面上的javascript,但这是我的猜测。) 使用Fiddler,来自以下URL的响应: http://www.google.com/finance/getprices?q=.IXIC&x=INDEXNASDAQ&i=120&p=10m&f=d,c,v,o,h,l&df=cpct&auto=1&ts=1307994768643 看起来像这样:
EXCHANGE%3DINDEXNASDAQ
MARKET_OPEN_MINUTE=570
MARKET_CLOSE_MINUTE=960
INTERVAL=120
COLUMNS=DATE,CLOSE,HIGH,LOW,OPEN,VOLUME
DATA=
TIMEZONE_OFFSET=-240
a1307994120,2641.12,2641.12,2639.96,2640.01,0
1,2638.76,2642.14,2638.76,2641.13,0
2,2638.95,2640.54,2638.74,2638.79,0
3,2639.85,2640.01,2638.08,2638.95,0
4,2640.07,2640.87,2639.31,2639.88,0
5,2640.31,2640.48,2639.42,2640.08,0
6,2641.09,2641.09,2640.3,2640.31,0
有点神秘,但是您可以看到COLUMNS行如何与底部的数据对齐。同样,“ 5”查询字符串参数似乎正在指示要返回的列(d =日期,c =关闭,v =体积,o =打开,h =高,l =低)。 编辑:我应该提到,我使用的URL是从财务图表页面发送的,以获取更新的数据-您可以使用Fiddler之类的工具定期查看此URL。我上面粘贴的响应数据也由MSDN的示例应用程序输出。 但是注释掉该示例中的一行来自MSDN并稍加摆弄Fiddler应该会为您提供数据和线索,您需要解析来自该URL的返回。 我希望这有帮助! PS-我的修改后的MSDN示例中的第一行如下所示:
HttpWebRequest myHttpWebRequest1 = (HttpWebRequest)WebRequest.Create(\"http://www.google.com/finance/getprices?q=.IXIC&x=INDEXNASDAQ&i=120&p=10m&f=d,c,v,o,h,l&df=cpct&auto=1&ts=1307994768643\");
在示例中,我对其他
WebRequest
调用进行了类似的更改……除此之外,在示例中,我没有进行任何其他更改。     

要回复问题请先登录注册