Question

À l'aide de la documentation Python, j'ai trouvé le analyseur HTML , mais je n'en ai aucune idée. quelle bibliothèque importer pour l'utiliser, comment puis-je le savoir (en gardant à l'esprit que cela ne figure pas sur la page).

Était-ce utile?

La solution

Essayez:

import HTMLParser

Dans Python 3.0, le module HTMLParser a été renommé en html.parser. vous pouvez vérifier à propos de cette ici

Python 3.0

import html.parser

Python 2.2 et supérieur

<*>

Autres conseils

Vous voulez probablement vraiment BeautifulSoup , cliquez sur le lien à titre d'exemple.

Mais dans tous les cas

>>> import HTMLParser
>>> h = HTMLParser.HTMLParser()
>>> h.feed('<html></html>')
>>> h.get_starttag_text()
'<html>'
>>> h.close()

Je vous recommanderais d'utiliser plutôt le module Beautiful Soup , qui contient bonne documentation .

Vous pourriez être intéressé par lxml . Il s’agit d’un package séparé comportant des composants C, mais qui est le plus rapide. Il a également une très belle API, vous permettant de lister facilement des liens dans des documents HTML, ou des formulaires de liste, de purifier HTML, etc. Il a également des fonctionnalités pour analyser du code HTML mal formé (il est configurable).

Vous devez également consulter html5lib pour Python car il tente d'analyser le code HTML dans un Cela ressemble beaucoup à ce que font les navigateurs Web, en particulier lorsque le code HTML est invalide (ce qui représente plus de 90% du Web actuel).

Je ne recommande pas BeautifulSoup si vous voulez de la vitesse. lxml est beaucoup, beaucoup plus rapide, et vous pouvez vous replier dans le sous-agent BS de lxml si l’analyseur par défaut ne fonctionne pas.

Pour le traitement HTML dans le monde réel, nous vous recommandons de BeautifulSoup . C'est génial et enlève beaucoup de douleur. L’installation est facile.

Il y a un lien vers un exemple au bas de ( http: // docs. python.org/2/library/htmlparser.html ), cela ne fonctionne tout simplement pas avec le python ou python3 d'origine. Ce doit être python2 comme il est dit en haut.

Licencié sous: CC-BY-SA avec attribution
Non affilié à StackOverflow
scroll top