Le blog francophone consacré
aux technologies Esri

Les 3 façons d'accéder à Jupyter Notebook et à l'API Python ArcGIS

Depuis 2016, Esri propose une API Python pour accéder et automatiser la plupart des capacités de votre portail ArcGIS. Via des scripts Python, vous pouvez créer, gérer et analyser les ressources de votre SIG distribué ainsi que les utilisateurs associés. Un des moyens les plus efficaces pour utiliser cette API c'est l'utilisation de Jupyter Notebook. En quelques années, cette interface est clairement devenue un outil indispensable pour les géomaticiens, les administrateurs et les Data Scientists.

  
Sa simplicité de mise en oeuvre et sa capacité à intégrer le plus important écosystème de librairies Python (Projet Pandas) ont fait de Jupyter Notebook, l'outil idéal pour l'utilisation et le partage de scripts Python. En intégrant l'API Python ArcGIS dans Jupyter Notebook, c'est une galaxie de nouvelles possibilités d'analyse, de gestion et d'administration de contenus qui s'ouvre à vous et qui va bien au delà des usages classiques d'un SIG.

Si vous n'êtes pas encore très familier avec cette API Python ArcGIS ou cette interface de scripting Jupyter Notebook, je vous propose de voir 3 façons d'accéder à cet environnement.

 
1. Accéder à l'API via la sandbox Esri

La manière la plus simple d'accéder à l'API Python ArcGIS consiste à utiliser la sandbox mise à disposition d'Esri à l'url suivante: notebooks.esri.com. Cette approche est idéale pour découvrir l'interface de Jupyter Notebook et les bases de l'API Python ArcGIS, sans avoir à installer quoi que ce soit sur votre poste ou dans votre infrastructure. Il vous suffira simplement de disposer d'une connexion internet et de pouvoir accéder à un portail ArcGIS Online ou ArcGIS Enterprise.



On notera tout de même quelques limites à l'usage de cette sandbox. Par exemple, vous ne pourrez pas sauvegarder de manière pérenne vos notebooks puisque votre session sera réinitialisée à chaque rechargement de la page de la sandbox. Pour pouvoir conserver votre notebook, vous devrez le télécharger en local sur votre poste à l'aide de la commande "Download as > Notebook".


  
2. Installer l'API Python ArcGIS à partir d'ArcGIS Pro

Si vous disposez d'ArcGIS Pro 2.1 (ou une version supérieure), le gestionnaire de paquetages Python "Conda" est automatiquement installé et le paquetage de l'API Python ArcGIS est également installé. Vous 'avez donc rien à faire de particulier pour pouvoir exploiter les capacités de l'API dans vos scripts Python (qu'ils soient exécutés depuis l'application ArcGIS Pro ou à l'extérieur de l'application). Pour vérifier la présence de l'API Python ArcGIS, il suffit d'afficher l'onglet "Python" depuis les paramètres d'ArcGIS Pro. Vous devez y retrouver le paquetage "arcgis".


Si vous disposez d'une version d'ArcGIS Pro plus ancienne (1.4 à 2.0), vous pouvez installer le paquetage de l'API Python ArcGIS très simplement en vous rendant dans l'onglet "Python" des paramètres d'ArcGIS Pro puis en cliquant sur "Ajouter des paquetages" et en recherchant le paquetage nommé "arcgis". Il suffira ensuite de cliquer sur le bouton "Installer" pour installer l'API Python ArcGIS sur votre poste.


3. Installer Jupyter Notebooks et l'API Python ArcGIS via Anaconda

Une autre manière d'installer l'API Python ArcGIS consiste tout simplement à l'installer de manière autonome sur votre poste (sans ArcGIS Pro ou autre composant ArcGIS). Pour cela, il vous suffira d'installer préalablement le gestionnaire de paquetage Python "Conda" qui fait partie de la distribution Anaconda for Python très couramment utiliser par la communauté Python.

Anaconda est une distribution de Python d'une taille assez importante mais qui présentent l'énorme avantage de donner accès plus d'une centaine de paquetages Python dédiés à la Data Science et au Machine Learning utilisable dans Jupyter Notebook. Anaconda contient également des modules très intéressant comme "requests" permettant de travailler facilement avec des requêtes HTTP.

Une fois que vous avez installé "Anaconda for Python 3.x", vous aurez accès Jupyter Notebook simplement en tapant: jupyter notebook dans une invite de commande Windows (idem sur MacOS ou Linux).

  
  
Maintenant que Jupyter Notebook fonctionne, vous pouvez quitter l'application. Il ne vous reste alors qu'à installer l'API Python ArcGIS à l'aide de la commande suivante: conda install -c esri arcgis

Répondez ensuite aux questions et instructions qui s'affichent dans la console pour finaliser l'installation. Vous pourrez alors tester le bon fonctionnement de l'API Python ArcGIS en lançant Jupyter Notebook puis en exécutant des instructions comme celles-ci:


Cet exemple de code permet de créer un objet GIS, point de départ représentant votre portail (ici ArcGIS Online) dans l'API Python ArcGIS. Le code récupère ensuite l'utilisateur nommé "glavenu" et affiche ensuite ses propriétés.

Vous êtes maintenant prêts à travailler avec l'API Python ArcGISL Pour bien démarrer je vous recommande la documentation en ligne et en particulier les exemples de Notebooks proposés par Esri. Je reviendrai pour ma part dans arcOrama sur quelques notions de base ainsi que sur des exemples de Notebooks que je publierai dans de futurs articles :-)
   

Partager cet article:

Rejoindre la discussion

    Les commentaires à propos de cet article:

2 comments :

Fabrice Leray a dit…

Merci Gaëtan.

Pour la dernière méthode, personnellement j'utilise Mini-cassette,'bien plus léger qu'Anaconda.

Pour voir les avantages/limitations de ces 2 solutions :
https://stackoverflow.com/questions/45421163/anaconda-vs-miniconda

Fabrice

Fabrice Leray a dit…

Miniconda évidemment et non pas "Mini-cassette" :-)