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 | Travail avec les Attributs d’Élément dans Beautiful Soup
Web Scraping 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 permet d'extraire les attributs et le contenu de certains éléments. Pour accéder aux attributs d'un objet, utilisez l'attribut .attrs. Par exemple, il est possible de 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 dont les clés correspondent aux noms des attributs et les valeurs à leurs valeurs respectives. Pour 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 observé ci-dessus, tous les caractères de saut de ligne sont inclus dans une liste d’éléments, ce qui n’est pas forcément la représentation la plus souhaitable du contenu. Pour extraire uniquement le texte à l’intérieur d’un élément spécifique, utiliser la méthode .get_text(). Comparer 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

Suggested prompts:

What is the difference between .attrs, .contents, and .get_text() in BeautifulSoup?

Can you explain how to use .attrs to get specific attribute values?

How can I extract text from other HTML elements using BeautifulSoup?

Awesome!

Completion rate improved to 4.35

bookAttributs et Contenus de l'Élément

Glissez pour afficher le menu

Les méthodes abordées dans les sections précédentes renvoient des parties spécifiques du code HTML. BeautifulSoup permet d'extraire les attributs et le contenu de certains éléments. Pour accéder aux attributs d'un objet, utilisez l'attribut .attrs. Par exemple, il est possible de 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 dont les clés correspondent aux noms des attributs et les valeurs à leurs valeurs respectives. Pour 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 observé ci-dessus, tous les caractères de saut de ligne sont inclus dans une liste d’éléments, ce qui n’est pas forcément la représentation la plus souhaitable du contenu. Pour extraire uniquement le texte à l’intérieur d’un élément spécifique, utiliser la méthode .get_text(). Comparer 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