Skip to content

gianluca-mascolo/troverai

Repository files navigation

TroveRAI

TroveRAI è uno strumento da riga di comando per consultare la programmazione TV della RAI.

Vibe Coding

Questo progetto nasce come esperimento di vibe coding: tutto il codice Python è stato prodotto interamente tramite Claude AI utilizzando Claude Code.

Requisiti

  • Python >= 3.10
  • Poetry (per la gestione delle dipendenze)

Installazione

git clone https://github.com/gianluca-mascolo/troverai.git
cd troverai
poetry install

Utilizzo

Nota: TroveRAI non richiede autenticazione. Le API del palinsesto RaiPlay sono pubbliche.

Cosa c'è in onda adesso

poetry run troverai --ora

Palinsesto di un canale

# Palinsesto di oggi
poetry run troverai --canale rai-1

# Palinsesto di domani
poetry run troverai --canale rai-2 --data domani

# Palinsesto serale (dalle 20:00)
poetry run troverai --canale rai-3 --dalle 20:00

Prima serata

Mostra la programmazione serale (20:00-23:00) dei canali principali:

poetry run troverai --prima-serata

Ricerca programmi

poetry run troverai --cerca "film"
poetry run troverai --cerca "TG" --data domani

Filtra per tipologia e genere

È possibile filtrare i programmi per tipologia (--tipo) e/o genere (--genere):

# Solo film su Rai Movie
poetry run troverai --canale rai-movie --tipo Film

# Solo commedie
poetry run troverai --canale rai-movie --genere Commedia

# Film drammatici
poetry run troverai --canale rai-movie --tipo Film --genere Drammatico

# Film in onda adesso su tutti i canali
poetry run troverai --ora --tipo Film

# Film in prima serata
poetry run troverai --prima-serata --tipo Film

Tipologie disponibili: Film, ProgrammiTv, SerieTV

Generi disponibili: Commedia, Drammatico, AzioneAvventura, Thriller, Fantascienza, Horror, Animazione, Documentario, e altri.

Nota: I filtri non sono case-sensitive (film e Film sono equivalenti).

Lista canali disponibili

poetry run troverai --canali

Opzioni

Opzione Abbreviazione Descrizione
--ora -o Mostra cosa è in onda adesso
--canale NOME -c NOME Palinsesto di un canale specifico
--canali Lista dei canali disponibili
--prima-serata -p Prima serata su Rai 1/2/3
--cerca TESTO -s TESTO Cerca un programma per nome
--data DATA -d DATA Data (oggi/domani/ieri/dd-mm-yyyy)
--dalle HH:MM Filtra programmi a partire da un orario
--alle HH:MM Filtra programmi fino a un orario
--tipo TIPO -t TIPO Filtra per tipologia (Film, ProgrammiTv, SerieTV)
--genere GENERE -g GENERE Filtra per genere (Commedia, Drammatico, ecc.)
--compatto Formato di output compatto
--json Output in formato JSON (dati API grezzi)

Formati data supportati

  • oggi, today - data odierna
  • domani, tomorrow - giorno successivo
  • ieri, yesterday - giorno precedente
  • dd-mm-yyyy o dd/mm/yyyy - data specifica
  • +1, -2 - offset rispetto a oggi

Disabilitare i colori

Per disabilitare l'output colorato, imposta la variabile d'ambiente NO_COLOR:

NO_COLOR=1 poetry run troverai --ora

Output JSON

Con il flag --json è possibile ottenere l'output in formato JSON, contenente i dati grezzi delle API RaiPlay senza alcuna semplificazione o filtro.

# Palinsesto completo in JSON
poetry run troverai --canale rai-1 --json

# Programmi in onda adesso in JSON
poetry run troverai --ora --json

# Lista canali in JSON
poetry run troverai --canali --json

# Ricerca in JSON
poetry run troverai --cerca "film" --json

L'output JSON può essere elaborato con strumenti come jq:

# Estrai solo i nomi dei programmi in prima serata
poetry run troverai --prima-serata --json | jq '.. | .name? // empty' | head -10

Struttura del progetto

troverai/
├── src/troverai/       # Codice sorgente principale
│   ├── cli.py          # Implementazione CLI
│   ├── __main__.py     # Entry point per python -m
│   └── __init__.py     # Metadata del package
├── SperimenteRAI/      # Script sperimentali (non necessari per il CLI)
├── pyproject.toml      # Configurazione Poetry
└── README.md

Licenza

Questo progetto è distribuito sotto licenza GPL-3.0-or-later.

Autore

Gianluca Mascolo

About

Script Python per controllare la programmazione dei canali TV RAI (Rai1, Rai2, Rai3, RaiPlay, ...)

Topics

Resources

License

Stars

Watchers

Forks

Contributors

Languages