我在使用WebClient和C#从Playstation页面获取html代码时遇到问题:
using (WebClient webCl = new WebClient())
{
var url = "https://www.playstation.com/en-us/games/nioh-ps4/";
var homeHtml = Encoding.UTF8.GetString(webCl.DownloadData(url));
if (string.IsNullOrWhiteSpace(homeHtml))
{
return ...;
}
return ...;
}
在线:Encoding.UTF8.GetString(webCl.DownloadData(url));
我遇到错误:
请求被中止:连接意外关闭
为什么?我在做什么错了?
答案 0 :(得分:1)
一种可能性是您的防火墙不允许您的应用程序通过。调整您的安全设置,以允许该应用通过,然后重试。
另一种可能性是,如果您爬网或连接速度过快,服务器将限制您的连接。通过以非常有限的价格与其他服务器(例如google.com)一起运行来验证代码。
其他可能性包括服务器不喜欢的其他功能。例如,您可能需要添加用户代理标头:
request.UserAgent = "Mozilla/5.0 (Windows NT 6.1; WOW64) AppleWebKit/535.2 (KHTML, like Gecko) Chrome/15.0.874.121 Safari/535.2";
或者您可能需要玩Cookie。
您可以使用Fiddler比较浏览器和应用程序请求之间的差异并进行相应调整。
答案 1 :(得分:0)
这是由于URL访问问题引起的。可能由于多种情况而发生
尝试ping www.playstation.com。您应该得到答复。