Как проверить HTML с Java?
Что такое быстрый и простой способ проверки HTML с Java? Я ищу класс с открытым исходным кодом/PD (или набор классов), который описывает различные свойства 100-нечетных HTML-тегов, таких как:
- - это тег необязательно? Пусто? Законно ли опустить его закрывающий тег?
- какие еще теги может содержать этот тег (если есть)?
- какие атрибуты являются законными для этого тега, и каковы их типы? (не требуется, но приятно у)
спасибо!
редактировать
Я ищу, чтобы сделать анализ тегов по тегам HTML-документа, поэтому меня меньше интересует, является ли документ в целом действительным, а скорее, каковы конкретные требования для каждого типа тегов. Я мог бы кодировать правила на основе спецификации W3C, но хотел сначала посмотреть, какие готовые решения доступны.
3 ответов
Если вы хотите проверить, что некоторые теги следуют определенным спецификациям, кажется, что нет конца парсеров HTML на основе Java:
Парсеры HTML с открытым исходным кодом в Java
другими словами, вы можете проанализировать HTML, а затем проверить полученный документ на наличие тегов, которые вы искали, и определить, соответствуют ли они требуемым спецификациям. Если они этого не делают, вы можете просто бросить ошибку.
Я не думаю, что вы найдете анализ HTML инструмент, который был написан с учетом именно ваших требований, в основном потому, что эти требования не были озвучены и, вероятно, немного туманны.
Если парсер не делает то, что вы хотите из коробки, по крайней мере, этот список с открытым исходным кодом, поэтому вы можете взломать парсер, пока вы публикуете свои изменения.
Проверить JTidy (http://jtidy.sourceforge.net/) и VietSpider HTMLParser ( http://sourceforge.net/projects/binhgiang/ ) оба парсер Java HTML и некоторые проверки синтаксиса функции. Некоторые Eclipse на основе HTML editor плагин использовать JTidy (или порт Tidy) для проверки синтаксиса. Или как Давид, отправьте страницу на w3c.org