Utilizzando la funzionalità ArcGIS in Python senza eseguire ArcMap (ad esempio editor / ambiente separato)?


26

Sto provando a fare il passo successivo nella programmazione di ArcGIS con Python e vedere se è effettivamente possibile eseguire il mio script / codice senza dover caricare ArcMap e incollarli nella finestra di Python. Immagino che farei questo punto di vista una sorta di IDE specifico per Python che carica qualcosa da ArcGIS.

Come potrei farlo?


Aggiornamento: riepilogo della soluzione

Ho seguito il percorso Eclipse + PyDev. Ecco i miei appunti su come installare tutto e farlo funzionare:

Scarica Eclipse

Questo è un po 'confuso date tutte le diverse versioni disponibili (Java, Java EE, C / C ++, ecc.). Sono andato con C / C ++ poiché questo è ciò che mi è familiare. Non importa perché PyDev viene installato dopo questo passaggio. Scegli quello che vuoi.

Installa PyDev

PyDev verrà installato tramite Eclipse. Le istruzioni collegate hanno funzionato perfettamente.

Configura PyDev

La domanda di cui sopra fornisce uno screenshot di una configurazione di Windows, mentre questo collegamento da un blog ESRI ha più informazioni per i sistemi Unix, anche se è del 2008.

Ho eseguito uno script di prova

Ho acceso una sceneggiatura su cui avevo lavorato e ha funzionato. Sembra che ci siano alcune differenze nell'esecuzione del codice in questo modo su come accedere agli shapefile e allo spazio di lavoro, ecc., È necessaria una maggiore esplicitazione. Altro da imparare qui.


Confesso che sembra quasi più una domanda su Python e tradisce anche la mia ignoranza sull'ambiente Python, ma spero che la risposta sia utile ad altri che sono nuovi in ​​ArcGis + Python!
mindless.panda,

Penso che usare IDLE sarebbe stato più facile. PyDev è un po 'eccessivo in questa situazione, penso. Potresti anche voler creare alcuni modelli in Model Builder ed esportarli come file .py. In questo modo avresti un'idea del codice Python.
RK,

Questo è semplicemente ripetere ciò che ho detto! È il migliore anche se non lo è. La chiave per usarlo in questo modo è che sei in grado di creare oggetti e classi che alcuni degli altri modi non supportano. Ti consente di concentrarti davvero sulla costruzione di codice cracking, distribuibile sul server. In bocca al lupo!
Peloso

2
Senza ragione, solo una risposta qui menziona la soluzione Eclipse + PyDev. C'è un motivo per cui non lo hai votato?
whuber

Nessuna. Ho accettato il suggerimento Eclipse poiché è così che ho preferito. Ho solo risposto alla mia domanda per documentare il processo di installazione. Qual è il motivo per cui la mia risposta dovrebbe essere modificata nella domanda? Forse questo dovrebbe essere un CW?
mindless.panda,

Risposte:


11

Il modo migliore che ho trovato per usare Python è usare Eclipse con PyDev. È un buon IDE per lo sviluppo con e consente il debug in linea, non il debug della linea, e mi ha permesso di creare applicazioni di gestione dei dati back-end molto professionali su larga scala.

Secondo me, IDLE è sempre utile per testare gli script, e non lo è per la progettazione di soluzioni complesse basate su oggetti.

È anche incredibilmente facile da configurare.


C'è molto da fare per far funzionare Eclipse + PyDev con la funzionalità ArcGIS? Altre risposte sembrano indicare alcune peculiarità con l'utilizzo di Python non installato su Arc?
mindless.panda,

Niente affatto, assicurati semplicemente di aver installato arcgis desktop e imposta Eclipse per lavorare con PyDev e sei via. Ci sono voluti 5 minuti per configurarlo e poi tutto quello che devi fare è fare riferimento arcpico nella tua sceneggiatura. Seriouly, non ho visto un modo più semplice e migliore per farlo.
Peloso

15

Ho appena iniziato a fare i conti con Python e Arcpy e ho trovato PyScripter davvero utile. È un IDE Python in piena regola


2
Il miglior IDE che ho usato finora è PyScripter ed è gratuito!
Hornbydd,

2
PyScripter è davvero eccezionale. Eccellente completamento del codice, evidenziazione della sintassi, ricerca e sostituzione, schede per la visualizzazione di più script PY. Secondo me molto più utile di IDLE.
Ryan Dalton,

15

Se capisco la domanda, vuoi eseguire i tuoi script autonomamente, al di fuori della sessione ArcMap. Totalmente fattibile. Salva il tuo codice in un file Python (.py). Per quanto riguarda la modifica, puoi usare IDLE o qualsiasi editor di testo (anche Blocco note). A volte quando inizi, è più facile usare un editor di testo in modo da poterti concentrare sull'apprendimento del codice, non dell'IDE. Assicurati di aver impostato correttamente le variabili ambientali PATH , in modo che includano la tua directory di installazione di Python, qualcosa del tipo:

C:\Python26\ArcGIS10.0\Lib\site-packages\;C:\Python26\ArcGIS10.0;C:\Python26\ArcGIS10.0\Scripts

Quindi si tratta semplicemente di aprire un prompt dei comandi (Start> Esegui> digitare 'cmd' [senza virgolette]) e digitare:

python c:\path\to\python\script.py

Ora, questo presuppone che tutti i percorsi dei dati siano codificati nello script.

Queste sono le basi. Naturalmente c'è molto di più, come usare i parametri di input.


3
solo un commento su IDLE o un editor di testo standard. Personalmente trovo PythonWin un modo molto più semplice di lavorare poiché ha migliori capacità di debug - cruciali durante l'apprendimento. Vedere le istruzioni sull'installazione di PythonWin con ArcGIS 10. È necessario assicurarsi di installare la versione di PythonWin dal DVD di ArcGIS, altrimenti potrebbe interrompere l'installazione di Python.
Stephen Lead,

6

Quando ArcGIS viene installato, installa la propria versione di Python (ovvero non è necessario importare le dipendenze) .. assicurarsi di utilizzare questo ..

Uso la CLI di Python come calcolatrice e eseguo script salvati.

Python come calcolatrice è fantastico in quanto puoi definire le variabili .. Ho preso questo suggerimento dai tutorial di Python http://docs.python.org/

Ho un collegamento alla CLI tramite il prompt dei comandi sulla barra delle applicazioni% windir% \ system32 \ cmd.exe / k "C: \ Python26 \ ArcGIS10.0 \ python.exe"

Ho usato le attività pianificate di Windows per eseguire alcuni interventi di manutenzione tramite script che ho esportato dal generatore di modelli e quindi modificato con alcune modifiche ai built-in di Python come l'applicazione di date ai nomi dei file per i backup.


5

Credo che un IDE per Python venga fornito con l'installazione ArcGIS-10. Si chiama IDLE ed è uno strumento semplice ma efficace per l'interfacciamento con ArcPy senza aprire un'istanza di ArcMap stessa. Dovresti essere in grado di trovarlo nella directory "Python 2.6" dell'installazione ArcGIS nel menu di avvio. Basta essere sicuri di import arcpyprima di eseguire qualcosa di specifico per il pacchetto! Qualsiasi esempio di script visualizzato nel riferimento ArcPy per script autonomi funzionerà nell'interfaccia di IDLE.

Utilizzando il nostro sito, riconosci di aver letto e compreso le nostre Informativa sui cookie e Informativa sulla privacy.
Licensed under cc by-sa 3.0 with attribution required.