ArcPy for Python Developers using ArcGIS Pro
4.4 (442 ratings)
Course Ratings are calculated from individual students’ ratings and a variety of other signals, like age of rating and reliability, to ensure that they reflect course quality fairly and accurately.
2,412 students enrolled

ArcPy for Python Developers using ArcGIS Pro

GIS is hot - take your python skills to new levels and greatly increase your career options.
Bestseller
4.4 (442 ratings)
Course Ratings are calculated from individual students’ ratings and a variety of other signals, like age of rating and reliability, to ensure that they reflect course quality fairly and accurately.
2,412 students enrolled
Last updated 7/2020
English
English [Auto]
Current price: $55.99 Original price: $79.99 Discount: 30% off
5 hours left at this price!
30-Day Money-Back Guarantee
This course includes
  • 11 hours on-demand video
  • 1 article
  • 1 downloadable resource
  • Full lifetime access
  • Access on mobile and TV
  • Certificate of Completion
Training 5 or more people?

Get your team access to 4,000+ top Udemy courses anytime, anywhere.

Try Udemy for Business
What you'll learn
  • Learn to write GIS applications using Python tools and applications for ArcGIS.
  • Become highly skilled in using ArcPy/Python with ArcGIS Pro.
  • Be able to apply for GIS, Geospatial, or Spatial Developer job positions.
  • Be a Python developer who specializes in ArcPy, which is in demand to GIS projects undertaken by different industries.
Course content
Expand all 78 lectures 11:14:44
+ Introduction
2 lectures 11:03

This video will introduce the course instructor, describe high level goals of the course, and introduce course topics such as the software and data setup; challenges; and how to get help when stuck. 

Preview 04:56

This video introduces ArcGIS Desktop from Esri, its two main applications (ArcGIS Pro, ArcMap), their Python API (ArcPy), 2 data formats (shapefile, file geodatabase) and the course folder structure. 

Preview 06:07
Quiz for Section 1
4 questions
+ ArcGIS Pro, Python and Data Setup
5 lectures 28:38

This video will describe a number of ways that you may be able to license the ArcGIS Desktop product (from Esri), to provide you with access to its ArcGIS Pro application, and ArcPy site package for Python.


Free licensing may be possible for those attending colleges and universities, or for a 21 day trial, while cheap licenses are available for non-commercial purposes. 

ArcGIS Pro Licensing Options
03:48

This video shows how to start ArcGIS Pro, and check the version that you are using. 


It also shows how to start a Python IDE named IDLE, to check the version of Python that you are using, and whether ArcPy can be imported successfully. 

Preview 06:11

This video shows how to download four shapefiles from the Natural Earth website, for free. 


The global datasets, that we show you how to download, are the countries, states and provinces, railroads and populated places.


We place them into a subfolder named Data in a folder named LPA on our C: drive, but you are free to locate your LPA folder wherever it suits you best. 

Preview 05:22

This video shows how to download and install the ArcGIS Tutorial data from My Esri which is provided free with every ArcGIS Desktop license. 


The data is provided in a folder named ArcTutor which the installer place, by default, into a folder named arcgis on our C: drive, but you are free to place it wherever it suits you best. 

Downloading ArcGIS Tutorial Data
05:10

This video shows how to create a new ArcGIS Pro project for an imaginary section of the course which includes just a very simple task.   


Once that task has been performed, a workflow will be demonstrated that shows how to delete the project for that section, to enable the section to be redone or restarted. 

Deleting Data for Section Resetting
08:07
+ Python Interfaces for ArcGIS Pro
7 lectures 01:07:25

This video uses the Python window of ArcGIS Pro to run code from both Python core functions and spatial functions of ArcPy. 

Using Python Window of ArcGIS Pro
09:46

This video uses a Python IDE named IDLE to run code from spatial functions of ArcPy. 

Preview 09:46

This video takes an existing Python script from the previous lecture, and updates it to accept a parameter value from a tool dialog which is configured in ArcGIS Pro. 


The Python Script Tool which we create can be found in the default toolbox of the project 

Writing a Simple Python Script Tool
07:32

This video takes an existing Python script from the previous lecture, and updates it to use a Python function that enables messages to be output to whichever of a Python IDE or the Geoprocessing Framework of ArcGIS Pro is being used to run it. 

Preview 05:40

This video uses ArcGIS Pro to demonstrate its Python Parser that can be used with Python code and ArcGIS formatting tags to create label expressions on features that include stacking onto multiple lines, bolding, coloring, etc. 

Using Python Parser for Labeling
09:46

This video uses ArcGIS Pro to demonstrate its Python Parser that can be used to edit feature attributes in bulk using the Calculate Field tool.  Such edited fields can be used for labeling and can embed ArcGIS formatting tags  for effects like bolding. 

Using Python Parser for Calculating Fields
12:10

