Vérifie quels films de votre watchlist Letterboxd sont disponibles en streaming (Netflix, Canal+) en France, via l'API TMDB.
Fichier Letterboxd détecté : /Users/you/Downloads/watchlist-2024-06-01.csv
Recherche des disponibilités streaming: 100%|████████| 120/120 [01:23<00:00, 1.44film/s]
Films de votre watchlist disponibles en streaming :
| Titre | Année | Netflix | Canal+ |
|-----------------------|-------|---------|--------|
| Inception | 2010 | X | |
| The Substance | 2024 | X | X |
| Anatomy of a Fall | 2023 | | X |
- Python 3.9+
- Un compte TMDB (gratuit) pour obtenir une clé API
- Une watchlist exportée depuis Letterboxd
git clone https://github.com/votre-username/watchlist-availability.git
cd watchlist-availability
python3 -m venv .venv
source .venv/bin/activate # Windows : .venv\Scripts\activate
pip install -r requirements.txt- Copiez le fichier
.env.example:cp .env.example .env
- Éditez
.envet renseignez votre clé API TMDB :Obtenez une clé gratuite sur themoviedb.org/settings/api.TMDB_API_KEY=votre_cle_ici
- Connectez-vous sur letterboxd.com
- Allez dans Profil → Importer & Exporter → Exporter vos données
- Décompressez l'archive et placez le fichier
watchlist.csvdans votre dossierDownloadsen le renommant au formatwatchlist-YYYY-MM-DD.csv(ex.watchlist-2024-06-01.csv)
Le script détecte automatiquement le fichier le plus récent correspondant à watchlist-*.csv.
python watchlist_availability.pyModifiez le dictionnaire STREAMING_TARGETS dans watchlist_availability.py
pour ajouter ou retirer des plateformes.
Les identifiants de fournisseurs sont disponibles via l'API TMDB :
STREAMING_TARGETS = {
"Netflix": "nfx",
"Canal+": "cpl",
"Disney+": "dnp",
"Amazon": "amp",
"Apple TV+": "atp",
}Pour changer le pays, modifiez la variable COUNTRY (code ISO 3166-1 alpha-2, ex. "BE", "CH").
pytest tests/ -vLes tests sont entièrement mockés — aucune clé API réelle n'est requise.
watchlist-availability/
├── watchlist_availability.py # Script principal
├── tests/
│ └── test_watchlist.py # Suite de tests pytest (27 tests)
├── .env.example # Template de configuration
├── .gitignore
├── requirements.txt
└── README.md
MIT