Choose your language
Python Network Automation Course
More than 2 million students worldwide

Python Network Automation Course

Stop configuring devices by hand and start automating everything. This course takes network engineers from Python basics to production-grade automation using Netmiko, Ansible, Nornir, NAPALM, and modern APIs. You'll write real scripts, manage real configs, and build workflows that scale across your entire device fleet.

Dedika for businesses

What you will learn:

You'll start with Python fundamentals tailored to network tasks and quickly move into connecting to routers and switches using Netmiko and Paramiko. From there, you'll learn to parse CLI output, generate configurations with Jinja2 templates, and interact with devices through REST, NETCONF, and RESTCONF APIs. The course covers industry frameworks including Ansible, Nornir, and NAPALM for fleet-wide management. You'll also build CI/CD pipelines, write automated tests, and apply version control to your automation code. By the end, you'll have the skills to deploy reliable, auditable automation in production network environments.

How you study in practice Python Network Automation Course

How you practice Python Network Automation Course

For companies looking to train their teams

With Dedika for businesses, the course includes exercises and examples tailored to your own business and the way your company needs.

Click here

Course Content

8 Chapters • 38 LessonsDuration between 4 and 360 hours (you decide)

Chapter 1See details

Python Foundations for Network Engineers

  • Lesson 1 • File and Data Handling

    Read and write text files, CSV, and JSON to store and retrieve network data. Directly enables config backup and inventory management tasks.

  • Lesson 2 • Control Flow and Functions

    Write conditionals, loops, and reusable functions to automate repetitive network tasks. Introduces modular code design used in all subsequent scripts.

  • Lesson 3 • Python Modules and Script Structure

    Organize code into modules, import standard library tools, and structure scripts for reuse. Prepares students for building maintainable automation projects.

  • Lesson 4 • Core Python Data Types

    Master strings, integers, lists, tuples, dicts, and sets with network-focused examples. These types underpin every automation script in later chapters.

  • Lesson 5 • Python Environment Setup

    Install Python, configure virtual environments, and choose an IDE suited for network automation. Establishes the reproducible workspace used throughout the course.

Chapter 2See details

Networking Concepts for Automation

  • Lesson 1 • Network Protocols Relevant to Automation

    Survey SSH, Telnet, SNMP, NETCONF, RESTCONF, and gRPC at a functional level. Establishes protocol context for the connection libraries introduced later.

  • Lesson 2 • IP Addressing and Subnetting Review

    Revisit IPv4 and IPv6 addressing, CIDR notation, and subnet math using Python's ipaddress module. Provides the addressing foundation for all device-targeting scripts.

  • Lesson 3 • Device Configuration Concepts

    Understand running vs. startup configs, configuration modes, and commit models. Directly informs how automation scripts push and validate changes.

  • Lesson 4 • Network Data Models and Encoding

    Explore YANG models, JSON, XML, and plain text as data representations for device state. Prepares students to parse and construct payloads in later chapters.

Chapter 3See details

Connecting to Network Devices

  • Lesson 1 • Managing Multiple Device Connections

    Iterate over device inventories and connect to many hosts in sequence or in parallel. Builds the scalable connection patterns used in fleet-wide automation.

  • Lesson 2 • Multi-Vendor Access with Netmiko

    Leverage Netmiko's device-type abstraction to connect to routers and switches from multiple vendors. Reduces boilerplate and handles prompt detection automatically.

  • Lesson 3 • SSH Connectivity with Paramiko

    Use Paramiko to open SSH sessions, execute commands, and capture output. Introduces low-level connection control before higher-level abstractions.

  • Lesson 4 • Connection Reliability and Error Handling

    Implement retries, timeouts, and exception catching to make connection scripts robust. Ensures automation does not silently fail on unreachable devices.

Chapter 4See details

Parsing and Processing Device Output

  • Lesson 1 • Using NTC-Templates Library

    Leverage the community NTC-Templates collection to parse common show commands without writing templates. Accelerates development for standard vendor commands.

  • Lesson 2 • Regular Expressions for Network Text

    Apply Python's re module to extract IPs, interface names, and status fields from CLI output. Regex is the baseline parsing skill before template-based tools.

  • Lesson 3 • Genie and PyATS Parsing

    Use Cisco's Genie library to parse show commands into deeply nested Python objects. Introduces model-driven parsing for complex multi-vendor environments.

  • Lesson 4 • Data Transformation and Normalization

    Clean, filter, and reshape parsed data into normalized structures ready for reporting or decision logic. Bridges raw parsing and actionable automation outcomes.

  • Lesson 5 • Structured Parsing with TextFSM

    Write TextFSM templates to convert multi-line CLI output into lists of dictionaries. Enables consistent parsing across identical commands on many devices.

Chapter 5See details

