Bellissimo raschietto per zuppa

Recupera e analizza l'HTML tramite micropip/richieste.

Prova nell'editor

Panoramica

Mentre le richieste normalmente richiedono un socket del sistema operativo locale,PyRunmappa la funzionalità delle richieste sull'API di recupero del browser.

Ciò consente l'analisi delle pagine CORS aperte.

Codice e output di esecuzione

Raschia in modo dinamico i titoli delle notizie più importanti di 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")
Uscita terminale
Fetching https://news.ycombinator.com...

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

2. ...
   Link: ...

Implementazione passo dopo passo

  • Raschiamento Web
  • Aggregazione dei dati
  • Controllo SEO

Domande frequenti

Perché una richiesta a volte fallisce?

Se un sito ha intestazioni CORS rigorose che impediscono le operazioni di recupero del browser, fallirà. News.ycombinator attualmente consente la lettura aperta CORS.

Argomenti correlati