WebClient 无法在一个网站上运行
WebClient won't work on one website
我正在尝试将网站 (yellowpages) 的 html 代码下载到我的 C# winforms 应用程序中的字符串。
我不断从一个网站收到同样的错误。
所有其他网站都有效,我尝试过通用的网站,例如:http://www.google.co.za and it works but when I try to use http://www.yellowpages.co.za 它抛出:
An unhandled exception of type 'System.Net.WebException' occurred in System.dll Additional information: The remote server returned an
error: (500) Internal Server Error.
我不知道为什么只有这个网站抛出这个错误。
请在下面找到我的代码
private string getPage()
{
using (WebClient client = new WebClient())
{
return client.DownloadString("http://www.yellowpages.co.za/");
}
}
添加 user-agent
header 解决了这个问题。
private string getPage()
{
using (WebClient client = new WebClient())
{
client.Headers.Add("user-agent", "foo");
return client.DownloadString("http://www.yellowpages.co.za/");
}
}
就是说,我会为 user-agent
输入一个有效值,而不是像 foo
这样的占位符。有关 user-agent 的详细信息,请参阅 rfc2616。
我正在尝试将网站 (yellowpages) 的 html 代码下载到我的 C# winforms 应用程序中的字符串。
我不断从一个网站收到同样的错误。 所有其他网站都有效,我尝试过通用的网站,例如:http://www.google.co.za and it works but when I try to use http://www.yellowpages.co.za 它抛出:
An unhandled exception of type 'System.Net.WebException' occurred in System.dll Additional information: The remote server returned an error: (500) Internal Server Error.
我不知道为什么只有这个网站抛出这个错误。
请在下面找到我的代码
private string getPage()
{
using (WebClient client = new WebClient())
{
return client.DownloadString("http://www.yellowpages.co.za/");
}
}
添加 user-agent
header 解决了这个问题。
private string getPage()
{
using (WebClient client = new WebClient())
{
client.Headers.Add("user-agent", "foo");
return client.DownloadString("http://www.yellowpages.co.za/");
}
}
就是说,我会为 user-agent
输入一个有效值,而不是像 foo
这样的占位符。有关 user-agent 的详细信息,请参阅 rfc2616。