Configuration Management with Python

  • Lesson 1 • Backup and Restore Workflows

    Automate scheduled config backups and restore procedures for disaster recovery. Directly supports operational continuity and audit requirements.

  • Lesson 2 • Idempotent Configuration Practices

    Design scripts that apply config only when needed, avoiding duplicate or conflicting changes. Builds safe automation habits critical for production environments.

  • Lesson 3 • Sending Configuration Commands

    Use Netmiko's send_config_set to push multi-line configs and verify acceptance. Establishes the basic config-push workflow before templating and validation.

  • Lesson 4 • Jinja2 Configuration Templating

    Generate device-specific configs from Jinja2 templates and variable data sources. Enables scalable, consistent config generation across heterogeneous fleets.

  • Lesson 5 • Configuration Validation and Diffing

    Compare intended vs. running configs using diff tools and custom checks. Prevents unintended changes and supports change-control documentation.

Chapter 6See details

API-Driven Network Automation

  • Lesson 1 • Automating SDN Controllers via API

    Interact with SDN controller REST APIs to manage topology, flows, and policies programmatically. Demonstrates API automation at the controller abstraction layer.

  • Lesson 2 • NETCONF Automation with ncclient

    Use ncclient to open NETCONF sessions, retrieve configs, and edit device state via RPC. Enables model-driven automation on NETCONF-capable devices.

  • Lesson 3 • RESTCONF with Python

    Query and modify YANG-modeled data over RESTCONF using standard HTTP and the requests library. Bridges REST familiarity with model-driven network management.

  • Lesson 4 • REST API Fundamentals

    Understand HTTP methods, status codes, headers, and authentication used in network REST APIs. Provides the conceptual base for all API interaction in this chapter.

  • Lesson 5 • Using the Requests Library

    Send HTTP requests to network device REST APIs and process JSON responses with the requests library. Covers the primary Python tool for REST-based automation.

Chapter 7See details

Network Automation Frameworks

  • Lesson 1 • Parallel Execution and Scaling

    Configure concurrent task execution in Nornir and Ansible to reduce runtime on large fleets. Addresses performance requirements for production-scale automation.

  • Lesson 2 • NAPALM for Multi-Vendor Management

    Use NAPALM's unified API to retrieve facts, push configs, and compare state across vendors. Introduces abstraction-layer automation before full framework adoption.

  • Lesson 3 • Ansible for Network Automation

    Write Ansible playbooks using network modules to configure devices without Python scripting. Covers inventory, variables, tasks, and handlers in a network context.

  • Lesson 4 • Framework Selection and Integration

    Evaluate trade-offs between Ansible, Nornir, and NAPALM for different use cases. Guides students in combining frameworks within a single automation pipeline.

  • Lesson 5 • Nornir Framework Fundamentals

    Build Python-native automation workflows with Nornir's inventory, task, and runner system. Offers full Python control compared to Ansible's declarative model.

Chapter 8See details

Production Automation and Operations

  • Lesson 1 • Change Management and Compliance

    Integrate automation workflows with change-control processes and compliance checks. Ensures automated changes meet organizational governance and audit standards.

  • Lesson 2 • Version Control for Automation Code

    Manage automation scripts and configs in Git with branching, pull requests, and tagging. Enables team collaboration and change traceability in production.

  • Lesson 3 • Testing Automation Scripts

    Write unit and integration tests for automation code using pytest and mock libraries. Prevents regressions and validates logic before production deployment.

  • Lesson 4 • Observability and Alerting

    Instrument automation scripts with structured logging, metrics, and alerts for operational visibility. Enables rapid diagnosis of failures in production automation runs.

  • Lesson 5 • CI/CD Pipelines for Network Automation

    Build pipelines that lint, test, and deploy automation code automatically on commit. Reduces manual steps and enforces quality gates before production runs.

Certification

Your valid completion certificate

This course is for you:

  • Network engineers: ready to replace repetitive CLI work with scalable automation.

  • NOC technicians: looking to move beyond manual troubleshooting into scripted workflows.

  • Systems administrators: managing network infrastructure alongside server and cloud environments.

  • IT professionals transitioning into network automation or DevOps-adjacent engineering roles.

  • Hobbyists and home lab enthusiasts: eager to apply real-world automation to personal projects.

  • Junior network engineers: building automation skills early to accelerate their career trajectory.

What our students say

Your classes are perfect. I purchased the one-year package and finally have the opportunity to follow various topics of interest without needing to switch platforms... I thank you for everything you do, I've already recommended you to other people...
Giulio Carlo
Giulio CarloDigital Marketing Student
I like how the lessons are straight to the point and how I can switch chapters and skip content I don't need.
Mariana Ferres
Mariana FerresPhotography Student
I like the content and the presentation style and video transcription, which speeds up the process!
Luciana Alvarenga
Luciana AlvarengaNail Design Student
The platform is fast, simple to use. The diversity of content and complementary videos really help with learning.
André Felipe
André FelipePrompt Engineering Student

Top trainings

FAQ

Who is Dedika?

Is the certificate valid in United States?

Are the courses free?

What is the course workload?

What are the courses like?

How do the courses work?

What is the duration of the courses?

What is the cost or price of the courses?

What is an EAD or online course and how does it work?

PDF Course