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