Notice: This page requires JavaScript to function properly.
Please enable JavaScript in your browser settings or update your browser.
Aprende Trabajando con Elementos Específicos | Descifrando HTML con Beautiful Soup
Web Scraping con Python

bookTrabajando con Elementos Específicos

La navegación por un documento HTML utilizando atributos de Python recupera solo la primera aparición de un elemento. Si se desea encontrar la primera instancia de un elemento sin conocer su ruta completa, se utiliza el método .find() y se pasa el nombre de la etiqueta como una cadena (sin los corchetes < >). Por ejemplo, localizar el primer elemento <div> en el 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

También es posible recuperar todas las instancias de un elemento específico utilizando el método .find_all(). Este devuelve una lista con todas las coincidencias. Por ejemplo, encontrar todas las etiquetas <p> en el 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

Se puede utilizar el método .find_all() para localizar múltiples etiquetas pasando una lista de nombres de etiquetas. Por ejemplo, recopilar todos los elementos <div> y <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
¿Todo estuvo claro?

¿Cómo podemos mejorarlo?

¡Gracias por tus comentarios!

Sección 2. Capítulo 5

Pregunte a AI

expand

Pregunte a AI

ChatGPT

Pregunte lo que quiera o pruebe una de las preguntas sugeridas para comenzar nuestra charla

Awesome!

Completion rate improved to 4.35

bookTrabajando con Elementos Específicos

Desliza para mostrar el menú

La navegación por un documento HTML utilizando atributos de Python recupera solo la primera aparición de un elemento. Si se desea encontrar la primera instancia de un elemento sin conocer su ruta completa, se utiliza el método .find() y se pasa el nombre de la etiqueta como una cadena (sin los corchetes < >). Por ejemplo, localizar el primer elemento <div> en el 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

También es posible recuperar todas las instancias de un elemento específico utilizando el método .find_all(). Este devuelve una lista con todas las coincidencias. Por ejemplo, encontrar todas las etiquetas <p> en el 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

Se puede utilizar el método .find_all() para localizar múltiples etiquetas pasando una lista de nombres de etiquetas. Por ejemplo, recopilar todos los elementos <div> y <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
¿Todo estuvo claro?

¿Cómo podemos mejorarlo?

¡Gracias por tus comentarios!

Sección 2. Capítulo 5
some-alt