Описание тега jericho-html-parser

Jericho HTML Parser - это java-библиотека, позволяющая анализировать и обрабатывать части документа HTML, включая теги на стороне сервера, при дословном воспроизведении любого нераспознанного или недействительного HTML. Он также предоставляет высокоуровневые функции для работы с HTML-формами.

Jericho HTML Parser - это java-библиотека, позволяющая анализировать и обрабатывать части документа HTML, включая теги на стороне сервера, при дословном воспроизведении любого нераспознанного или недействительного HTML. Он также предоставляет высокоуровневые функции для работы с HTML-формами.

Это библиотека с открытым исходным кодом, выпущенная как по Eclipse Public License (EPL), так и GNU Lesser General Public License (LGPL). Поэтому вы можете свободно использовать его в коммерческих приложениях в соответствии с условиями, указанными в одном из этих лицензионных документов.

Особенности:

  • Наличие плохо отформатированного HTML не мешает синтаксическому анализу остальной части документа, что делает библиотеку идеальной для использования с "реальным" HTML, который душит другие парсеры.
  • Серверные теги ASP, JSP, PSP, PHP и Mason явно распознаются синтаксическим анализатором. Это означает, что обычный HTML по-прежнему анализируется должным образом, даже если в них есть серверные теги, что часто встречается, например, при динамической установке атрибутов элемента.
  • Опция потокового анализа с использованием класса StreamedSource, позволяющая эффективно обрабатывать большие файлы в памяти с помощью итератора событий. По сути, это альтернатива StAX с возможностью обработки HTML и неподтвержденного XML, а также с некоторыми другими функциями, недоступными в других потоковых парсерах.
  • В своей стандартной форме это не анализатор событий и не дерево, а скорее комбинация простого текстового поиска, эффективного распознавания тегов и кэша позиций тегов. Текст всего исходного документа сначала загружается в память, а затем только соответствующие сегменты ищут соответствующие символы каждой операции поиска.
  • По сравнению с синтаксическим анализатором на основе дерева, таким как DOM, требования к памяти и ресурсам могут быть намного лучше, если анализировать или изменять нужно только небольшие разделы документа. Неправильный или плохо отформатированный HTML может быть легко проигнорирован, в отличие от синтаксических анализаторов на основе дерева, которые должны идентифицировать каждый узел в документе сверху вниз.
  • По сравнению с синтаксическим анализатором событий, таким как SAX, интерфейс находится на более высоком уровне и более интуитивно понятен, и при необходимости легко создается древовидное представление иерархии элементов документа.
  • Начальная и конечная позиции в исходном документе всех проанализированных сегментов доступны, что позволяет изменять только выбранные сегменты документа без необходимости восстанавливать весь документ из дерева.
  • Номер строки и столбца каждой позиции в исходном документе легко доступны.
  • Предоставляет простой, но всеобъемлющий интерфейс для анализа и управления элементами управления HTML-формы, включая извлечение и заполнение начальных значений, а также преобразование в режим только для чтения или отображения данных. Анализ элементов управления формы также позволяет хранить данные, полученные из формы, и представлять их соответствующим образом.
  • Пользовательские типы тегов могут быть легко определены и зарегистрированы для распознавания синтаксическим анализатором.
  • Встроенный функционал для извлечения всего текста из HTML-разметки, подходящий для подачи в систему поиска текста, такую ​​как Apache Lucene.
  • Встроенная функциональность для визуализации HTML-разметки с простым форматированием текста. (Нажмите здесь для онлайн-демонстрации)
  • Встроенная функциональность для форматирования исходного кода HTML, который выравнивает элементы в соответствии с их глубиной в иерархии элементов документа. (Нажмите здесь для онлайн-демонстрации)
  • Встроенная функциональность для сжатия исходного кода HTML путем удаления всех ненужных пробелов.

Официальный сайт: http://jericho.htmlparser.net/

Полезные ссылки: