Le script récupère les données via l'API https://api.efs.sante.fr/carto-api/swagger/ mise à disposition par l'EFS.
Son principal intérêt est d'automatiser la sauvegarde des données téléchargées vers https://www.data.gouv.fr/fr/datasets/don-du-sang-lieux-et-horaires-des-collectes/ régulièrement afin de les rendre accessibles à un public non informaticien, et même en cas d'indisponibilité du serveur de l'EFS.
Pour cela, il faut une clef API de data.gouv.fr (qui est secrète). Le mode d'emploi est :
- créer un fichier
params.pyau même niveau que le codemain.py - dans ce fichier, saisir la clef au format
X_API_KEY = "ma_clef_api"
Configurer ensuite son serveur pour exécuter le script périodiquement.
Sur Ubuntu 18.04, Python3 et Git sont déjà installés.
sudo apt-get update
sudo apt-get upgrade
cd /srv
git clone https://github.com/lou-dupont/EFS.gitInstallation du module pandas (pour faciliter la génération du fichier Excel).
sudo apt-get install python3-pip
sudo pip3 install pandas
sudo pip3 install openpyxlCréer le fichier de paramètres, puis lancer avec
python3 main.pyPour une exécution toutes les heures, ajouter la ligne suivante au fichier /etc/crontab
01 * * * * root python3 /srv/EFS/main.py >/dev/null 2>&1