Introduction to Geoprocessing Scripts Using Python



Python scripts can reduce the time spent on complex or repetitive tasks, enabling GIS staff to be more productive. This course teaches how to create Python scripts to automate tasks related to data management, feature editing, geoprocessing and analysis, and map production using ArcGIS. You will also learn how to share your Python scripts so your key GIS workflows are accessible to others.
Note: Course concepts apply to both ArcGIS 10.2 and 10.3. Esri will provide ArcGIS 10.3 for use during course exercises. The course data DVD includes files for ArcGIS 10.2 users.


Course introduction
Course goals
Additional resources
Installing the course data
Icons used in this workbook
Understanding the ArcGIS Platform
1 Running scripts in Python
Lesson introduction
Understanding Python fundamentals
Integrated Development Environment (IDE)
Running scripts in Python window
Exercise 1A: Use the PyScripter IDE (Instructor-led)
Open and configure PyScripter
Run the script
The ArcPy site package
ArcPy functions and classes
The ArcPy modules
Choosing a scripting environment
Tips and best practices
Exercise 1B: Run scripts in Python
Buffer schools in Python window
Update script in PyScripter
Verify results in ArcMap
Lesson review
2 Describing data
Lesson introduction
The Describe function
Generic Describe object properties
Feature class Describe properties
Raster Describe properties
Describing a feature class and raster
Exercise 2: Work with the Describe object
Describe a feature class and a geodatabase
Describe a list of feature classes
Clip raster datasets with Describe object properties
Challenge: Describe dataset and coordinate system properties
Lesson review
3 Automating scripts with lists Lesson introduction
The ArcPy List functions
Explore the ArcPy List functions Working with List functions Working with da.Walk List data
Exercise 3: Automate scripts with the ArcPy List functions List field properties
Buffer feature classes Verify script results
Lesson review
4 Working with selections Lesson introduction
Selection tools in ArcMap Terms commonly used when working with selections Tools that accept feature layers Working with a selection
The MakeFeatureLayer tool
The FieldInfo object
The AddFieldDelimiters function
Determining a workflow
Create a feature layer and get feature count
Exercise 4: Work with feature layers and selections
Create new script
Create feature layers
Perform spatial selection
Create feature class f
rom selection
Lesson review
5 Working with cursors
Lesson introduction
The arcpy.da cursors
Using the SearchCursor
Using the UpdateCursor
Using the InsertCursor
Using the arcpy.da.Editor Tips and best practices for arcpy.da Cursors
Exercise 5: Work with cursors
Research the da Cursors
Work with the da.SearchCursor Work with the da.UpdateCursor
iiWork with the da.InsertCursor
Lesson review
6 Working with geometry objects
Lesson introduction
Creating geometry objects
Creating Point objects
Creating Polyline geometry objects
Creating Polygon geometry objects
The geometry object
Constructing multipart geometry
Constructing multipart polygons
Creating and updating feature geometry
Using a geometry object with geoprocessing tools
Accessing geometry objects
Exercise 6: Work with geometry objects and cursors
Create geometry objects
Access Shape geometry
Update existing features
(Optional) Create new features
(Optional) Use a geometry object with a geoprocessing tool
Lesson review
7 Sharing scripts
Lesson introduction
Terms commonly used when sharing scripts
Scripting advantages in ArcMap
Making scripts dynamic
Debugging scripts in Pyscripter
Creating and sharing a script tool
Advantages of attaching a script to a custom tool
Using the Add Script wizard
Running a script
Sharing a script
Plan out a project
Exercise 7: Share scripts through geoprocessing packages
Add pseudocode to the script
Write script code
Attach script to custom tool
Run script in ArcMap
Share results as a geoprocessing package
Verify the geoprocessing package
Lesson review
iii8 Automating map production
Lesson introduction
The arcpy.mapping module
Terms commonly used when working with the arcpy.mapping module
Using the arcpy.mapping module to modify map document contents
Referencing the map document
Listing map document contents
Managing layers
Managing layout elements
Publishing maps
Exporting maps and reports
Customizing symbology for map layers
Exercise 8: Work with map document contents
Access map document in ArcMap
Access map document in script
Update layer symbology
Update layout text elements
Verify changes in ArcMap
Challenge: Automate script for multiple map documents
Lesson review

key words, tags

geoprocessing, GIS, ArcGIS, Python

Course properties

Form of education
Learning language
Earth sciences, Software and applications development and analysis
Course authors
Course cost
IP transfer allowed
Special opportunities and quotas
Esri will provide the following software to use during class: ArcGIS 10.2 for Desktop or ArcGIS 10.3 for Desktop (Standard or Advanced) ArcGIS Online PyScripter for Python 2.5.3 Python 2.7 or Python 2.7.8
Knowledge level entrance requirements
Completion of ArcGIS 2: Essential Workflows and ArcGIS 3: Performing Analysis or equivalent knowledge is required. Knowledge of Python syntax and experience creating Python scripts is required. For those new to Python, Python for Everyone is strongly recommended. Basic programming skills, including using loops and conditional statements, are required.
Output knowledge, abilities, skills
Choose a Python scripting environment that meets your needs. Incorporate cursors, describe objects, and list objects into scripts to manage and update data. Use ArcPy classes and geometry objects to create and update features and perform geoprocessing operations. Use the ArcPy mapping module to automate map document and layer management. Apply techniques to ensure valid script syntax and error handling. Create custom script tools and geoprocessing packages to share your scripts.
Career list corresponds to course
GIS analysts, specialists, data processors, and others who want to automate ArcGIS tasks and workflows
Entrance test
Groups formation by readiness level
Teachers presence
Tutors presence
Facilitators presence
Interactivity in training materials
Collaborative learning presence
Discussions, forums presence
Webinars, video conferences presence
meetup presence
LMS integration
Learning Analytics
Certification presence
Course time limits
3 (days)
Opportunity to enter after start
Learning types (sync/async)
Module unit
Course modules number
Personal learning path possibility, course individualization
Special needs support