Не удается получить доступ к значениям href и i из узлов, используя HtmlAgilityPack в C # - PullRequest
0 голосов
/ 08 марта 2019

Я пытаюсь получить доступ к некоторым переменным href на этом сайте: https://www.york.ca/wps/portal/yorkhome/environment/bindicator/ с использованием HtmlAgilityPack в C #.

Просто некоторая информация на веб-сайте: веб-сайт позволяет пользователю искать элемент.После нажатия кнопки поиска, без перезагрузки страницы, на веб-сайте появляется таблица, в которой в каждой строке содержится имя элемента, инструкции о том, как его выбросить, и изображения того, куда он направляется (например, синий контейнер, компост и т. Д.).Используя HtmlAgilityPack, я могу получить узлы в таблице.Вот как выглядит мой код на данный момент:

        HtmlWeb web = new HtmlWeb();
        var doc = web.Load("https://www.york.ca/wps/portal/yorkhome/environment/bindicator/");

        //Get the Item, Instructions, and Where It Goes
        var nodes = doc.DocumentNode.SelectNodes("//*[@id=\"tblEntAttributes\"]//tr//td//div");

После этого кода я поставил точку останова, чтобы я мог просматривать значения узлов, и вот что я нашел:1. Я могу получить доступ к значениям всех узлов (например: текст названия элемента и инструкции, а также. 2. Я не могу получить доступ к дочерним узлам дочерних узлов "куда идет" .

Причина, по которой возникает эта проблема, заключается в том, что единственный способ идентифицировать картину "куда она идет" - это посмотреть значения href (или значения i, которые содержатсяв разделе href) каждого изображения. Website html

До сих пор я пытался использовать следующий код для получения всех ссылок с веб-сайта:

HtmlWeb hw = new HtmlWeb();
HtmlDocument doc = hw.Load(/* url */);
foreach(HtmlNode link in doc.DocumentNode.SelectNodes("//a[@href]"))
{ }

Однако я не могу получить URL-адреса изображения (я думаю, потому что URL-адреса, которые взяты из изображений "Куда идет", не отображаются на веб-сайте сразу)

Есть ли какой-то способчтобы определить, что это за изображения?

Заранее спасибо за помощь. Также, извините заЕсли вопрос такой длинный, я не могу слишком много сгущать, иначе это не будет иметь смысла

...