Notice: This page requires JavaScript to function properly.
Please enable JavaScript in your browser settings or update your browser.
Apprendre Attributs et Contenus de l'Élément | Travailler avec les Attributs d'Élément dans Beautiful Soup
Extraction de Données Web avec Python

bookAttributs et Contenus de l'Élément

Les méthodes abordées dans les sections précédentes renvoient des parties spécifiques du code HTML. BeautifulSoup nous permet de récupérer les attributs et le contenu d'éléments particuliers. Pour accéder aux attributs d'un objet, utilisez l'attribut .attrs. Par exemple, nous pouvons récupérer les attributs du premier élément <div>.

123456789101112
# Importing libraries from bs4 import BeautifulSoup from urllib.request import urlopen # Reading web page url = "https://codefinity-content-media.s3.eu-west-1.amazonaws.com/18a4e428-1a0f-44c2-a8ad-244cd9c7985e/jesus.html" page = urlopen(url) html = page.read().decode("utf-8") # Reading HTML with BeautifulSoup soup = BeautifulSoup(html, "html.parser") print(soup.find("div").attrs)
copy

Il est important de noter que le résultat de l'utilisation de l'attribut .attrs est un dictionnaire où les clés sont les noms d'attributs et les valeurs sont leurs valeurs respectives. Si vous souhaitez obtenir le contenu stocké dans une balise, utilisez l'attribut .contents. Par exemple, examinons le contenu du premier élément <div>.

123456789101112
# Importing libraries from bs4 import BeautifulSoup from urllib.request import urlopen # Reading web page url = "https://codefinity-content-media.s3.eu-west-1.amazonaws.com/18a4e428-1a0f-44c2-a8ad-244cd9c7985e/jesus.html" page = urlopen(url) html = page.read().decode("utf-8") # Reading HTML with BeautifulSoup soup = BeautifulSoup(html, "html.parser") print(soup.find("div").contents)
copy

Comme on l'a observé ci-dessus, tous les caractères de saut de ligne ont été inclus dans une liste d'éléments, ce qui n'est peut-être pas la représentation la plus souhaitable du contenu. Si vous souhaitez extraire uniquement le texte contenu dans un élément spécifique, utilisez la méthode .get_text(). Comparez les résultats de l'exemple ci-dessous avec celui obtenu précédemment.

123456789101112
# Importing libraries from bs4 import BeautifulSoup from urllib.request import urlopen # Reading web page url = "https://codefinity-content-media.s3.eu-west-1.amazonaws.com/18a4e428-1a0f-44c2-a8ad-244cd9c7985e/jesus.html" page = urlopen(url) html = page.read().decode("utf-8") # Reading HTML with BeautifulSoup soup = BeautifulSoup(html, "html.parser") print(soup.find("div").get_text())
copy

Tout était clair ?

Comment pouvons-nous l'améliorer ?

Merci pour vos commentaires !

Section 3. Chapitre 1

Demandez à l'IA

expand

Demandez à l'IA

ChatGPT

Posez n'importe quelle question ou essayez l'une des questions suggérées pour commencer notre discussion

bookAttributs et Contenus de l'Élément

Les méthodes abordées dans les sections précédentes renvoient des parties spécifiques du code HTML. BeautifulSoup nous permet de récupérer les attributs et le contenu d'éléments particuliers. Pour accéder aux attributs d'un objet, utilisez l'attribut .attrs. Par exemple, nous pouvons récupérer les attributs du premier élément <div>.

123456789101112
# Importing libraries from bs4 import BeautifulSoup from urllib.request import urlopen # Reading web page url = "https://codefinity-content-media.s3.eu-west-1.amazonaws.com/18a4e428-1a0f-44c2-a8ad-244cd9c7985e/jesus.html" page = urlopen(url) html = page.read().decode("utf-8") # Reading HTML with BeautifulSoup soup = BeautifulSoup(html, "html.parser") print(soup.find("div").attrs)
copy

Il est important de noter que le résultat de l'utilisation de l'attribut .attrs est un dictionnaire où les clés sont les noms d'attributs et les valeurs sont leurs valeurs respectives. Si vous souhaitez obtenir le contenu stocké dans une balise, utilisez l'attribut .contents. Par exemple, examinons le contenu du premier élément <div>.

123456789101112
# Importing libraries from bs4 import BeautifulSoup from urllib.request import urlopen # Reading web page url = "https://codefinity-content-media.s3.eu-west-1.amazonaws.com/18a4e428-1a0f-44c2-a8ad-244cd9c7985e/jesus.html" page = urlopen(url) html = page.read().decode("utf-8") # Reading HTML with BeautifulSoup soup = BeautifulSoup(html, "html.parser") print(soup.find("div").contents)
copy

Comme on l'a observé ci-dessus, tous les caractères de saut de ligne ont été inclus dans une liste d'éléments, ce qui n'est peut-être pas la représentation la plus souhaitable du contenu. Si vous souhaitez extraire uniquement le texte contenu dans un élément spécifique, utilisez la méthode .get_text(). Comparez les résultats de l'exemple ci-dessous avec celui obtenu précédemment.

123456789101112
# Importing libraries from bs4 import BeautifulSoup from urllib.request import urlopen # Reading web page url = "https://codefinity-content-media.s3.eu-west-1.amazonaws.com/18a4e428-1a0f-44c2-a8ad-244cd9c7985e/jesus.html" page = urlopen(url) html = page.read().decode("utf-8") # Reading HTML with BeautifulSoup soup = BeautifulSoup(html, "html.parser") print(soup.find("div").get_text())
copy

Tout était clair ?

Comment pouvons-nous l'améliorer ?

Merci pour vos commentaires !

Section 3. Chapitre 1
some-alt