Извлечение данных HTML - PullRequest
       0

Извлечение данных HTML

3 голосов
/ 19 сентября 2010

Я захожу на какой-то сайт и мне нужно извлечь некоторые данные. Чтобы быть более конкретным - из этой части:

<input type="hidden" value="1" name="d520783895194bd08750e47c744d553d">

Мне нужно извлечь часть имени. Я слышал, что регулярные выражения - не лучшее решение, поэтому я хотел бы спросить, как лучше всего получить доступ к этой части данных, которая мне нужна.

Ответы [ 2 ]

2 голосов
/ 04 октября 2010

После анализа веб-сайта с помощью NekoHTML или TagSoup (который должен учитывать тот факт, что ваш тег поля ввода не закрыт), я предлагаю использовать выражение xpath:

//input[@type='hidden'][@value=1]/@name

В Groovy вы будете использоватьпримените его в виде GPath .

2 голосов
/ 19 сентября 2010

Используйте библиотеку Html для разбора, они исправляют искаженный Html и облегчают навигацию по документу для поиска и обновления элементов.Вот ссылка на список реализаций Java / Grovy:

http://www.wavyx.net/2009/01/13/looking-for-a-java-html-parser-or-groovy/

Похоже, NekoHTML и TagSoup популярны, но яне использовал ни Grovy, ни в этом отношении.Но я использовал анализаторы HTML на других языках.

...