This video uses ArcGIS Pro and its ModelBuilder to demonstrate that a Python Parser can be used with its Calculate Value tool.  The Model Tool built uses the Buffer tool with random buffer sizes. 

Using Python Parser for Calculating Values in ModelBuilder
12:45
+ ArcPy Documentation for ArcGIS Pro
3 lectures 13:16

This video provides an overview of the ArcGIS Pro online Help and leads into lectures on Tool References and Python References. 

ArcGIS Pro Help Overview
03:19

This video provides an overview of the ArcGIS Pro online Help which is available as a Tool Reference for each ArcPy tool, and includes Usage, Syntax, Code Samples, etc. 

Preview 04:14

This video provides an overview of the ArcGIS Pro online Help which is available as a Python Reference for each ArcPy module, function and class, and includes Syntax, Methods, Code Samples, etc. 

ArcGIS Pro Python Reference
05:43
+ Using Geoprocessing Tools to Automate Workflows
7 lectures 52:38

This video shows the creation of an ArcGIS Pro project which will be used for the remainder of the lectures in this section. 

Creating Project for Geoprocessing Framework Section
03:29

This video shows how to use geoprocessing tool dialogs in ArcGIS Pro project to step through a workflow one step at a time prior to automating it. 

Preview 06:01

This video shows geoprocessing history in an ArcGIS Pro project to send steps of a workflow from tool dialogs, run one at a time, to the Python window as code, and saving that code as a script. 

Workflow Using Geoprocessing History
08:44

This video shows the script that was saved from the Python window in the previous lecture being modified so that it can run without error from a Python IDE like IDLE. 

Workflow Using Python IDE
05:43

This video enhances the script from the previous lecture so that it can accept a parameter on the tool dialog of a Python Script tool, initially by typing it and then from a pick list of choices. 

Workflow Using Python Script Tool with Pick List
07:43

This video creates a Python Toolbox (*.pyt) Tool with identical functionality to a Standard Toolbox (*.tbx) Tool created in the previous lecture which accepts a parameter from a pick list of choices. 

Workflow Using Python Toolbox Tool
08:22

This video creates a Model Tool in a Standard Toolbox (*.tbx) using ModelBuilder, and that tool has most functionality incorporated into Python Script and Python Toolbox tools in previous lectures. 

Workflow Using Model Tool
12:36
+ Setting the Geoprocessing Environment for ArcPy
3 lectures 23:33

This video shows two techniques for overwriting data via testing for existence and deleting first, and then by using the arcpy.env.overwriteOutput environment setting. 

Using Environment Setting to Overwrite Output
08:30

This video shows the arcpy.env.workspace environment variable being printed, and then used to set the Current Workspace to a file geodatabase so that full pathnames to feature classes are not needed. 

Using Environment Setting to Set Current Workspace
08:08

This video shows the arcpy.env.extent environment variable being used to restrict geoprocessing to features within the extent of a feature class, and a technique to display that extent. 

Using Environment Setting to Set Extent for Geoprocessing
06:55
+ Performing GIS Inventory
6 lectures 41:10

This video uses ArcGIS Pro to provide you with an end user view of the ArcGIS Tutorial Data for Desktop that you will be performing inventory on using ArcPy in upcoming lectures. 

ArcGIS Pro End User View of Data
07:09

This video uses ArcPy in a Python IDE (IDLE) to list workspaces (folders, file geodatabases and personal geodatabases), feature datasets (another type of workspace) and feature classes. 

Listing Workspaces, Feature Datasets and Feature Classes
08:41

This video uses ArcPy in a Python IDE (IDLE) to list geodatabase tables and their field objects to access field properties such as their names and types. 

Listing Tables and Fields
04:32

This video uses ArcPy in a Python IDE (IDLE) to describe data elements such as file geodatabases, feature datasets and their children (feature classes and tables) and create Describe objects. 

Describing Data Using arcpy.Describe() to Create Describe Objects
11:47

This video uses ArcPy Data Access (arcpy.da) in a Python IDE (IDLE) to describe file geodatabases, feature datasets and their children (feature classes and tables) and create dictionaries. 

Describing Data Using arcpy.da,Describe() to Create Dictionaries
02:55

This video uses ArcPy Data Access (arcpy.da) in a Python IDE (IDLE) to walk workspaces (folders and geodatabases) top-down to make lists of data elements like feature classes, tables and rasters. 

Walking Data Using arcpy.da.Walk() to Create Lists
06:06
+ Working with Geometries
5 lectures 48:47

This video uses ArcGIS Pro and ArcPy in a Python IDE (IDLE) to create point, line and polygon fishnet feature classes, and define projections (coordinate systems) using a SpatialReference object. 

Creating Fishnet Feature Classes for Testing
17:05

This video uses ArcPy in a Python IDE (IDLE) to create geometry objects by copying features from a feature class and examining two (area and spatial reference) of their many properties. 

