feat: intégration TMDB — poster, backdrop, lien fiche
Docker / docker (push) Successful in 1m21s

- tmdb.py : recherche TMDB par title+subtitle, matching fuzzy,
  cache SQLite 30 jours (table tmdb_cache dans arte_dl.db)
- arte_api.py : enrichissement concurrent (5 workers) après résolution
  des IDs ; ajoute tmdb_id, tmdb_poster, tmdb_backdrop au concert
- app.js : backdrop TMDB utilisé comme thumbnail de carte quand dispo ;
  subtitle affiché sous le titre de carte ; poster dans la modal ;
  lien direct vers la fiche TMDB
- docker-compose.yml : passage de TMDB_API_KEY au container

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
This commit is contained in:
dev
2026-04-26 13:15:27 +02:00
parent 16736e2e7a
commit 9a5e356238
6 changed files with 195 additions and 7 deletions
+14 -2
View File
@@ -86,8 +86,13 @@
<span class="modal-duration-badge" id="modal-dur-badge"></span>
</div>
<div class="modal-body">
<h2 class="modal-title" id="modal-title"></h2>
<p class="modal-meta" id="modal-meta"></p>
<div class="modal-head">
<div class="modal-head-text">
<h2 class="modal-title" id="modal-title"></h2>
<p class="modal-meta" id="modal-meta"></p>
</div>
<img class="modal-poster" id="modal-poster" src="" alt="" hidden />
</div>
<p class="modal-desc" id="modal-desc"></p>
<div class="modal-actions">
<button class="btn-download" id="btn-download">
@@ -104,6 +109,13 @@
</svg>
Voir sur Arte
</a>
<a class="btn-watch" id="btn-tmdb" href="#" target="_blank" rel="noopener" hidden>
<svg viewBox="0 0 20 20" fill="none" width="14" height="14">
<circle cx="10" cy="10" r="7" stroke="currentColor" stroke-width="1.5"/>
<path d="M7 10h6M10 7v6" stroke="currentColor" stroke-width="1.5" stroke-linecap="round"/>
</svg>
TMDB
</a>
</div>
<div class="dl-progress-wrap" id="dl-progress-wrap" hidden>
<div class="dl-progress-bar">