Загрузка HTML Agility Pack из примера браузера возвращает нулевое значение - PullRequest
0 голосов
/ 16 мая 2019

Я пытаюсь просмотреть примеры на веб-сайте HTML Agility Pack, чтобы узнать, как его использовать.Однако этот пример, кажется, не работает, и я хотел бы помочь разобраться, почему: https://html -agility-pack.net / from-browser

Мой код:

public partial class Form1 : Form
    {
        public Form1()
        {
            InitializeComponent();
            getWebsite();
        }
        private void getWebsite()
        {
            string url = "http://html-agility-pack/from-browser";

            var web1 = new HtmlWeb();
            var doc1 = web1.LoadFromBrowser(url, o =>
            {
                var webBrowser = (WebBrowser)o;

                // WAIT until the dynamic text is set
                return !string.IsNullOrEmpty(webBrowser.Document.GetElementById("uiDynamicText").InnerText);
            });
            var t1 = doc1.DocumentNode.SelectSingleNode("//div[@id='uiDynamicText']").InnerText;

            var web2 = new HtmlWeb();
            var doc2 = web2.LoadFromBrowser(url, html =>
            {
                // WAIT until the dynamic text is set
                return !html.Contains("<div id=\"uiDynamicText\"></div>");
            });
            var t2 = doc2.DocumentNode.SelectSingleNode("//div[@id='uiDynamicText']").InnerText;  
        }
    }

Я получаю ошибку:

System.NullReferenceException: 'Object reference not set to an instance of an object.'
System.Windows.Forms.HtmlDocument.GetElementById(...) returned null.

В частности, ошибка отображается в этой строке:

return !string.IsNullOrEmpty(webBrowser.Document.GetElementById("uiDynamicText").InnerText);

Я дважды проверил и, насколько я могу судить,мой код идентичен примеру.Куда я здесь не так?

...