Skip to content
SKU: PhythonNetAuto


Select a date below


Dates are listed in Pacific Time Zone

= Guaranteed to run date


Print Friendly, PDF & Email


This course is driven by demonstration and reinforced by hands-on labs for learning Python 202 – Network Automation. Maximize your networking skill set by learning to script solutions to tedious, complex and oftentimes overwhelming networking tasks.


Keyboard proficiency, and some basic understanding of network concepts is the only hard requirement. Students with some previous exposure to Python, any another scripting experience, will take the most from the course. In lieu of any scripting experience, Alta3 Research’s Python Basics course is recommended.

Recommended Prerequisite: Python Basics (5 days)


This course was written for networking professionals looking to expand their capabilities by automating their workload with Python. This includes: Network Engineers, Network Architects, System Admins, DevOps Engineers, Cisco Certified Professionals (CCNA, CCNP, CCIE), and developers interested in network programmability with Python.


Module 1: Reviewing Python Essentials

  • Version Controlling Code
  • Up and running with Python (installing on various platforms)
  • Lists
  • Dictionaries
  • File Input and Output
  • Functions
  • Methods
  • Review of the Standard Library
  • Using pip and

Module 2: Python and Data translation

  • JSON
    • Reading from files
    • Reading from API
  • YAML
    • Reading from files
  • CSV
    • Reading from files
  • Excel
    • Using pyexcel library
    • Using pandas library

Module 3: Python and RESTful APIs

  • RESTful APIs decoded
  • Reading attachments
  • API keying
  • Passing credentials securely
  • Standard Library Solution
  • 3rd party library solutions

Module 4: Automating SMTP and Extended SMTP (Email)

  • SMTP
  • Extended SMTP
  • Automating Email solutions
  • Setting headers and creating a body
  • Attachments
  • Google Gmail considerations
  • Microsoft considerations

Module 5: Completing Webforms with Python

  • Web Scraping
  • Automating front-ends with code
  • Selenium for Automation
  • Completing webforms
  • Filling in data with data from open files
  • How to select ‘buttons’
  • How to make ‘clicks’

Module 6: Python and Telnet

  • RFC 854 – Telnet Protocol
  • Standard Library Solution

Module 7: Python and SSH

  • Standard Library Solution
  • Paramiko
    • SSH Agents
    • Key exchange and authorization
    • Securing dealing with passwords
    • Configuration
    • SFTP
  • Passing commands and capturing responses
  • Parsing remote logs

Module 8: Automating Switches and Routers with Python

  • Netmiko
  • Push / Pull Configuration
  • Retrieve information about devices
  • Manage the devices configuration
  • Connecting and Running a Command on a Networking Device
  • Enable & Global Config Mode
  • Configure a Networking Device from a File
  • Configuration Backup using Netmiko
  • VLAN & VXLAN management
  • BGP & OSPF Management
  • Solutions for HSRP, VRRP, and GLBP

Module 9: Automating Networks with Python NAPALM

  • Installation
  • Tutorials
  • Validating deployments
  • Supported Devices
  • Command Line Tool
  • NetworkDriver
  • YANG
  • napalm-logs
  • Integrations

Module 10: Python and Network Captures

  • Wireshark
  • TCPDump
  • Decoding network captures with Python
  • *.pcap files
  • *.pcap-ng files
  • Parsing network captures
  • Regular Expression Library

Module 11: Optimizations and Security

  • Multiprocessing and Multithreading
  • Examples of running in parallel
  • Cost and Benefit Considerations
  • Secure hashes and digests
  • MD5, SHA, and OpenSSL Options
  • Encrypting content
  • Considerations for credentials
  • Securely passing input

Module 12: Overview of Ansible (optional)

  • Relationship of Ansible and Python
  • Overview and Installing
  • Where YAML fits
  • Modules for Cisco, Juniper, Arista, and other major vendors
    • shell, raw, copy, file, apt, service, cli_command, cli_config
  • Constructing the playbook
  • Applications of Python versus Ansible
  • Writing an Ansible module with Python

Additional information


5 days

Guaranteed to run