Skip to main content

Web Scraping

Introducción

El web scraping es una técnica que permite extraer datos de páginas web. Se puede utilizar para recopilar datos de sitios web para análisis, aprendizaje automático o cualquier otro propósito.

BeautifulSoup

BeautifulSoup es una biblioteca que permite analizar el código HTML de una página web. Se puede utilizar para extraer datos de las etiquetas HTML, como el texto, las imágenes, los enlaces y otros elementos.

Ejemplos

Ejemplo básico

El siguiente código muestra un ejemplo básico de web scraping con BeautifulSoup:

Python

import requests
from bs4 import BeautifulSoup

url = "https://www.python.org/"

response = requests.get(url)
soup = BeautifulSoup(response.content, "html.parser")

titulo = soup.find("title")
print(titulo.text)

Este código obtiene el título de la página web https://www.python.org/: https://www.python.org/.

Extracción de datos de tablas

El siguiente código muestra cómo extraer datos de una tabla con BeautifulSoup:

Python

import requests
from bs4 import BeautifulSoup

url = "https://www.worldometers.info/world-population/"

response = requests.get(url)
soup = BeautifulSoup(response.content, "html.parser")

tabla = soup.find("table")

filas = tabla.find_all("tr")

for fila in filas:
columnas = fila.find_all("td")
print(columnas[0].text, columnas[1].text)

Este código obtiene la población de los 10 países más poblados del mundo.

Extracción de datos de imágenes

El siguiente código muestra cómo extraer datos de una imagen con BeautifulSoup:

Python

import requests
from bs4 import BeautifulSoup

url = "https://upload.wikimedia.org/wikipedia/commons/thumb/a4/a4_paper_size.svg/1200px-a4_paper_size.svg.png"

response = requests.get(url)
image = response.content

with open("a4_paper_size.png", "wb") as f:
f.write(image)

Este código descarga la imagen del logo de Python.

Limitaciones

El web scraping puede ser una herramienta muy útil para recopilar datos de páginas web. Sin embargo, es importante tener en cuenta algunas limitaciones:

  • Las páginas web pueden cambiar con frecuencia, lo que puede hacer que el código de scraping se vuelva obsoleto.
  • Algunas páginas web pueden estar protegidas contra el web scraping.
  • El web scraping puede ser ilegal en algunos casos.

Conclusión

El web scraping es una técnica poderosa que puede utilizarse para recopilar datos de páginas web. Sin embargo, es importante utilizarlo de forma responsable y teniendo en cuenta las limitaciones.