Notice: This page requires JavaScript to function properly.
Please enable JavaScript in your browser settings or update your browser.
Apprendre Travail Avec des Éléments Spécifiques | Décodage du HTML avec Beautiful Soup
Web Scraping avec Python

bookTravail Avec des Éléments Spécifiques

La navigation dans un document HTML à l'aide des attributs Python permet de récupérer uniquement la première occurrence d'un élément. Pour trouver la première instance d'un élément sans connaître son chemin complet, utilisez la méthode .find() et transmettez le nom de la balise sous forme de chaîne de caractères (sans les crochets < >). Par exemple, localisez le premier élément <div> dans le document HTML.

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"))
copy

Vous pouvez également récupérer toutes les instances d'un élément spécifique en utilisant la méthode .find_all(). Elle retourne une liste de toutes les correspondances. Par exemple, trouvez toutes les balises <p> dans le document HTML.

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_all("p"))
copy

La méthode .find_all() permet de localiser plusieurs balises en passant une liste de noms de balises. Par exemple, collecter tous les éléments <div> et <title>.

12345678910111213
# 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/page.html" page = urlopen(url) html = page.read().decode("utf-8") # Reading HTML with BeautifulSoup soup = BeautifulSoup(html, "html.parser") for el in soup.find_all(["div", "title"]): print(el)
copy
Tout était clair ?

Comment pouvons-nous l'améliorer ?

Merci pour vos commentaires !

Section 2. Chapitre 5

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

Awesome!

Completion rate improved to 4.35

bookTravail Avec des Éléments Spécifiques

Glissez pour afficher le menu

La navigation dans un document HTML à l'aide des attributs Python permet de récupérer uniquement la première occurrence d'un élément. Pour trouver la première instance d'un élément sans connaître son chemin complet, utilisez la méthode .find() et transmettez le nom de la balise sous forme de chaîne de caractères (sans les crochets < >). Par exemple, localisez le premier élément <div> dans le document HTML.

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"))
copy

Vous pouvez également récupérer toutes les instances d'un élément spécifique en utilisant la méthode .find_all(). Elle retourne une liste de toutes les correspondances. Par exemple, trouvez toutes les balises <p> dans le document HTML.

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_all("p"))
copy

La méthode .find_all() permet de localiser plusieurs balises en passant une liste de noms de balises. Par exemple, collecter tous les éléments <div> et <title>.

12345678910111213
# 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/page.html" page = urlopen(url) html = page.read().decode("utf-8") # Reading HTML with BeautifulSoup soup = BeautifulSoup(html, "html.parser") for el in soup.find_all(["div", "title"]): print(el)
copy
Tout était clair ?

Comment pouvons-nous l'améliorer ?

Merci pour vos commentaires !

Section 2. Chapitre 5
some-alt