Utilizar tareas de geoprocesamiento en secuencias de comandos de Python
Se pueden utilizar las tareas de geoprocesamiento de ArcGIS Server en secuencias de comandos. Los pasos básicos son
- Agregar el servicio como una caja de herramientas.
- Debido a que muchas tareas utilizan los conjuntos de registros y entidades, consulte la tarea para obtener el esquema de conjunto de registros o entidades.
- Cargar las entidades o registros.
- Iniciar la ejecución de la herramienta.
- Consultar el resultado de la herramienta y esperar a que finalice la ejecución.
- Consultar el resultado para recuperar las salidas.
Secuencia de comandos de ejemplo:
import arcpy, time # Add a geoprocessing service as a toolbox # Syntax: ArcGIS Server link;ToolBoxName with the Tool name is the next attribute # arcpy.ImportToolbox("http://degrassi/arcgis/services;BufferToolBox","Buffer") # One of the tasks is BufferPoints and its first parameter is a feature # set. Get the feature set from the task. # inFeatSet = arcpy.GetParameterValue("Buffer", 0) # Load an existing feature class into the feature set # inFeatSet.load("C:/datasets/aoi/observations.shp") # Start execution of the task # Service is executed by the toolName_aliasName # result = arcpy.Buffer_Buffer(inFeatSet, "500 feet") # Query the result object to detect when the service has finished execution # while result.status < 4: time.sleep(0.2) # The output of this task is a feature set of the buffered points. Get the output # by index and save to a geodatabase feature class. # outFeatSet = result.getOutput(0) outFeatSet.save("C:/mydata/gpResults.gbd/output1")
Temas adicionales:
Tema |
Descripción |
---|---|
Detalles sobre cómo agregar cajas de herramientas y servicios de geoprocesamiento dentro de una secuencia de comandos |
|
Detalles sobre cómo crear, cargar y guardar datos de un conjunto de entidades y un conjunto de registros |
|
Detalles sobre cómo consultar el resultado de una herramienta o tarea |
|
Detalles de las propiedades y métodos de clases de resultado |
Temas relacionados
3/6/2012