Autoplay
Autocomplete
Previous Lesson
Complete and Continue
Python 3 Network Programming - Build 5 Network Apps
[Python 101] Python 3 - Basics
How to Install Python 3 on Windows (2:57)
How to Install Python 3 on macOS (2:35)
UPDATE! Python Versions
The Python Interpreter & IDLE in Windows (3:19)
The Python Interpreter & IDLE in macOS (2:35)
Python 3 Basics - Scripts in Windows (3:58)
UPDATE! Saving a Python script in Notepad++
Python 3 Basics - Scripts in macOS (4:21)
Python 3 - Reasons for the 'No such file or directory' error (or similar) (5:07)
Python 3 Basics - User Input (3:57)
Notebook - User Input
Python 3 Basics - Variables (6:19)
Notebook - Variables
Python 3 Basics - Keywords
Python 3 - Data Types (1:51)
Useful links in this section
[Python 101] Python 3 - Strings
Why learn all the Python topics below before building the network apps? (3:04)
Python 3 Strings - Introduction (6:57)
Python 3 Strings - Methods (8:54)
Python 3 Strings - Operators & Formatting (7:23)
Python 3 Strings - Formatting Using F-strings (2:25)
Python 3 Strings - Slices (7:42)
Python 3 Strings - Slicing Using a Step (4:08)
Notebook - Strings
Useful links in this section
[Python 101] Python 3 - Numbers and Booleans
Python 3 Numbers - Math Operators (6:15)
Notebook - Numbers and Math Operators
Python 3 Booleans - Logical Operators (5:58)
Notebook - Booleans and Logical Operators
Useful links in this section
[Python 101] Python 3 - Lists
Python 3 Lists - Introduction (3:42)
Python 3 Lists - Methods (8:27)
Python 3 Lists - Slices (5:40)
Notebook - Lists
Useful links in this section
[Python 101] Python 3 - Sets
Python 3 Sets - Introduction (3:21)
Python 3 Sets - Methods (2:51)
Python 3 Sets - Frozensets (3:04)
Notebook - Sets and Frozensets
Useful links in this section
[Python 101] Python 3 - Tuples
Python 3 Tuples - Introduction (4:48)
Python 3 Tuples - Tuples vs. Lists (2:50)
Python 3 Tuples - Methods (3:25)
Notebook - Tuples
Useful links in this section
[Python 101] Python 3 - Ranges
Python 3 Ranges - Introduction (4:06)
Python 3 Ranges - Methods (2:40)
Notebook - Ranges
Useful links in this section
[Python 101] Python 3 - Dictionaries
Python 3 Dictionaries - Introduction (3:11)
Python 3 Dictionaries - Methods (6:25)
Python 3 - Conversions Between Data Types (6:51)
Notebook - Dictionaries and Conversions Between Data Types
Useful links in this section
[Python 101] Python 3 - Conditionals, Loops and Exceptions
Python 3 Conditionals - If / Elif / Else (15:20)
Notebook - If / Elif / Else Conditionals
Python 3 Loops - For / For-Else (8:42)
Notebook - For / For-Else Loops
Python 3 Loops - While / While-Else (6:05)
Notebook - While / While-Else Loops
Python 3 Nesting - If / For / While (10:10)
Notebook - Nesting
Python 3 - Break / Continue / Pass (7:40)
Notebook - Break / Continue / Pass
Python 3 - Exceptions (2:27)
Python 3 - Try / Except / Else / Finally (9:42)
Notebook - Try / Except / Else / Finally
Useful links in this section
[Python 101] Python 3 - Functions and Modules
Python 3 Functions - Basics (9:51)
Python 3 Functions - Arguments (8:03)
Notebook - Functions - Basics
Python 3 Functions - Namespaces (10:48)
Python 3 Modules - Importing (11:30)
Python 3 Modules - Helpful Functions: dir() and help() (2:20)
Notebook - Modules and Importing
Python 3 Modules - Installing a Non-Default Module in Windows (3:54)
Python 3 Modules - Installing a Non-Default Module in macOS
Useful links in this section
[Python 101] Python 3 - File Operations
Python 3 Files - Opening & Reading (12:10)
Python 3 Files - Quick Note for Windows Users (2:49)
Python 3 Files - Additional Way of Avoiding the Unicode Error (1:38)
Python 3 Files - Writing & Appending (7:46)
Python 3 Files - Closing. The "with" Method (2:28)
Python 3 Files - Access Modes Summary
Notebook - File Operations
Useful links in this section
[Python 101] Python 3 - Regular Expressions
Python 3 Regex - match() & search() (16:24)
Python 3 Regex - findall() & sub() (6:17)
Python 3 Regex - Regular Expressions Summary
Notebook - Regular Expressions
Bonus Video: Special Sequences (6:01)
Bonus Video: Sets of Characters (5:07)
Bonus Video: OR in Regular Expressions (3:48)
Bonus Video: split() & subn() (3:33)
Bonus Video: Additional Regex Syntax Elements (4:45)
Bonus Video: AttributeError: 'NoneType' object has no attribute (3:34)
Useful links in this section
[Python 101] Python 3 - Classes and Objects
Python 3 Classes - Objects (11:45)
Python 3 Classes - Inheritance (6:19)
Notebook - Classes and Objects
Useful links in this section
[Python 101] Python 3 - Advanced Concepts and Tools
Python 3 - List / Set / Dictionary Comprehensions (4:54)
Notebook - List / Set / Dictionary Comprehensions
Python 3 - Lambda Functions (4:40)
Notebook - Lambda Functions
Python 3 - map() and filter() (2:29)
Notebook - map() and filter()
Python 3 - Iterators and Generators (6:48)
Notebook - Iterators and Generators
Python 3 - Itertools (5:43)
Notebook - Itertools
Python 3 - Decorators (2:37)
Notebook - Decorators
Python 3 - Threading Basics (5:36)
Notebook - Threading Basics
Python 3 - Coding Best Practices (2:36)
Useful links in this section
[APP] Setting Up the Working Environment
Network Setup Overview (1:27)
Installing the Virtualization Software (1:37)
Installing the Virtualization Software on Windows, Linux, macOS
Downloading & Installing the Network Device VM (2:16)
Note about Arista vEOS versions
Signing Up to the Arista Software Download Portal
Importing the VM & Tweaking the VM Settings (3:08)
UPDATE! vEOS First Boot and the ZeroTouch Feature
Connecting the Local PC to the Devices in Windows (4:52)
Connecting the Local PC to the Devices in macOS
Necessary Switch/Router Configuration
Checking the SSH Configuration and Testing the Connectivity (3:03)
UPDATE! Putty asking for Host Key / Password
Any Connection Issues? Check Out This Troubleshooting Checklist!
[APP] Network Application #1 - Reading / Writing Device Configuration via SSH
Planning the Application (5:46)
Logical Flow Diagram
Checking IP File Validity (4:09)
Notebook - Checking IP File Validity
Checking IP Address Validity (12:51)
Notebook - Checking IP Address Validity
Checking IP Address Reachability (3:57)
Notebook - Checking IP Address Reachability
Note about pinging in Windows vs. Mac OS / Linux
Checking Username/Password File Validity (1:45)
Notebook - Checking Username/Password File Validity
Checking Command File Validity (1:09)
Notebook - Checking Command File Validity
Establishing the SSH Connection (13:13)
Notebook - Establishing the SSH Connection
Enabling Simultaneous SSH Connections (2:13)
Notebook - Enabling Simultaneous SSH Connections
Putting Everything Together (2:56)
Download the Full Code - Network Application and Modules
Reading Device Configuration (9:19)
Extracting Network Parameters (12:13)
Configuring Multiple Devices Simultaneously (2:58)
Useful links in this section
[APP] Network Application #2 - Building an Interactive Subnet Calculator
What Are We Going to Build? (2:44)
Planning the Application (2:11)
Logical Flow Diagram
Checking IP Address and Subnet Mask Validity (5:08)
Notebook - Checking IP Address and Subnet Mask Validity
Converting to Binary. Calculate Hosts per Subnet. Wildcard Masks (12:34)
Notebook - Converting to Binary. Calculate Hosts per Subnet. Wildcard Masks
Converting to Binary. Find the Network and Broadcast Addresses (10:50)
Notebook - Converting to Binary. Find the Network and Broadcast Addresses
Random IP Address Generation Algorithm (8:23)
Notebook - Random IP Address Generation Algorithm
Testing the Application (4:11)
Download the Full Application Code
[APP] Network Application #3 - Extracting Network Parameters & Building Graphs
Planning the Application (2:12)
Logical Flow Diagram
Connecting to the Network Device via SSH (6:17)
Notebook - Configuring the Arista Switch for SSH Connectivity
Extracting the CPU Utilization Value and Saving It to a Text File (7:51)
Notebook - Extracting the CPU Utilization Value and Saving It to a Text File
Polling the Switch Every 10 Seconds (2:51)
Notebook - Polling the Switch Every 10 Seconds
Matplotlib - Building the Switch CPU Utilization Graph (5:57)
Notebook - Matplotlib - Building the Switch CPU Utilization Graph
Testing the Application (4:43)
Download the Full Code - Network Application, Graph Building Script and Modules
Useful links in this section
[APP] Network Application #4 - Building a Basic Network Packet Sniffer
Planning the Application (3:13)
Logical Flow Diagram
Setting Up a Linux VM in VirtualBox (4:46)
Notebook - Downloading the Linux VM
Configuring the Linux VM (9:42)
Notebook - Configuring the Linux VM - Make Sure You Follow These Steps
Meeting Scapy (10:08)
Notebook - Meeting Scapy
Importing the Necessary Modules (3:26)
Notebook - Importing the Necessary Modules
Asking the User for Input: Interface, Number of Packets, Interval, Protocol (6:32)
Notebook - Asking the User for Input
Extracting Parameters from Packets and Writing to a Log File (4:49)
Notebook - Extracting Parameters from Packets and Writing to a Log File
Testing the Application - Running the Sniffer and Filtering Packets by Protocol (7:20)
Notebook - Running the Sniffer
Download the Full Application Code
[APP] Network Application #5 - Config File Management and E-mail Notifications
Planning the Application (3:22)
Logical Flow Diagram
Importing the Modules and Defining the Necessary Parameters (3:48)
Notebook - Installing Necessary Modules and Official Documentation
Notebook - Importing the Modules and Defining the Necessary Parameters
Connecting to the Arista Switch via SSH using Netmiko (1:51)
Notebook - Connecting to the Arista Switch via SSH Using Netmiko
Handling the Configuration Files and Extracting the Configuration Changes (6:03)
Notebook - Extracting the Configuration Changes
Sending E-mails to the Network Admin with Device Configuration Changes (3:44)
Notebook - Sending E-mails to the Network Admin
Creating a Schedule for Sending E-mails on a Daily Basis in Linux (5:15)
Notebook - Creating a Schedule for Sending E-mails
Testing the Application (5:15)
Download the Full Application Code
Useful links in this section
[BONUS] Running Python Code via Remote Servers
Running CLI Commands via a Remote Server (7:20)
Running a Local Python Script via a Remote Server (2:37)
Running a Remote Python Script via a Remote Server (2:25)
Notebook - Running Python Code via Remote Servers
Useful links in this section
Connecting to the Arista Switch via SSH using Netmiko
Lesson content locked
If you're already enrolled,
you'll need to login
.
Enroll in Course to Unlock