Python - Analyseur HTML

Table des matières
Lors de l'exécution de travaux avec le analyseur dans Python il est recommandé que si nous travaillons avec des documents HTML utiliser la norme XHTML, puisque ce dernier est plus strict en ce qui concerne la gestion des balises d'ouverture et de fermeture des éléments, nous pouvons ainsi créer plus facilement des programmes capables d'interpréter cela.
Dans Python nous avons à disposition Analyseur HTML, cela ne doit pas être confondu avec la classe du même nom de module htmllib, puisque le premier fait partie de la bibliothèque standard, lorsque nous obtenons un document de Bien rangé on peut utiliser HTLParser pour pouvoir parcourir son contenu.
Utiliser HTMLParser
Utilisez le Analyseur HTML, cela signifie vraiment le sous-classer, afin que nous puissions écraser les méthodes à notre convenance et ainsi pouvoir répondre à nos besoins, voyons ci-dessous une liste des principales méthodes que nous obtenons en utilisant Analyseur HTML.
  • handle_starttag (tag, attrs): Lorsqu'une balise de début est trouvée, attrs est une séquence de paires (nom, valeur).
  • handle_startendtag (balise, attributs): Utilisé pour les étiquettes vides. Par défaut, il gère le démarrage et l'arrêt séparément.
  • handle_endtag (balise): Utilisé lorsqu'une balise de fermeture est trouvée.
  • handle_data (données): Il est utilisé lorsque nous trouvons des données textuelles.
  • handle_charref (réf): Il est utilisé lorsque vous travaillez avec des références de caractères de la forme & # ref;.
  • handle_entityref (nom): Nous l'utilisons lorsque nous avons des références à des entités de la forme & nom;.
  • handle_comment (données): Il n'est appelé que lorsqu'il y a du contenu commenté.
  • handle_decl (decl): Il est utilisé pour les déclarations de la forme.
  • handle_pi (données): Il est utilisé pour traiter les instructions.
Une fois que nous avons vu les principales méthodes de Analyseur HTMLEnsuite, nous allons voir une image avec un exemple de code puis nous expliquerons en quoi cela consiste :

AGRANDIR

La première chose que nous remarquons est que pour ce Grattage d'écran nous n'allons pas utiliser Bien rangéC'est parce que le HTML que nous allons inspecter n'est pas mal formé, alors nous voyons que la première chose que nous déclarons sont des variables booléennes avec lesquelles nous contrôlerons si nous sommes à l'intérieur d'un élément H4 ou dans un élément de lien ou un lien.
On a quelque chose de particulier avec la méthode handle_dataComme nous sommes dans un environnement réel, nous devons nous préparer aux scénarios les plus complexes et nous entendons par là que comme il est presque certain que nous n'obtiendrons pas les informations nécessaires au premier appel, nous préparons cette méthode pour pouvoir l'obtenir. en partie, une fois que nous obtenons, tout ce que nous faisons est de joindre les données.
L'action de notre programme commence lorsque nous appelons la méthode alimentation () auquel nous passons le texte qui est le contenu de la page web que nous obtenons avec la méthode urlopen () et quand tout cela a été traité, nous procédons à l'appel de la méthode close().
Finalement, avec cela, nous avons réalisé un programme de Grattage d'écran plus lisible que l'utilisation d'expressions régulières et un peu plus robuste dans l'aspect que nous ne nous limitons pas à des structures fixes, avec cela nous pouvons obtenir nos informations correctement.
Avec cela, nous terminons notre tutoriel HTMLParser, comme nous pouvons le voir, il existe de nombreuses façons d'accéder à ces solutions, afin d'obtenir les informations d'une page Web.Avez-vous aimé et aidé ce tutoriel ?Vous pouvez récompenser l'auteur en appuyant sur ce bouton pour lui donner un point positif

Vous contribuerez au développement du site, partager la page avec vos amis

wave wave wave wave wave