Я извлекаю значения с HTML-страниц, используя XPath внутри java-программы, чтобы добраться до определенного тега, и иногда использую регулярные выражения для очистки получаемых данных.
После некоторого исследования я остановился на HTML Cleaner ( http://htmlcleaner.sourceforge.net/ ) как на наиболее надежном способе синтаксического анализа необработанного HTML в хороший формат XML. Однако HTML Cleaner поддерживает только XPath 1.0, и мне нужны такие функции, как 'contains'. например, в этом фрагменте XML:
Hello
Я хотел бы получить текст «Hello» с помощью следующего XPath:
//div/td[contains(@id, 'foo')]/text()
Есть ли способ получить эту функциональность? У меня есть несколько идей, но я бы предпочел не изобретать велосипед, если в этом нет необходимости:
Краткий вопрос: есть ли способ использовать XPath contains в HTML внутри существующей библиотеки Java?