Un feed RSS (Really Simple Syndication) non è altro che un piccolo file di testo in formato XML. Viene spesso utilizzato dai siti per presentare un "anteprima" delle notizie che vengono pubblicate da loro; queste anteprime in genere sono un riassunto dell'articolo vero e proprio, che poi può essere consultato nella sua interezza accedendo al sito web attraverso uno specifico link, anch'esso fonito nel feed RSS.
Il sistema più veloce per farlo è quello di controllare il suo feed RSS/Atom per vedere quali sono stati gli ultimi articoli pubblicati.

Grazie ad un'eccellente e semplice libreria per Python, chiamata feedparser questo controllo può essere fatto con poche righe di codice.

Installiamo la libreria

Per installare la libreria basta digitare da terminale il comando:

pip install feedparser

Come usare la libreria

Creiamo adesso un piccolo script che riporti le ultime notizie dal feed RSS del sito "Il fatto quotidiano":

import feedparser

# Apriamo il feed
feed = feedparser.parse("https://www.ilfattoquotidiano.it/feed/")

# Per ogni articolo nel feed
for articolo in feed.entries:
    
    # Ottiene titolo, sommario e link all'articolo completo
    titolo = articolo["title"]
    sommario = articolo["summary"]
    link = articolo["link"]
    
    # Scrive titolo e sommario dell'articolo
    print("{}\n---\n{}\n\n".format(titolo, sommario))

Vediamo brevemente la logica dietro il funzionamento di questo codice:

  1. (Righe 1-4) Viene importata la libreria feedparser e viene creata una nuova istanza della classe feedparser.parse. Come argomento passo l'URL al feed RSS che intendo aprire. Non appena ricevuto, feedparser provvederà subito a scaricare il feed dall'indirizzo inserito.
  2. (Righe 6-15) Per ogni articolo trovato, ne memorizzo il titolo, il sommario ed il link all'articolo completo; poi li stampo sullo schermo.

Tutto qua. Semplice, no?
Lanciatelo ed otterrete un output simile a questo:

Telecamere nascoste, ma spente, tra i sedili dei voli American Airlines e Singapore Airlines
---
<p>Alcuni viaggiatori si sono accorti che sugli schermi per l'intrattenimento in volo di alcuni aerei American Airlines e Singapore Airlines sono presenti telecamere la cui presenza non è dichiarata. Gli operatori confermano, ma assicurano che non sono attive.</p>
<p>L'articolo <a rel="nofollow" href="https://www.ilfattoquotidiano.it/2019/02/22/telecamere-nascoste-ma-spente-tra-i-sedili-dei-voli-american-airlines-e-singapore-airlines/4990644/">Telecamere nascoste, ma spente, tra i sedili dei voli American Airlines e Singapore Airlines</a> proviene da <a rel="nofollow" href="https://www.ilfattoquotidiano.it">Il Fatto Quotidiano</a>.</p>

Ovviamente per brevità (e per evitare la causa legale dal fatto di cui sto ricopiando i riassunti), in questa sede mi sono limitato a riportare un solo articolo. Ma voi potete estrapolare tutti i risultati pubblicati dal fatto nel loro file RSS.

Per altri esempi di utilizzo vi rimando a questo esperimento che ho postato su GitHub: http://github.com/fmaida/feedreader-cli