Copying Geometry Objects from Feature Class
05:26

This video uses ArcPy in a Python IDE (IDLE) to create Point and MultiPoint geometry objects from Point and Array objects, and then uses ArcGIS Pro to examine what has been created. 

Creating Point and MultiPoint Geometry Objects from Scratch
07:28

This video uses ArcPy in a Python IDE (IDLE) to create Singlepart/Multipart Polyline/Polygon geometry objects from Point and Array objects, and then uses ArcGIS Pro to examine what has been created. 

Creating Singlepart and Multipart Polyline and Polygon Geometry Objects
08:46

This video uses ArcPy in a Python IDE (IDLE) to access methods on Polyline and Polygon geometry objects to buffer and intersect them, create a convex hull and convert multipart to singlepart. 

Working with Geometry Methods
10:02
+ Working with Cursors from Data Access Module (arcpy.da)
8 lectures 52:48

This video uses ArcPy in a Python IDE (IDLE) to open and run a search cursor from the Data Access (arcpy.da) module to print values for subsets of fields and rows/features from a shapefile.   

Using arcpy.da.SearchCursor() to Iterate Features and Rows
06:15

This video uses ArcPy in a Python IDE (IDLE) to run arcpy.da.SearchCursor() with SHAPE@ tokens to access properties and print values for centroids, area, perimeter/length and number of parts/vertices. 

Using arcpy.da.SearchCursor() to read Geometries via SHAPE@ tokens
04:37

This video uses ArcPy in a Python IDE (IDLE) to run arcpy.da.SearchCursor() with list comprehension to create lists, unique lists (sets), sorted lists, and lists of lists. 

Using arcpy.da.SearchCursor() to create Python Lists and Sets
04:00

This video uses ArcPy in a Python IDE (IDLE) to run arcpy.da.SearchCursor() with dictionary comprehension to create dictionaries with simple key-value-pairs, and one with values which are lists. 

Using arcpy.da.SearchCursor() to create Python Dictionaries
04:21

This video uses ArcGIS Pro for code copying and ArcPy in a Python IDE (IDLE) to run arcpy.da.UpdateCursor() to iterate through features and modify attributes and, if required, to delete features. 

Using arcpy.da.UpdateCursor() to Perform Edits
11:52

This video uses ArcPy in a Python IDE (IDLE) to create an empty table with three fields (text, integer, float), run arcpy.da.InsertCursor() to populate it, and then SearchCursor to print its values. 

Using arcpy.da.InsertCursor() to Create a Table
02:56

This video uses ArcPy in a Python IDE (IDLE) to create a circular polygon geometry from a buffered point and then uses arcpy.da.InsertCursor() to insert it and its name into a feature class. 

Using arcpy.da.InsertCursor() to Insert a Geometry into a Feature Class
04:22

This video uses ArcPy in IDLE to create a polygon feature class that looks like the rectangular cells of a table, using dictionaries, geometries, InsertCursor() and ArcGIS Pro labels for display. 

Using arcpy.da.InsertCursor() to create a Table-like Feature Class
14:25
+ Using Mapping Module (arcpy.mp) from Python Window of ArcGIS Pro
3 lectures 38:00

This video uses the Python window of ArcGIS Pro with arcpy.mp (Mapping module) to explore using ArcGISProject, Map and Layer classes with the current project to rename, save, export to PDF, etc. 

Working with ArcGISProject, Map and Layer Classes in ArcGIS Pro
12:27

This video uses the Python window of ArcGIS Pro with arcpy.mp (Mapping module) to explore using Layout and MapFrame classes with the current project to rename, resize and reposition on the page. 

Working with Layout and MapFrame Classes in ArcGIS Pro
10:23

This video uses the Python window of ArcGIS Pro with arcpy.mp (Mapping module) to explore using Extent and Camera objects with definition queries to zoom to features and then export to PDF files. 

Zooming Using Camera and Extent Classes in ArcGIS Pro
15:10
Requirements
  • A computer which meets the minimum ArcGIS Pro 2.2 system requirements and has the ability to run the software.
  • Basic skills and knowledge in Python.
  • Basic Level (or higher) of ArcGIS Desktop license with no extensions. This will allow ArcGIS Pro and ArcMap to run and also permits downloading of ArcTutor data.
  • Knowledge of ArcGIS Pro or ArcMap is an advantage but not required.
  • Note: Free 21 day-trial of software is available - see details inside course.
Description

The global Geographic Information System (GIS) market is expected to by worth over ten billion dollars by 2023, and is growing at a huge rate.

Developers who are skilled with appropriate GIS software are already in high demand and the demand is growing.

At the GIS Stack Exchange - the spatial library for Python - the most questions asked are for ArcPy, which provides a Python API to Esri’s flagship product ArcGIS Desktop and its two main applications (ArcGIS Pro and ArcMap).

