C # htmlagility, получаю исключение, когда я добавляю заголовок в следующем коде - PullRequest
0 голосов
/ 25 ноября 2018

Я получаю исключение, когда я запускаю этот код. Исключение "заголовок должен быть изменен с использованием соответствующего свойства или метода."

        HtmlAgilityPack.HtmlWeb web = new HtmlWeb();
        web.UserAgent="Mozilla/5.0 (Windows NT 10.0; Win64; x64) 
         AppleWebKit/537.36 (KHTML, like Gecko) Chrome/70.0.3538.77 Safari/537.36";
        web.PreRequest += (request) =>
        {
            request.Headers.Add("Accept","text/html,application/xhtml+xml,application/xml;q=0.9,*/*;q=0.8");
            request.Headers.Add("Accept-Language", "de-DE");
            return true;
        };
        HtmlAgilityPack.HtmlDocument doc = new 
        HtmlAgilityPack.HtmlDocument();

        doc = web.Load("http://www.alfatah.pk/");

1 Ответ

0 голосов
/ 25 ноября 2018

Это работает для меня в https://dotnetfiddle.net/AQbs3v:

HttpWebRequest request = (HttpWebRequest)WebRequest.Create("http://www.alfatah.pk/");
        request.UserAgent = "Mozilla / 5.0(Windows NT 10.0; Win64; x64) AppleWebKit / 537.36(KHTML, like Gecko) Chrome / 70.0.3538.77 Safari / 537.36";
 request.Accept= "text/html,application/xhtml+xml,application/xml;q=0.9,*/*;q=0.8";
        //request.Headers.Add(HttpRequestHeader.AcceptLanguage, "de-DE");

        using (var response = (HttpWebResponse)(request.GetResponse()))
        {
            HttpStatusCode code = response.StatusCode;
            if (code == HttpStatusCode.OK)
            {
                using (StreamReader sr = new StreamReader(response.GetResponseStream(), Encoding.UTF8))
                {
                    HtmlDocument htmlDoc = new HtmlDocument();
                    htmlDoc.OptionFixNestedTags = true;
                    htmlDoc.Load(sr);
                    Console.Write(htmlDoc.DocumentNode.InnerText);
                }
            }
        }
...