Afficher/cacher Sommaire
Cartographie python
virtualenv est un outil utilisé pour créer un espace de travail isolé pour une application Python. Il présente divers avantages tels que la possibilité d’installer des modules localement, d’exporter un environnement de travail et d’exécuter un programme Python dans cet environnement
OsmScripts
Python 3.3+ est livré avec un module appelé venv.
$HOME/media
identique /srv/media
Environnement python
Créer un dossier osm_python
mkdir $HOME/media/osm-new/osm_python
cd $HOME/media/osm-new/osm_python
Pour créer un environnement, utilisez la commande python -m venv <environment name>
Créer un environnement pour l’application
python3 -m venv OsmScripts
activer l’environnement virtuel
source OsmScripts/bin/activate
On arrive sur un prompt : (OsmScripts) [yann@pc1 osm_python]$
Mettre à jour pip dans l’environnement
python -m pip install --upgrade pip
Installer des paquets à l’aide de pip
Install packages in a virtual environment using pip and venv
Lorsque votre environnement virtuel est activé, vous pouvez installer des paquets. Utilisez la commande pip install pour installer des paquets.Par exemple, installons la bibliothèque Requests à partir de l’index des paquets Python (PyPI) : python3 -m pip install requests
Rechercher et installer les paquets gpxpy
et geopy
sur https://pypi.org/ qui sont utilisés dans le projet
pip install gpxpy
pip install geopy
Wing Personal projet OsmScripts
Dans le dossier $HOME/media/osm-new
Projet –> Nouveau projet
{width=”400”}
{width=”400”}
{width=”500”}
{width=”400”}
Projet : $HOME/media/osm-new/osm_python/OsmScripts.wpr
Structure
[yann@pc1 ~]$ tree -L 2 -d /srv/media/osm-new/
/srv/media/osm-new/
├── archives
├── css
│ └── images
├── file
│ ├── photos
│ └── tmp
├── fonts
├── images
├── js
└── osm_python
└── OsmScripts
Le script python
Le script python $HOME/media/osm-new/osm_python/OsmScripts/tracesgpxnew.py
Etendre Réduire
Utilisation ‘tracesgpxnew.py’
Le lancement du script tient compte de l’environnement python, du chemin complet du script et du paramètre dossier qui contiendra le(s) fichiers gpx
/srv/media/osm-new/osm_python/OsmScripts/bin/python /srv/media/osm-new/osm_python/OsmScripts/tracesgpxnew.py /srv/media/osm-new/file
Synchronisation distante
Après intégration des nouveaux fichiers gpx par le script python, faire une mise à jour des dossiers distants par rsync
#!/bin/bash
echo "-----------------------------------------------
Synchro osm-new avec xoyize.xyz"
rsync -avz --delete --exclude 'archives' --exclude 'osm_python' --rsync-path="sudo rsync" -e "ssh -p 55249 -i /home/yann/.ssh/xoyize-ed25519 -o StrictHostKeyChecking=no -o UserKnownHostsFile=/dev/null" /srv/media/osm-new yako@xoyize.xyz:/home/yunohost.multimedia/share/Divers/
echo "-----------------------------------------------
Synchro osm-new avec nfs sharenfs/multimedia/Divers/osm-new"
rsync -avz --delete --exclude 'archives' --exclude 'osm_python' /srv/media/osm-new /home/yann/sharenfs/multimedia/Divers/
exit
Exécuter sh /srv/media/osm-new/osm-new-synchro.sh
Alias local ‘tracesgpx’
Alias ‘tracesgpx’ dans .bashrc
alias tracesgpx="/srv/media/osm-new/osm_python/OsmScripts/bin/python /srv/media/osm-new/osm_python/OsmScripts/tracesgpxnew.py /srv/media/osm-new/file"
Ajout synchronisation à l’alias ‘tracesgpx’ dans .bashrc
alias tracesgpx="/srv/media/osm-new/osm_python/OsmScripts/bin/python /srv/media/osm-new/osm_python/OsmScripts/tracesgpxnew.py /srv/media/osm-new/file; sh /srv/media/osm-new/osm-new-synchro.sh"