326 votes

Extraction de texte à partir de fichiers HTML à l’aide de Python

Je voudrais extraire le texte à partir d'un fichier HTML à l'aide de Python. Je veux essentiellement la même sortie que je voudrais faire si j'ai copié le texte à partir d'un navigateur et collé dans le bloc-notes.

J'aimerais quelque chose de plus robuste que l'utilisation d'expressions régulières qui peut échouer sur HTML mal formé. J'ai vu beaucoup de gens recommandent Belle Soupe, mais j'ai eu quelques problèmes à l'utiliser. Pour l'un, il a ramassé le texte non désiré, comme source JavaScript. Aussi, il n'a pas à interpréter en entités HTML. Par exemple, je m'attends ' en source HTML à être converti en une apostrophe dans le texte, comme si j'avais collé le contenu d'un navigateur dans le bloc-notes.

Mise à jour html2text semble prometteur. Il gère les entités HTML correctement et ignore JavaScript. Cependant, elle ne correspond pas exactement produire de texte en clair; il produit des démarques qui devrait par la suite être transformé en texte brut. Il est livré avec aucun des exemples et de la documentation, mais le code a l'air propre.


Questions connexes:

254voto

PeYoTlL Points 15

Le meilleur morceau de code que j’ai trouvé pour l’extraction de texte sans avoir javascript ou pas voulu les choses :

Il suffit d’installer BeautifulSoup avant :

177voto

RexE Points 4498

html2text est un programme Python qui fait un bon travail à cela.

107voto

Shatu Points 915

Utilisation NLTK

J’ai perdu mes 4-5 heures les points de fixation avec html2text. Heureusement j’ai pu rencontrer NLTK.
Cela fonctionne comme par magie.

57voto

xperroni Points 774

Me trouvai face à la même problème aujourd'hui. J’ai écrit un analyseur HTML très simple pour enlever le contenu entrant de toutes les annotations, le reste du texte avec seulement un minimum de mise en forme de retour.

8voto

GeekTantra Points 2606

Vous pouvez utiliser également méthode html2text dans la bibliothèque de stripogram.

Pour installer stripogram exécutez sudo easy_install stripogram

Prograide.com

Prograide est une communauté de développeurs qui cherche à élargir la connaissance de la programmation au-delà de l'anglais.
Pour cela nous avons les plus grands doutes résolus en français et vous pouvez aussi poser vos propres questions ou résoudre celles des autres.

Powered by:

X