WebClient标头
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了WebClient标头相关的知识,希望对你有一定的参考价值。
我正在使用WebClient抓取Google搜索。我一直在收到“无法到达此页面”直到我更改了User-Agent标头:
string page = string.Format("https://www.google.com/search?q={0}&hl=en", my_stocks[order].Symbole+" stock");
WebClient client = new WebClient ();
client.Headers["User-Agent"] = "Mozilla/4.0 (compatible; MSIE 7.0; Windows NT 6.0)";
string r = client.DownloadString(page);
但是html呈现的方式与我在Chrome浏览器中搜索相同内容时不同。所以我尝试在https://www.whatismybrowser.com/detect/what-is-my-user-agent中使用chrome时将标头更改为相同的标题但再次获得“无法访问此页面”。我在这里想念什么?
答案
我的2美分...由于单页应用程序的涌入,Web抓取不再是以前的样子,因为页面通常不再在服务器端呈现。
[很有可能使用异步REST查询而不是服务器端呈现的页面来提供Google搜索。
[进行Google搜索时,请在Chrome标签中查看网络跟踪,您可能会看到许多不同的网络请求。
我建议您寻找一个更具体的API来处理您要发出的请求类型。
以上是关于WebClient标头的主要内容,如果未能解决你的问题,请参考以下文章
WebClient 未向 Windows Phone 中的 Web 服务发送授权标头