由买买提看人间百态

boards

本页内容为未名空间相应帖子的节选和存档,一周内的贴子最多显示50字,超过一周显示500字 访问原贴
DotNet版 - webclient从yahoo finance读取页面的问题
相关主题
IE8下navigator.appVersion的值是什么? (转载)请牛人帮忙
LinqPad is handyC# DateTime to Oracle Date
WebClient for multi-connections?max-width: 1200px;
WebClient is not thread-safe!C# on JVM?
C# HTTP request header parser?.NET 入门系列(1)--什么是.NET
internet programming in C#Managed Code vs. Unmanaged Code
cross browser/platform .net!?c#有没有第三方地免费解释器?
Converting a CSV file to XML using LinQfrom C++ to C#
相关话题的讨论汇总
话题: webclient话题: yahoo话题: quote话题: 读取话题: 页面
进入DotNet版参与讨论
1 (共1页)
d******8
发帖数: 2191
1
WebClient client = new WebClient();
client.Headers.Add("user-agent", "Mozilla/4.0 (compatible; MSIE 6.0; Windows
NT 5.2; .NET CLR 1.0.3705;)");
Stream strm=client.OpenRead("http://finance.yahoo.com/q?s=goog");
读取的网页是yahoo的error页面
To get a quote, enter a company name or stock symbol in the quote box above.
而控制台下直接运行 wget -O - http://finance.yahoo.com/q?s=goog没有问题,请问如何避开被yahoo发现是程序运行的webclient呢?
a9
发帖数: 21638
2
抓一下包看看发的内容是什么。

Windows
above.

【在 d******8 的大作中提到】
: WebClient client = new WebClient();
: client.Headers.Add("user-agent", "Mozilla/4.0 (compatible; MSIE 6.0; Windows
: NT 5.2; .NET CLR 1.0.3705;)");
: Stream strm=client.OpenRead("http://finance.yahoo.com/q?s=goog");
: 读取的网页是yahoo的error页面
: To get a quote, enter a company name or stock symbol in the quote box above.
: 而控制台下直接运行 wget -O - http://finance.yahoo.com/q?s=goog没有问题,请问如何避开被yahoo发现是程序运行的webclient呢?

d******8
发帖数: 2191
3
谢谢,怎么抓包呢?

【在 a9 的大作中提到】
: 抓一下包看看发的内容是什么。
:
: Windows
: above.

a9
发帖数: 21638
4
wireshark?

【在 d******8 的大作中提到】
: 谢谢,怎么抓包呢?
s***o
发帖数: 2191
5
通过queryParam 之类的method call传入s=goog,而不是直接包括在URI中,可能会解
决你的问题
d******8
发帖数: 2191
6
查了下,不知道这个怎么用。
自己用xampp做了个代理中转了下就可以了。
用php和command line下载页面(包含s=goog)都没问题,但是c#就不行,不知道yahoo
能读到哪些信息做出了warning的决定。

【在 s***o 的大作中提到】
: 通过queryParam 之类的method call传入s=goog,而不是直接包括在URI中,可能会解
: 决你的问题

s***o
发帖数: 2191
7
感觉更像是s=goog没有传过去而不是因为server side发现更多其他信息。
queryParam是jax-rs里的。你用的Web client对query string有没有特殊的处理方式?

yahoo

【在 d******8 的大作中提到】
: 查了下,不知道这个怎么用。
: 自己用xampp做了个代理中转了下就可以了。
: 用php和command line下载页面(包含s=goog)都没问题,但是c#就不行,不知道yahoo
: 能读到哪些信息做出了warning的决定。

N********n
发帖数: 8363
8
No need to go through a quote page. You can get the quote data
from YAHOO CSV query.
http://www.gummy-stuff.org/Yahoo-data.htm
d******8
发帖数: 2191
9
quotes are delayed by 15min.

【在 N********n 的大作中提到】
: No need to go through a quote page. You can get the quote data
: from YAHOO CSV query.
: http://www.gummy-stuff.org/Yahoo-data.htm

d******8
发帖数: 2191
10
没有特殊处理。应该不是s=goog没有传过去,因为我local传递没问题。
btw, 昨天试了下wget -O - www.nasdaq.com,直接给了403拒绝。我觉得,yahoo的服
务器也能够检测client。就是不知道.net能不能欺骗yahoo/nasdaq。

【在 s***o 的大作中提到】
: 感觉更像是s=goog没有传过去而不是因为server side发现更多其他信息。
: queryParam是jax-rs里的。你用的Web client对query string有没有特殊的处理方式?
:
: yahoo

N********n
发帖数: 8363
11

Quote pages are probably delayed too. True real-time data always
charges a fee.

【在 d******8 的大作中提到】
: quotes are delayed by 15min.
1 (共1页)
进入DotNet版参与讨论
相关主题
from C++ to C#C# HTTP request header parser?
有谁来谈谈yukon么?internet programming in C#
.NET前景的障碍cross browser/platform .net!?
用DLL会快些吗?Converting a CSV file to XML using LinQ
IE8下navigator.appVersion的值是什么? (转载)请牛人帮忙
LinqPad is handyC# DateTime to Oracle Date
WebClient for multi-connections?max-width: 1200px;
WebClient is not thread-safe!C# on JVM?
相关话题的讨论汇总
话题: webclient话题: yahoo话题: quote话题: 读取话题: 页面