Получение XPath для доступа к элементам таблицы - PullRequest
0 голосов
/ 03 апреля 2019

Я пытаюсь очистить таблицу с этого веб-сайта , используя HtmlAgilityPack и консольное приложение C #.

Я могу очистить названия акций в столбце 2 (например, EDAPTMS ADR (EDAP), но я не могу получить правильный XPath для любого из значений в столбцах Price, Chg, Chg%.

Например: Мой XPath для столбца имен работает как:

"//*[@id=\"column0\"]//div//table//tr//td//a"

Каким будет XPath для столбцов Price, Chg, Chg%? Можете ли вы помочь мне понять, как его получить?

1 Ответ

1 голос
/ 03 апреля 2019

Вот xpath для получения нужного столбца на основе имени столбца.

Цена: получение цены из 4-го ряда.

//div[@class='mdcNarrowM']//table//tr[4]/td[count(ancestor::table//tr[1]/td[.='Price']/preceding-sibling::td)+1]

Общие обозначения в этом случае: (обновите номер строки и имена столбцов в соответствии с вашими потребностями) Протестировано для всех столбцов в этой таблице.

//div[@class='mdcNarrowM']//table//tr[row_number_goes_here]/td[count(ancestor::table//tr[1]/td[.='column name goes here']/preceding-sibling::td)+1]

Чтобы получить все строки (кроме строки заголовка), используйте ниже xpath.

//div[@class='mdcNarrowM']//table//tr[not(td[@class='colhead'])]/td[count(ancestor::table//tr[1]/td[.='Price']/preceding-sibling::td)+1]`enter code here`
...