8
votes

Comment analyser et modifier le fichier HTML en Java

Je fais un projet dans lequel je dois lire un fichier HTML et identifier des balises spécifiques, modifier le contenu de la balise et créer un nouveau fichier HTML. Y a-t-il une bibliothèque qui analyse des balises HTML et est capable d'écrire les balises à un nouveau fichier?


0 commentaires

4 Réponses :


0
votes

regarde http://java-source.net/open-source/html- analyseurs pour une liste de bibliothèques Java qui analysent les fichiers HTML dans des objets Java pouvant être manipulés.

Si les fichiers HTML que vous utilisez sont bien formés (XHTML), vous pouvez également utiliser des bibliothèques XML dans Java pour trouver des balises particulières et les modifier. L'IO elle-même devrait être traitée par les bibliothèques que vous utilisez.

Si vous choisissez d'analyser manuellement les chaînes, vous pouvez utiliser des expressions régulières pour trouver des balises particulières et utiliser les bibliothèques Java IO pour écrire dans les fichiers et créer de nouveaux documents HTML. Mais cette méthode réinvente la roue afin de parler car vous devez gérer l'ouverture et la fermeture de balises et toutes ces choses sont gérées par des bibliothèques préexistantes.


0 commentaires

2
votes

Il y a trop d'analyseurs HTML. Vous pouvez utiliser jtidy , Nekohtml ou vérifier tagsoup .

Je préfère généralement analyser XHTML avec les analyseurs Java XML standard, mais vous ne pouvez pas le faire pour tout type de HTML.


0 commentaires

2
votes


Si vous souhaitez modifier la page Web et renvoyer le contenu modifié, je suis le meilleur moyen d'utiliser la transformation XSL.
http://fr.wikipedia.org/wiki/xslt


2 commentaires

Je suppose que c'était ce que j'attendais avec impatience. Je dois générer des rapports et le présenter dans le format que l'utilisateur souhaite que cela soit présenté.


J'utilise actuellement le processeur Xalan et le code travaille magnifiquement. Voici le lien pour le processeur xml.apache.org/xalan-j



7
votes

Consultez http://jsoup.org , il a une API amicale de type DOM, pour des tâches simples que vous donez Il faut analyser le HTML.


0 commentaires