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 *NouvelObs*](https://programme-tv.nouvelobs.com/programme-free/categorie-film/) * Retirer les chaînes auxquelles vous n'avez pas accès * Trouver les notes des films sur [*TMDb*](https://www.themoviedb.org/) (*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](https://git.djib.fr/djib/FreeboxMoviePlanner/raw/branch/master/screenshot.png) Installation --- ### À partir de l'exécutable ~~[Téléchargez](https://git.djib.fr/djib/FreeboxMoviePlanner/releases) le fichier qui correspond à votre système d'exploitation (Linux ou Windows). Extrayez ensuite ce fichier à l'emplacement de votre choix.~~ L’exécutable n’est plus valable car il utilisait une ancienne version du site de Télé 7 Jours. Si une nouvelle version vous intéresse, n’hésitez pas à [le demander dans un ticket](https://git.djib.fr/djib/FreeboxMoviePlanner/issues). ### À 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. ```bash git clone --recurse-submodules https://git.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](https://www.themoviedb.org/account/signup) sur leur site et de [demander une clef API](https://www.themoviedb.org/settings/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 --- ```shell 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 -b, --debug Display even 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. ```