Web Scraping con Python
Web scraping es la tecnica de extraer datos de sitios web automaticamente.
Instalacion
pip install requests beautifulsoup4
En Termux:
pkg install python -y
pip install requests beautifulsoup4
Script basico
import requests
from bs4 import BeautifulSoup
url = "https://news.ycombinator.com"
respuesta = requests.get(url)
soup = BeautifulSoup(respuesta.text, "html.parser")
# Extraer titulos
titulos = soup.find_all("span", class_="titleline")
for i, t in enumerate(titulos[:10], 1):
print(f"{i}. {t.get_text()}")
Extraer links de una pagina
links = soup.find_all("a")
for link in links:
href = link.get("href")
if href and href.startswith("http"):
print(href)
Guardar datos en CSV
import csv
with open("datos.csv", "w", newline="", encoding="utf-8") as f:
writer = csv.writer(f)
writer.writerow(["titulo", "link"])
for item in resultados:
writer.writerow([item["titulo"], item["link"]])
print("Guardado en datos.csv")
Buenas practicas
headers = {"User-Agent": "Mozilla/5.0"}
respuesta = requests.get(url, headers=headers)
Uso etico
Usa web scraping para aprender, investigar o automatizar tus propios datos. No lo uses para violar terminos de servicio.