Autoplay
Autocomplete
Previous Lesson
Complete and Continue
Python for Network Engineers: Netmiko, NAPALM, pyntc, Telnet, SSH and more! Learn to code
Welcome
Welcome to the Python Course! (4:43)
Good news!
Answering your questions (1:53)
GNS3 Setup
GNS3 Installation (16:40)
GNS3 2.2 VM Install (20:55)
Download Cisco IOS images and use in GNS3 (19:11)
Quick Start Guide to Network Automation
Quick Start 1: Python and Telnet - Configure Cisco Router (16:08)
Q&A: What about doing this with Python3? (2:21)
Quick Start 2: Python, Telnet - Configure Switch VLANs (8:04)
Quick Start 3: Remove Passwords and improve scripts (Telnet) (8:34)
Quick Start 4: Create switch VLANs using loops (Telnet) (8:21)
Quick Start 5: Multiple switches, multiple VLANs (Telnet) (17:49)
Quick Start 6: In-band management network (4:28)
Quick Start 7: PEP Style Guide (5:17)
Quick Start 8:Opening Files and spacing importance! (11:47)
Quick Start 9: Backup Switch Configurations (10:18)
Quick Start 10: Jupyter IDE (11:34)
Quick Start 11: Paramiko (14:04)
Quick Start 12: Netmiko Part 1 (10:17)
Quick Start 13: Netmiko Part 2 (5:59)
Quick Start 14: Netmiko Part 3 (9:34)
Quick Start 15: Netmiko 4 (7:12)
Quick Start 16: Netmiko 5 (10:28)
Quick Start 17: Netmiko Part 6 (7:32)
NAPALM (P75)
NAPALM Introduction (P75_12) (5:57)
Install NAPALM (P68_13) (2:22)
NAPALM connect to switch 1 (P68_14) (3:52)
JSON and more commands (P68_16) (5:02)
Mac address table, ARP cache (P68_17) (5:46)
NAPALM and BGP (P75)
Use NAPALM to retrieve BGP neighbor information: Part 1 (P75_1) (2:09)
Use NAPALM to retrieve BGP neighbor information: Part 2 (P75_2) (5:11)
Use NAPALM to retrieve BGP neighbor information: Part 3 (P75_3) (1:13)
NAPALM: Multiple BGP neighbors (P75_4) (4:42)
NAPALM and bigger BGP Network Part 1 (P75_5) (4:23)
NAPALM and bigger BGP network Part 2 (P75_5b) (2:51)
Use NAPALM for device configuration audit and changes (P75)
Use NAPALM to configure Access lists (P75_6) (3:45)
Check if ACL already exists and add if missing (P75_7) (4:17)
Use NAPALM for auditing device configs (P75_8) (0:52)
Use NAPALM to add multiple config files (P75_9) (4:08)
NAPALM: Multiple config files, multiple devices (P75_10) (3:55)
Want more?
pyntc (P69)
pyntc Introduction (P69_1_2) (5:21)
pyntc Installation and get device version information (P69_3_4) (5:40)
Use pyntc to configure a Cisco IOS device (P69_5) (7:20)
Use pyntc to retrieve a switch running-config (P69_6) (2:13)
Use pyntc and github to save a switch running config to a file (P69_7_8) (4:43)
Backup a switch config with 5 lines of code! (P69_9) (2:41)
Want more?
Iteration Examples: Netmiko scripts (P77)
Netmiko Iteration: Script Overview (5:51)
Netmiko Iteration (Script 1): Basic Script (1:32)
Netmiko Iteration (Script 2): Open a file of commands (5:50)
Netmiko Iteration (Script 3): Configure multiple devices using a file of devices (7:24)
Netmiko Iteration (Script 4): Remove passwords from script (4:13)
Netmiko Iteration (Script 5): Except (Error) Handling (7:36)
Netmiko Iteration (Script 6): Determine device types and run specific device type (7:43)
Netmiko Iteration (Script 6b): Iterate device type script (3:03)
Netmiko Scaling
Encrypted Password File (7:30)
Netmiko Sequential Part 1 (5:03)
Netmiko Sequential Part 2 (6:52)
Netmiko Multithreading (5:40)
Netmiko Thread Pools (5:40)
Python Theory (P61)
Theory topics - very short (P62_14_15) (2:04)
Keep learning (P61_26) (2:17)
2.7 and 3 setup (P61_27) (4:11)
2.7 and 3 examples (P61_28) (3:13)
Basic Hello World Scripts (P61_29_30) (1:29)
Python Theory: Objects, Variables and Data Types
Python Objects (P61_1) (5:12)
Python Objects Part 2 (P61_2) (1:12)
Python Variables Part 1 (P61_3) (3:30)
Python Variables Part 2 (P61_4_5) (2:36)
Python Variables Part 3 (P61_6) (4:15)
Python Variables Part 4 (P61_7_8) (2:26)
Data Types (P61_9) (1:47)
Data Type testing (P61_10) (3:15)
Python Theory: Numbers (P61)
Introduction (P61_19) (0:58)
Numeric Types (P61_11) (1:50)
Int and Float (P61_12) (1:45)
Operators (P61_14) (4:35)
Operators Part 2 (P61_15_16) (6:27)
Operators (P61_17_18) (3:27)
bin hex oct (P61_20) (1:33)
binary decimal octal number examples (P62_1) (0:31)
int calculation (P62_2) (3:13)
Floats (P62_3) (2:11)
Python Theory: Strings
strings (P62_4) (3:33)
strings (GT 06-8-17 7_8) (3:24)
convert to a string using str() (P62_10) (0:38)
escape special character meaning with \ (P62_12) (3:03)
strings (P62_9) (1:58)
string concatenation with + (P62_13) (1:26)
multiplication operator * (P62_16) (1:25)
string offsets - extract characters with [] (P62_17) (3:37)
string slice _ slicing (P62_string) (3:37)
string slice _ slicing 2 (P62_1string) (1:23)
string slice _ slicing 3 (P62_2string) (2:17)
lower upper (P73_11) (2:10)
startswith endswith (P73_12) (2:13)
strip lstrip rstrip (P73_13) (2:14)
isdigit (P73_14) (1:15)
count (P73_15) (3:18)
Old Style text using % (P66_24) (3:34)
Strings: New way to do text using {} (P73_16) (2:39)
dir (P73_9) (1:44)
Get version information from a switch (P65)
Get show version from switch (P65_14) (4:18)
Telnet and string offset (P65_16) (4:36)
Show version using len (P65_17) (2:02)
Split 1 (P65_18_21) (1:56)
Split 2 (P73_18) (1:18)
List and join (P73_17) (2:53)
List and len - use Interface example (P73_25) (1:47)
Index introduction(P66_1) (3:16)
Real switch get version using index and slice (P66_2_3) (3:53)
Python3 telnet to switch (P66_4) (3:22)
Count (P66_6) (5:59)
Use find to get information from a real switch (P66_10) (5:20)
Python3 Telnet versus Python2 - Find version of software (P66_11) (3:19)
find not found (P66_12) (0:51)
String methods - upper (P66_13) (1:42)
String methods - startswith and endswith (P66_14) (1:43)
String methods - strip (P66_15) (3:08)
String methods - split demo (P66_16) (1:09)
String methods - Join (P66_17_18) (0:47)
String methods - is it in string? (P66_19) (1:00)
String concatenation (P66_20) (0:30)
Capitalize, upper, lower, swap (P66_23) (1:46)
Python Theory: Comparisons (P73)
Boolean comparisons (P73_20) (4:45)
Boolean Truth Table (P73_21) (2:00)
Boolean Truth Table Demo (P73_22_23_24) (3:38)
false conditions (P73_26) (1:20)
Python Theory: Lists
Lists versus tuples (P70_1) (3:05)
lists (P70_2_3) (2:44)
Create a list using split (P70_4) (3:09)
lists in lists (P70_5_6) (4:50)
lists verus tuples - documentation (P70_7) (0:47)
list merge and extend (P70_8) (1:43)
list methods (P70_9) (1:35)
lists insert and delete (P70_10) (4:09)
list pop index and in (P70_11) (3:55)
reverse sort (P70_12) (4:37)
len copy list (P70_13) (3:57)
Python Theory: Tuples (P70)
tuples (P70_15) (4:52)
Tuples and Sequences (P70_16) (1:58)
Python Theory: Code Structures (P72)
Comments in Code (P72_2) (3:17)
Line Continuation (P72_3) (1:42)
Python Theory: if / else / elseif logic (P73)
if else intro (P72_4 P73_5) (7:08)
Physical router demonstration (P73_7_8) (7:58)
esleif (P73_19) (4:26)
Python Theory: While Loops (P73)
while loop (P73_28) (4:23)
infinite while loop with break (P73_29) (3:21)
infinite while loop with continue (P73_30 _31) (3:18)
while loop with a list (P73_32) (2:44)
while loop with else (P73_) (2:14)
Python Theory: For Loops (P73)
for loops (P73_1) (3:18)
for loop with dictionary (P73_2) (2:57)
for loop with if and lists (P73_4) (1:34)
Python Theory: Ranges (P74)
Ranges 1 (P74_7_8) (4:54)
Ranges 2 (P74_10) (2:43)
Python Theory: Dictionaries (P70)
Dictionary Theory (P70_17) (3:04)
Dictionary Demo (P70_18) (3:28)
Combine Dictionaries (P70_19) (1:31)
Dictionaries: Clear and check (P70_20) (3:25)
Dictionaries: Add values (P70_21) (4:27)
Python Theory: Functions (P74)
Functions Intro (P74_11) (6:09)
Functions: Part 2 (P74_12) (3:33)
Functions Part 3 (P74_13) (2:51)
Functions - Netmiko and Router (P74_1) (3:44)
Functions - Netmiko and Router (P74_2) (3:56)
function 6 - Named keyword arguments (Netmiko) (P74_3) (4:08)
Network Automation Appliance
GNS3 Automation Container import and testing Part 1 (6:10)
GNS3 Automation Container import and testing Part 2 (8:34)
Python Objects Part 2 (P61_2)
Lesson content locked
If you're already enrolled,
you'll need to login
.
Enroll in Course to Unlock