Я хочу сделать приложение для настольных приложений на C#. Я хочу, чтобы он вытащил погоду с weather.com. Я очень новичок в этом вопросе. Я использую HtmlAgilityPack.dll. Я попытался следующий код, чтобы тянуть сегодняшнюю погоду (градусы):Как вы можете вытаскивать строки с веб-страницы и отображать их?
string webUrl = "http://www.weather.com/weather/today/l/90025:4:US";
HtmlWeb HTMLweb = new HtmlWeb();
HtmlAgilityPack.HtmlDocument doc = HTMLweb.Load(webUrl);
string degrees = doc.DocumentNode.SelectNodes("//*[@id=\"wx-local-wrap\"]/div[2]/div[2]/div/div/div/div/section/div/div/div[1]/div/section/section[1]/div[2]/span[1]/span")[0].InnerText;
MessageBox.Show("{0}°F", degrees);
Однако, когда я запускаю этот код он бросает NullReferenceException. Что я делаю неправильно и как я могу это исправить?
спасибо.
Очевидно ваш узел не может быть найден –
вы проверили значение «документа» после того, как он назначен? Узел, который вы ищете, не должен быть там. Подумайте об использовании публичного API вместо этого, есть много, которые возвратят вам форматированный XML-документ, который вы сможете проанализировать. –
Пожалуйста, покажите содержимое HTML, которое вы хотите найти. –