c# - 从返回 403 forbidden 的网站解析

标签 c# parsing xaml windows-8 store

实际上,我正在编写一个 Windows 商店应用程序,我尝试解析一个网站,但不需要返回请求中有错误的响应。 我有一个快照,也许可以帮助我们找到解决方案 此代码适用于我尝试过的所有网站,但无法正常工作。

我使用这个源代码:

private async void parsingActualites()
    {
        HttpClient http = new System.Net.Http.HttpClient();
        HttpClientHandler newClientHandler = new HttpClientHandler();
        System.Net.Http.HttpClient client = new System.Net.Http.HttpClient();
        ***var reponse = await http.GetByteArrayAsync("http://.........../");***
        str3 = Encoding.UTF8.GetString(reponse, 0, reponse.Length - 1);
        var strdecodet = System.Net.WebUtility.HtmlDecode(str3);
        HtmlAgilityPack.HtmlDocument document2 = new HtmlAgilityPack.HtmlDocument();
        document2.LoadHtml(str3);

向我显示的错误是:

Response status code does not indicate success: 403 (Forbidden).

资源

这是一张描述更多错误的图片,你能帮帮我吗:)

最佳答案

有一些 Web 服务器希望在请求中接收到 User-Agent header (如果没有看到,它们会返回 403)。您可以添加一个 User-Agent header ,例如如下所示:

HttpClient httpClient = new HttpClient();
HttpRequestMessage requestMessage = new HttpRequestMessage(HttpMethod.Get,"http://example.com");
// Add our custom headers
requestMessage.Headers.Add("User-Agent", "User-Agent-Here");
HttpResponseMessage response = await httpClient.SendAsync(requestMessage);

关于c# - 从返回 403 forbidden 的网站解析,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/20581117/

相关文章:

c# - 使用 GET 从多个页面获取 JSON 数据

c# - Windows Phone - 如何首次设置 LocalSettings?

iPhone解析XML数据,标签没有出现

c++ - 解析具有非常量格式的文件(值的数量)

c# - WPF XAML 数据触发器在以编程方式更改属性值 C# 后无法触发

c# - 构建操作页面或资源

c# - 将 double 与自适应近似相等进行比较

c# - 将 .NET Standard 2.0 与 Mono 结合使用

c# - Xamarin 网格和 StackLayout

java - 在一台机器上获取 JDOMException 但相同的 xml 在另一台机器上工作正常