Consequently, there has never been a better time for Python developers to add ArcPy skills to their repertoire.

This course is primarily designed to introduce Python developers to the ArcPy classes and functions for working with ArcGIS Pro.  It will also introduce them to many aspects of the ArcGIS Pro GUI, so that they are well placed to understand the requirements of the end users for the applications that they write. 

While relatively little Python experience is needed to undertake the course, the Python classes and functions used may be easier to understand if you have already undertaken introductory Python training - such as the Learn Programming Academy’s Python Masterclass.

The course is also suitable for ArcGIS Pro end users who wish to learn ArcPy, but they may need to embark on a steep Python learning curve, if they have minimal skills in that language.

Most sections of this course can be taken in any order.  You just need to download the data, and check that you have ArcGIS Pro and your Python IDE working first.

NOTE: Paid software is required to take this course.

The course requires only a Basic level license of ArcGIS Desktop (which includes ArcGIS Pro), and no extension products need to be licensed in order to complete all exercises.

If you do not have an ArcGIS Desktop license, then for about $100-150 per annum it is possible to use an Advanced level license and many of the extension products for non-commercial purposes (like taking this course!), via Esri’s ArcGIS for Personal Use program (details inside the course).

It is also possible to undertake a 21-day free trial of ArcGIS Pro (details also inside the course).

The recommendation is to take the 21-day free trial to get started.

This course starts by examining the various places that Python code can be used within the ArcGIS Pro application, and how Python code can be written using a Python IDE to interact with ArcGIS Pro as either a standalone script or a Python script tool.

You will then be taken on a tour of the most commonly used ArcPy functions and classes for geoprocessing, followed by tours of its modules for data access and mapping.

The scenarios chosen, to illustrate how each function and class is used, are derived from the presenter’s experience working with ArcPy and Python for almost 10 years, and with Esri software for 30 years.

Your instructor, Graeme Browning has been using the Esri software on a daily basis for over 30 years, 8 years of which he has spent using ArcPy. Graeme has also spent 18 years  with Esri UK and Esri Australia working in different roles from Senior GIS Analyst to Technical Director.

He is also ranked in GIS Stack Exchange as the all-time, worldwide:

  • #1 user of ArcPy

  • #1 user of ArcGIS Desktop

  • #2 user of ArcGIS Pro

  • #5 user of all GIS products

Graeme has also received the Esri High Achievement Award by Jack Dangermond (President).

He has already developed nearly 20 one-day courses and half-day workshops for instructor-led delivery and along with that, nearly 20 eLearning video courses.

So if you're looking for the perfect instructor to teach you the best practices in learning ArcPy for Python, Graeme is the best one there is!

Key Topics to be covered are :

  • Using ArcPy and Python in multiple interfaces within and alongside ArcGIS Pro

  • Python window

  • Python IDE (e.g. IDLE)

  • Python Script Tools

  • Python Toolbox Tools

  • Python Parser for Field Calculating and Labeling

  • Using ArcPy Modules, Classes and Functions

  • Working with the search, update and insert cursors of ArcPy’s Data Access Module (arcpy.da)

  • Performing GIS Inventory by Listing Data, Describing Data and Walking System Folders and Spatial Datasets

  • Using the Mapping module for map automation using project, map, layer, layout, map frame, extent, camera, spatial reference, text, graphics, legends, scale bars, north arrows, pictures and many other object classes

  • Working with Map Series to meet simple through to complex Map Book requirements

  • Finding your way around ArcGIS Pro’s very extensive ArcPy/Python documentation

  • Working with Point, Line and Polygon Geometries

  • Setting the Geoprocessing Environment

  • Getting and Setting Parameters for Python Script Tools

  • Creating test data

  • Exporting map layouts to PDF


Enrolling in this course is the best decision you can make!

  • The course focuses on teaching ArcPy in-depth from the basics through to advanced

  • It’s 3-4 times the length of any other ArcPy course, and designed to accommodate many more lectures and challenges on not just ArcGIS Pro, but also ArcMap

  • Plus, it teaches ArcPy for ArcGIS Pro which was only released in 2015, while other ArcPy courses typically use only the older ArcMap! You are getting the most up to date learning!

By the end of this course, you will have the necessary skills needed to become an expert in ArcPy using ArcGIS Pro and apply it to your own programs such as Map Automation and Geoprocessing.

The ideal student would be someone with a basic knowledge of Python who is eager to improve their skills and take them to the next level by learning ArcPy using ArcGIS pro.

The sooner you sign up for this course, the sooner you will have the skills and knowledge that would put you among the list of in demand Python developers!

Sign up today and get started!

Who this course is for:
  • This course is suitable for developers with some basic Python language exposure who want to enhance their skills by learning about ArcPy using ArcGIS Pro.