PROCÉDURE
L’API Python d’ArcGIS est distribuée via Conda, un système de gestion de l’environnement et un paquetage apprécié des développeurs Python. Le Guide de l’API Python d’ArcGIS (disponible en anglais) indique la méthode d’installation recommandée. Les clients souhaitant installer cette API sur des ordinateurs non reliés en réseau ou sur des stations de travail appartenant à un réseau isolé, doivent se référer aux instructions d’installation de la section Offline install (Installation ligne) du guide.
Pour les utilisateurs expérimentés souhaitant utiliser l’API à partir de Miniconda (autrement dit, à partir de l’invite de commande Python d’ArcGIS Pro, hébergée par Miniconda) dans des environnements déconnectés, le mieux est de créer un canal Conda local sur site et d’installer l’API à partir de ce canal. Le canal local implique un nombre fini de dépendances exigées par l’API. Les utilisateurs peuvent décider de télécharger et d’héberger autant de paquetages Python supplémentaires qu’ils le souhaitent dans ce canal.
Cet article explique comment créer un canal Conda hors ligne pour l’API Python d’ArcGIS. Vous devez disposer d’une part, d’un ordinateur avec une connexion Internet et sur lequel Anaconda est installé et d’autre part, d’un environnement d’exécution Python 3.5 dans lequel le paquetage requests est installé.
$ conda install conda-build $ conda install requestsLe nouvel environnement est désormais actif et prêt.
$ python download_dependencies.pyLe script a pour effet de télécharger toutes les dépendances du canal en ligne anaconda.org et de les stocker au niveau local. L’exécution du script produit une sortie similaire à celle-ci :
Using environment list file: .\ arcgis_v1_dependencies.txt Getting _nb_ext_conf-0.3.0-py35_0.tar.bz2 Downloaded win-64\_nb_ext_conf-0.3.0-py35_0.tar.bz2 Downloaded win-32\_nb_ext_conf-0.3.0-py35_0.tar.bz2 Downloaded linux-64\_nb_ext_conf-0.3.0-py35_0.tar.bz2 Downloaded linux-32\_nb_ext_conf-0.3.0-py35_0.tar.bz2 Error with download: osx-32 : Downloaded osx-64\_nb_ext_conf-0.3.0-py35_0.tar.bz2 Getting anaconda-client-1.5.5-py35_0.tar.bz2 Downloaded win-64\anaconda-client-1.5.5-py35_0.tar.bz2 Downloaded win-32\anaconda-client-1.5.5-py35_0.tar.bz2 Downloaded linux-64\anaconda-client-1.5.5-py35_0.tar.bz2 Downloaded linux-32\anaconda-client-1.5.5-py35_0.tar.bz2 Error with download: osx-32 : Downloaded osx-64\anaconda-client-1.5.5-py35_0.tar.bz2 ....Au fur et à mesure du téléchargement, le script crée des dossiers au sein de la structure suivante :
\\channel_root\ \linux-64 \linux-32 \osx-64 \osx-32 \win-64 \win-32 \noarch
$ conda index \\path\to\channel\win-64 $ conda index \\path\to\channel\win-32 $ conda index \\path\to\channel\linux-64 $ conda index \\path\to\channel\linux-32 $ conda index \\path\to\channel\osx-64 $ conda index \\path\to\channel\osx-32 $ conda index \\path\to\channel\noarchL’exécution des commandes produit une sortie similaire à celle-ci :
$ conda index \\path\to\channel\win-64 updating index in: \\path\to\channel\win-64 updating: pywin32-220-py35_1.tar.bz2 updating: nb_conda_kernels-2.0.0-py35_0.tar.bz2 updating: requests-2.12.1-py35_0.tar.bz2 updating: pyzmq-16.0.2-py35_0.tar.bz2 updating: _nb_ext_conf-0.3.0-py35_0.tar.bz2 updating: ipywidgets-5.2.2-py35_0.tar.bz2 updating: decorator-4.0.10-py35_0.tar.bz2 ....Une fois cette étape terminée, transférez le dossier racine sur un emplacement réseau ou un serveur web, ou utilisez-le localement en guise de canal Conda local.
$ conda search --channel file://path/to/channel --override-channelsVoici à quoi ressemblerait cette instruction sous Windows :
$ conda search --channel D:/code/arcgis_offline_downloads/channel --override-channelsLa commande produit un résultat similaire à celui-ci :
$ conda search --channel file://offline/arcgis_channel/channel --override-channels Fetching package metadata ..... _nb_ext_conf 0.3.0 py35_0 file://offline/arcgis_channel/channel anaconda-client 1.5.5 py35_0 file://offline/arcgis_channel/channel arcgis 0.9 py35_1 file://offline/arcgis_channel/channel clyent 1.2.2 py35_0 file://offline/arcgis_channel/channel colorama 0.3.7 py35_0 file://offline/arcgis_channel/channel decorator 4.0.10 py35_0 file://offline/arcgis_channel/channel ...Etant donné qu’ArcGIS et toutes ses dépendances peuvent maintenant faire l’objet de recherches, l’installation peut être poursuivie. Créez un nouvel environnement Conda ou installez le paquetage arcgis sur l’environnement racine :
conda create --name awesome_arcgis python [cette étape est facultative]Installez à présent ArcGIS à partir du canal Conda :
activate awesome_arcgis conda install --channel //offline/arcgis_channel/channel arcgis --offline --override-channelsCette commande produit la sortie suivante et poursuit l’installation après avoir demandé la confirmation de l’utilisateur :
$ conda install -c //offline/arcgis_channel/channel arcgis --offline --override-channels Fetching package metadata ..... Solving package specifications: .......... Package plan for installation in environment C:\Anaconda3\envs\awesome_arcgis: Les paquetages suivants seront téléchargés : package | build ---------------------------|----------------- colorama-0.3.7 | py35_0 19 KB file://offline/arcgis_channel/channel decorator-4.0.10 | py35_0 12 KB file://offline/arcgis_channel/channel .... Proceed ([y]/n)? y .... Enabling notebook extension arcgis/mapview... - Validating: okAssurez-vous qu’ArcGIS est installé en exécutant une commande de liste Conda :
$ conda list # packages in environment at C:\Anaconda3\envs\awesome_arcgis: # arcgis 0.9 py35_1 file://offline/arcgis_channel/channel colorama 0.3.7 py35_0 file://offline/arcgis_channel/channel decorator 4.0.10 py35_0 file://offline/arcgis_channel/channel ...
jupyter notebookCette commande a pour effet de démarrer un nouvel environnement Notebook dans le navigateur. Lancez un nouveau Notebook et saisissez ce qui suit :
from arcgis.gis import GIS() gis = GIS("URL du portail", "nom d’utilisateur", "mot de passe") #se connecter à ArcGIS Enterprise dans votre réseau local gis.map()Ce script permet d’ouvrir le widget cartographique et de charger le fond de carte par défaut.
$ tar -zcvf arcgis_v1_offline_channel.tar.gz path/to/channel/Vous obtenez une sortie similaire à ce qui suit :
a channel a channel/.DS_Store a channel/linux-32 a channel/linux-64 a channel/osx-32 a channel/osx-64 a channel/win-32 a channel/win-64 a channel/win-64/.index.json a channel/win-64/_nb_ext_conf-0.3.0-py35_0.tar.bz2 a channel/win-64/anaconda-client-1.5.5-py35_0.tar.bz2 a channel/win-64/arcgis-1.0-py35_1.tar.bz2 a channel/win-64/clyent-1.2.2-py35_0.tar.bz2 ....Pour décompacter cette archive en vue d’une utilisation ultérieure, exécutez la commande suivante :
$ tar -zxcf arcgis_v1_offline_channel.tar.gz -C ./arcgis_channel
Obtenir de l’aide auprès des experts ArcGIS
Télécharger l’application Esri Support