A Python script to help you select the movies you want to record with your Freebox
You cannot select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
 
djib 9c4d01eba2 Fix an crash in conflict detection when no movie is selected 4 months ago
pyfbx@69ae89806d Fetch the list of available Channels from the Freebox API 4 years ago
.gitignore Display all movies with rating and summary 4 years ago
.gitmodules Fetch the list of available Channels from the Freebox API 4 years ago
FreeboxMoviePlanner.py Fix an crash in conflict detection when no movie is selected 4 months ago
Pipfile Added Pipenv 4 years ago
Pipfile.lock Added Pipenv 4 years ago
Readme.md Add the option to excluded movies available on local drive 3 years ago
config.template.json Make the program easier to use (auto configuration for the authentication token) 4 years ago
screenshot.png Add screenshot 4 years ago

Readme.md

FreeboxMoviePlanner

A few words in English

A Python script to help you select the movies you want to record with your Freebox, provided by Free, a french ISP. As such, the rest of this Readme will be in French.

Introduction

FreeMoviePlanner est un outil qui vous facilite la plannification d'enregistrements avec votre Freebox.

Concrètement, l'outil effectue les opérations suivantes :

  • Récupérer les film de la semaine à partir du planning Télé 7 Jours
  • Retirer les chaînes auxquelles vous n'avez pas accès
  • Trouver les notes des films sur TMDb (The Movie Database)
  • Exclure les films en dessous d'une certaine note (paramétrable)
  • Afficher les résumés des films et vous demander de sélectionner ceux qui vous intéressent.
  • Planifier les enregistrements sur votre Freebox.
  • Vous prévenir si des conflits sont identifiés pour que vous les résolviez depuis l'interface de votre Freebox.

FreeboxMoviePlanner en action

Installation

À partir de l'exécutable

Téléchargez le fichier qui correspond à votre système d'exploitation (Linux ou Windows).
Extrayez ensuite ce fichier à l'emplacement de votre choix.

À partir des sources

Pour utiliser FreeboxMoviePlanner à partir des sources, il vous faut Python, ainsi que les 3 packages suivants (à installer par exemple avec pip install [nom du packet]) :

  • beautifulsoup4
  • tmdbsimple
  • zeroconf

Il vous faut ensuite récupérer le code du projet, le plus simple étant en clonant le dépôt git.

git clone --recurse-submodules https://djib.fr/djib/FreeboxMoviePlanner.git

Configuration

Ensuite, il vous faut créer un fichier de conf config.json. Vous pouvez tout simplement renommer le fichier config.template.json.

Dans ce fichier vous devrez renseigner une clef API TMDb. Pour cela vous aurez besoin d'ouvrir un compte sur leur site et de demander une clef API.

Le fichier de config vous permet aussi de configurer la marge avant et après chaque enregistrement, ou la note en dessous de laquelle les films ne s'afficheront pas.

Exécution

L'outil devrait vous afficher rapidement le petit texte Working the magic, please wait… puis, après environ une minute (ou plus si votre réseau est lent), le détail des films.

À la première exécution, l'outil vous demandera aussi d'autoriser le script sur votre Freebox (Please go to your Freebox and accept the authentication.)
À ce moment, l'affichage de votre boîtier Freebox vous demandera de valider cette demande d'authentification. Vous devez donc physiquement valider l'accès à partir de votre box (sur la V6, il s'agit de presser la flèche de droite).

Notez que les films de Canal+ s'afficheront par défaut. La Freebox indique que la chaîne est disponible, probablement car elle est parfois visible en clair. Vous pouvez forcer son exclusion avec le paramètre -e Canal+.

Enjoy!

Documentation

usage: FreeboxMoviePlanner.py [-h] [-d] [-l] [-e EXCLUDE] [-x EXCLUDE_DIRECTORY]

Schedule movie recordings on your Freebox

optional arguments:
  -h, --help            show this help message and exit
  -d, --day             Search movies for current day only instead of a full week
  -l, --log             Display more log messages
  -e EXCLUDE, --exclude EXCLUDE
                        Exclude the following Channel
  -x EXCLUDE_DIRECTORY, --exclude-directory EXCLUDE_DIRECTORY
                        Do not display movies available in the following directory. This will prevent you from recording the same movie multiple times.