Hermoso raspador de sopa

Obtenga y analice HTML mediante micropip/solicitudes.

Pruébelo en el editor

Descripción general

Si bien las solicitudes normalmente requieren un socket de sistema operativo local,PyRunasigna la funcionalidad de solicitudes a través de la API de recuperación del navegador.

Esto permite el análisis de páginas CORS abiertas.

Código y salida de ejecución

Elimina dinámicamente los titulares de las principales historias de Hacker News.

import requests
from bs4 import BeautifulSoup

# PyRun uses micropip internally to make requests 
# through the browser's fetch API
url = 'https://news.ycombinator.com'
print(f"Fetching {url}...\n")

response = requests.get(url)
soup = BeautifulSoup(response.text, 'html.parser')

print("=== Hacker News Top Stories ===")
# Find the story titles
titles = soup.find_all('span', class_='titleline', limit=5)

for i, title in enumerate(titles):
    link = title.find('a')
    text = link.text
    href = link.get('href')
    print(f"{i+1}. {text}")
    print(f"   Link: {href}\n")
Salida terminal
Fetching https://news.ycombinator.com...

=== Hacker News Top Stories ===
1. ...
   Link: ...

2. ...
   Link: ...

Implementación paso a paso

  • Raspado web
  • Agregación de datos
  • Auditoría SEO

Preguntas frecuentes

¿Por qué falla ocasionalmente una solicitud?

Si un sitio tiene encabezados CORS estrictos que impiden las operaciones de búsqueda del navegador, fallará. News.ycombinator actualmente permite CORS de lectura abierta.

Temas relacionados