# defi-rendu-legifrance Participation au défi de la semaine de ribt du 5/11/2018 Aperçu : - lien[https://moriya.zapto.org:8000/legifrance] Générer une image = Installer les dépendances - Commencez par installer python3 sur votre machine. Vous pouvez installer git pour cloner le répo, ou télécharger l'archive. Une fois dans le dossier des sources, lancez la commande qui correspond à votre installation. ```BASH pip3 install -r requirements.txt ``` ou ```BASH pip3 install --user -r requirements.txt ``` ou ```BASH python3 -m pip install --user -r requirements.txt ``` selon votre distribution et OS. Lancer le script - il y a deux scripts actuellement disponibles : `fetch.py` ainsi que `plotgen.py` sachant que `fetchbs.py` a été abandonné. (version utilisant beautifulsoup) Le script `fetch.py` accedera au site de légifrance, puis traitera les données pour les rendre utilisable s'il est lancé. Le script `plotgen.py` utilisera le script `fetch.py` pour générer une image matplotlib puis en utilisant mplleaflet, l'intégrer dans un fichier html (qui sera alors ouvert automatiquement dans le navigateur). Utiliser les scripts comme une bibliothèque - Première étape, importer le script : ```PYTHON import fetch ``` deux fonctions à votre disposition : ```PYTHON fetch.runfetch(*, url=url) """Découpe la page légifrance et retourne un dictionnaire de la forme : {'id','commune','site','departement','zone','ministere','aerozone'} (L'url par défaut est celle de l'article sur légifrance) """ ``` ```PYTHON fetch.fetch(*, url=url) """ execute fetch.runfetch puis traite l'information pour la rendre utilisable (notamment la clef 'zone') et retourne un dictionnaire de la même forme. """ ``` Pour le deuxième script, même principe pour l'import : ```PYTHON import plotgen ``` Mais cette fois-ci qu'une fonction : ```PYTHON genplot(diclist, *, resolution) """ retourne un module (matplotlib.pyplot) généré à partir du dictionnaire mis en entrée. Il est sous la forme de ce que retourne la fonction fetch.fetch Le mot-clef resolution définit la résolution des cercles (le nombres de points du polygone) """ ```