scripts/mapillary_sequences_userscript/README.md

3.9 KiB

Export en masse de photos de Mapillary vers panoramax

Quand tout est déjà installé:

source secrets_variables.sh
username="mon_compte"
bash find_user_id.sh $username
# ce qui crée un fichier out_mon_compte.json
# on va chercher ensuite les numéros de séquence à partir des identifiants de couverture d'image
python3 get_sequences_of_username.py --username="$username" --dev_token="$MAPILLARY_DEV_TOKEN" --max_sequence=9999
# ce qui donne un fichier sequences_mon_compte.txt
# que l'on convertit en script bash à utiliser avec le writer.py du dépot https://github.com/Stefal/mapillary_download.git
python3 text_array_to_download_script.py --username=eric_s --dev_token="$MAPILLARY_DEV_TOKEN"

on peut copier les scripts bash dans le dépot mapillary_export et les exécuter pour récupérer les séquences dans le dossier data, que l'on peut ensuite envoyer en masse vers panoramax par geovisio_cli

Installation et procédure de téléchargement

  • avoir un token développeur mapillary

  • se rendre sur la page mapillary d'un utilisateur dont on souhaite obtenir les identifiants de séquences de photos pour exporter les contenus des séquences photos, exemple: https://www.mapillary.com/app/user/gendy54

  • filtrer les requêtes en cherchant getlatestactivity

  • copier la valeur de cette requête en tant que cURL et la mettre dans le script curl_land.sh à la place de la requête curl existante

  • remplacer "200" par "10000", c'est le nombre de séquences à récupérer

  • lancer le script curl_land et mettre sa sortie dans out.json: bash curl_land.sh > out.json

  • copier secret_variables_examples.sh et remplir avec un token de développeur Mapillary (ça demande d'avoir toujours un compte Mapillary fonctionnel ou de demander à quelqu'un qui en a un)

  • cp secret_variables_examples.sh secret_variables.sh

  • editor secret_variables.sh

  • Le pseudo d'utilisateur mapillary et son numéro d'ID sont trouvables en allant sur leur page, dans la requete graphql latestActivity.

  • Recopiez la requete en tant que cURL et collez là en remplacement de celle dans curl_land.sh

  • Notez l'ID de l'utilisateur.

  • Lancez la récupération des identifiants de séquence.

  • bash find_user_id.sh boblennon

  • Ceci crée un fichier json: out_boblennon.json

  • On peut ensuite télécharger les séquences: source secrets_variables.sh && python3 get_sequences_of_username.py --username="gotpo" --dev_token="$MAPILLARY_DEV_TOKEN" --max_sequence=9999

  • Vous obtenez un script bash selon le nom d'utilisateur demandé (script_bash_get_sequences_for_user_boblennon.sh ) à lancer dans le dossier de mapillary_download.py du dépot https://github.com/Stefal/mapillary_download.git .

  • Pour ce faire, clonez le dépot mapillary_download et déplacez dedans les scripts bash générés par cet exportateur.

  • Si vous avez les libs (suivez les instructions d'installation de mapillary_download) vous devriez pouvoir récupérer vos séquences de photos mapillary. Et si votre connexion internet plante vous pourrez relancer ce script, ça n'ira pas retélécharger les photos déjà trouvées.

  • Vous pourrez profiter de vos photos dans le dossier data, elles sont rangées par utilisateur et par séquence.

Envoi vers Panoramax en masse

  • Pour envoyer en masse les séquences téléchargées, utilisez le script batch_geovisio_avec_token.sh , il faut le copier dans un dossier qui contient plusieurs séquences et avoir installé geovisio_cli avec python pip.
  • bash batch_geovisio_avec_token.sh
  • Si vous avez bien rempli le fichier secrets_variables.sh ça devrait envoyer vers panoramax, sur l'instance osm fr.
  • Au premier lancement du script il faudra vous identifier avec votre compte Panoramax, qui sur l'instance osm fr est relié à un compte osm.
  • Enjaillez!
cd data
cd $USERNAME
source secrets_variables.sh

for dir in */; do   dir=${dir%?}  ;   geovisio upload --api-url https://panoramax.openstreetmap.fr "$dir" --token=$TOKEN ; done