BeautifulSoup: busque etiquetas por clase de CSS con selectores de CSS

Prerrequisitos : Beautifulsoup

Beautifulsoup es una biblioteca de Python utilizada para el web scraping. El objeto BeautifulSoup lo proporciona Beautiful Soup, que es un marco de web scraping para Python. El raspado web es el proceso de extracción de datos del sitio web utilizando herramientas automatizadas para acelerar el proceso. El objeto BeautifulSoup representa el documento analizado como un todo. Esta poderosa herramienta de python también se puede usar para modificar páginas web HTML. Este artículo describe cómo se puede emplear beautifulsoup para encontrar etiquetas por clase de CSS con selectores de CSS. Para ello, se utiliza el método find_all() del módulo.

Sintaxis:

find_all(clase_=”nombre_clase”)

Devuelve etiquetas que tienen una clase CSS particular.

Acercarse:

  • Módulo de importación
  • Extraer datos de una página web.
  • Analizar la string raspada a HTML.
  • Use la función find_all() para obtener una lista de etiquetas con el nombre de clase dado.
  • Imprimir etiquetas.

Ejemplo 1:  Encontrar todas las etiquetas de una clase CSS particular de un archivo HTML.

Python3

# importing module
from bs4 import BeautifulSoup
 
markup = """
 
<!DOCTYPE>
<html>
  <head><title>Example</title></head>
    <body>
        <div class="first"> Div with Class first
        </div>
        <p class="first"> Para with Class first
        </p>
 
 
        <div class="second"> Div with Class second
        </div>
        <span class="first"> Span with Class first
        </span>
    </body>
</html>
"""
 
# parsering string to HTML
soup = BeautifulSoup(markup, 'html.parser')
 
# printing tags with given class name
for i in soup.find_all(class_="first"):
    print(i.name)

Producción:

div
p
span

Ejemplo 2: Encontrar todas las etiquetas de una clase de CSS en particular desde una URL.

Python3

# importing module
from bs4 import BeautifulSoup
import requests
 
URL = "https://www.geeksforgeeks.org/"
html = requests.get(URL)
 
# parsering string to HTML
soup = BeautifulSoup(html.content, "html5lib")
 
# printing tags with given class name
for i in soup.find_all(class_="article--container_content"):
    print(i.name)

Producción:

div

Publicación traducida automáticamente

Artículo escrito por maheswaripiyush9 y traducido por Barcelona Geeks. The original can be accessed here. Licence: CCBY-SA

Deja una respuesta

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *