【问题标题】:htmlagilitypack gzip encryption exceptionhtmlagilitypack gzip 加密异常
【发布时间】:2014-05-13 20:27:51
【问题描述】:

我遇到异常 throw gzip is not support。这就是我使用加载页面的全部内容,关于如何允许 gzip 的任何想法?

        HtmlWeb hwObject = new HtmlWeb();
        HtmlAgilityPack.HtmlDocument htmldocObject = hwObject.Load(siteURL);

【问题讨论】:

    标签: c# html-agility-pack


    【解决方案1】:

    您可以自己下载页面,即使用派生自WebClient 的类(或手动创建WebRequest 并设置AutomaticDecompression

    public class GZipWebClient : WebClient
    {
        protected override WebRequest GetWebRequest(Uri address)
        {
            HttpWebRequest request = (HttpWebRequest)base.GetWebRequest(address);
            request.AutomaticDecompression = DecompressionMethods.GZip | DecompressionMethods.Deflate;
            return request;
        }
    }
    

    鉴于此,您可以这样做:

    string html;
    using(var wc = new GZipWebClient())
      html = wc.DownloadString(siteUrl);
    
    var htmldocObject = new HtmlDocument();
    htmldocObject.LoadHtml(html);
    

    【讨论】:

    • 感谢您的提示,我正在寻找一种方法来处理此异常
    • 上次我检查了你可以修改 HtmlAgilityPack 源代码,即看这里:htmlagilitypack.codeplex.com/discussions/22790 或者需要自己下载内容
    • @Mike - 从the repository 获取源代码,进行更改,然后自己编译。
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2015-01-28
    • 2013-03-20
    相关资源
    最近更新 更多