Notice: This page requires JavaScript to function properly.
Please enable JavaScript in your browser settings or update your browser.
Impara Lavorare con Elementi Specifici | Decodifica HTML con Beautiful Soup
Web Scraping con Python

bookLavorare con Elementi Specifici

La navigazione di un documento HTML utilizzando gli attributi di Python recupera solo la prima occorrenza di un elemento. Per trovare la prima istanza di un elemento senza conoscerne il percorso completo, utilizzare il metodo .find() e passare il nome del tag come stringa (senza le parentesi < >). Ad esempio, individuare il primo elemento <div> nel documento 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

È inoltre possibile recuperare tutte le istanze di uno specifico elemento utilizzando il metodo .find_all(). Questo restituisce un elenco di tutte le corrispondenze. Ad esempio, trovare tutti i tag <p> nel documento 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

È possibile utilizzare il metodo .find_all() per individuare più tag passando un elenco di nomi di tag. Ad esempio, raccogliere tutti gli elementi <div> e <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
Tutto è chiaro?

Come possiamo migliorarlo?

Grazie per i tuoi commenti!

Sezione 2. Capitolo 5

Chieda ad AI

expand

Chieda ad AI

ChatGPT

Chieda pure quello che desidera o provi una delle domande suggerite per iniziare la nostra conversazione

Awesome!

Completion rate improved to 4.35

bookLavorare con Elementi Specifici

Scorri per mostrare il menu

La navigazione di un documento HTML utilizzando gli attributi di Python recupera solo la prima occorrenza di un elemento. Per trovare la prima istanza di un elemento senza conoscerne il percorso completo, utilizzare il metodo .find() e passare il nome del tag come stringa (senza le parentesi < >). Ad esempio, individuare il primo elemento <div> nel documento 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

È inoltre possibile recuperare tutte le istanze di uno specifico elemento utilizzando il metodo .find_all(). Questo restituisce un elenco di tutte le corrispondenze. Ad esempio, trovare tutti i tag <p> nel documento 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

È possibile utilizzare il metodo .find_all() per individuare più tag passando un elenco di nomi di tag. Ad esempio, raccogliere tutti gli elementi <div> e <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
Tutto è chiaro?

Come possiamo migliorarlo?

Grazie per i tuoi commenti!

Sezione 2. Capitolo 5
some-alt