Python 3 Network Programming – Build 5 Network Applications
English | MP4 | AVC 1280×720 | AAC 44KHz 2ch | 10.5 Hours | 4.55 GB
eLearning | Skill level: All Levels
- No prior Python knowledge is required! This training teaches your everything, from scratch.
- You should have a great desire to learn Python programming and do it in a hands-on fashion, without having to watch countless videos filled with slides and theory.
- You should already be familiar with networking concepts like: Switching, TCP/IP, CLI, SSHv2, Telnet, OSI Layers.
- You are going to use only free software throughout the course: Python 3.7, VirtualBox, Arista vEOS, Notepad++.
- All you need is a decent PC or laptop (2GHz CPU, 8-16GB RAM) and an Internet connection to download the free tools.
- Preferably, you should have a Windows OS to work on, to be fully synchronized with the course content.
✔ Why would you take this course?
Hi! My name is Mihai. I’ve been a Network Engineer since 2008, having the privilege of working for 3 major corporations and configuring, maintaining and testing multi-vendor network environments. At the same time, I managed to obtain several well-known certifications, such as CCNA, CCDA, JNCIA and CCNP, which complemented the skills I was getting from my job and increased the number of job offers I was receiving to my LinkedIn inbox.
But the thing that simply jumpstarted my career was learning the Python programming languageand implementing it in some of my daily tasks and processes. I’ve been a self-taught guy for most of my adult life and, since I lacked the time to read endless, boring programming books, I chose to learn by watching video tutorials and “getting my hands dirty” with code. Unfortunately, at that time I was unable to find a complete, coherent programming course for network engineers, so I had to put together various pieces of information scattered across Google and YouTube.
Almost two years later, after I had the chance to practice my new Python skills intensively, performing various tasks on network devices and automating hundreds of network tests, I decided to create this course for you – the network professional who knows that getting a certification just isn’t enough anymore in today’s job market. The ability to write scripts and automate certain tasks is one of the primary skills that the big employers are looking for.
This course simply enables you to save time and efforts whilst acquiring these in-demand skills and upgrading your career.
Join thousands of successful network engineers who have decided to learn Python using this 100% hands-on course!
Without further ado, I’ll let you read more about the contents of the course down below and I’ll hopefully see you in the first lecture.
✔ 10+ hours of Python 3 content designed for Network Engineers
✔ I am updating the course frequently with new videos and code
✔ I am answering all your questions, usually in less than 24 hours
✔ Full Python 3 applications, quizzes and notebooks are included
✔ Downloadable Python 3 cheat sheet and 200+ pages PDF e-book are included
✔ Udemy Bestselling Instructor with over 1500 ⭐⭐⭐⭐⭐ reviews
✔ Over 60.000 satisfied students across several e-learning platforms
✔ Certificate of Completion is Included
“Have finished 35% of the course, so far it’s the best Python-for-network-engineer course I have ever attended, fundamental topics are well demonstrated and explained, I strongly recommend this course to any network engineers who want to master Python in a relatively short period of time.” by Parry Wang
✔ What others have to say about my Python courses?
Before you read what I have to say, see what my students are saying about my courses:
“What an incredible value and learning experience!” by Sean A.
“Excellent material. Kudos to a great instructor with a vast level of creativity.” by Anthony W.
“I can say this man is going on smoothly and perfectly, explaining in the most empirical/foundational way.” by Kolapo A.
✔ What’s this course all about?
Python Network Programming (version 3.7) course aimed not only at network professionals, but at anyone having little or no experience in coding or network automation and a great desire to start learning Python from scratch. This hands-on Python Network Programming training takes you from “Hello World!” to building complex network applications in no time.
During this course you will learn Python concepts which are relevant to your networking job and build some amazing network tools:
- Introduction – What’s This Course All About?
- Python 3 – Basics
- Python 3 – Strings
- Python 3 – Numbers and Booleans
- Python 3 – Lists
- Python 3 – Sets
- Python 3 – Tuples
- Python 3 – Ranges
- Python 3 – Dictionaries
- Python 3 – Conditionals, Loops and Exceptions
- Python 3 – Functions and Modules
- Python 3 – File Operations
- Python 3 – Regular Expressions
- Python 3 – Classes and Objects
- Python 3 – Advanced Concepts and Tools
- Python 3 – Download the Cheat Sheet
- Python 3 – Download the E-Book
- Setting Up the Working Environment
- Network Application #1 – Reading / Writing Device Configuration via SSH
- Network Application #2 – Building an Interactive Subnet Calculator
- Network Application #3 – Extracting Network Parameters & Building Graphs
- Network Application #4 – Building a Basic Network Packet Sniffer
- Network Application #5 – Config File Management and E-mail Notifications
- [BONUS] Running Python Code via Remote Servers
- Final Section – Get Your Certificate and Let’s Connect on Social Media!
Sounds unbelievable given your current programming experience? Well, it’s true! How?
First, you will learn and practice every Python 3 key concept, which is explained in one or more video lectures, followed by a short quiz. Each video is filled with relevant examples, in a learn-by-doing fashion and the quizzes will help you consolidate the main ideas behind each Python topic.
After laying the foundation (and also exploring some advanced Python topics), you will dive right into the real-life network scenarios and apply your knowledge to build 5 great network tools using the power of Python.
Equipped with working files, cheat sheets and Python code samples, you will be able to work alongside me on each lecture and each application. I will provide the full code for each application, so you can save time and start coding and testing on the spot.
We will use emulated Arista vEOS switches in VirtualBox to test our Python apps in a network environment, so you can see the actual results of running your Python code.
I encourage you to learn Python, an amazingly beginner-friendly programming language and take your network engineering job to a higher level of automation.
✔ Is this course regularly updated?
- Update: July 29th, 2019 – 3 new videos answering some FAQs in the Q&A area
- Update: June 12th, 2019 – 2 new videos; small fixes and updates
- Update: May 17th, 2019 – Updated the Python 3 Cheat Sheet PDF and course FAQ
- Update: February 11th, 2019 – Running Python Code via Remote Servers
- Major Update: December 12th, 2018 – Re-filmed the network apps part of the course, upgrading to Python 3 and optimizing the code.
- Major Update: November 8th, 2018 – Re-filmed the first 10 sections of the course, upgraded to Python 3 and improved the video quality to 1080p Full HD.
- Course Launch: May 19th, 2015
✔ What others have to say about this course?
“I have been programming since 1978 and wanted to learn python. I have had no java or OOP experience, and I tried several ‘paper’ tutorials but got little out of them. The first part of this course is a steady walk through the Python language at just the right speed. The instructor seems to touch all the basis in a logical and methodical way while providing examples and explanations. I can only conclude the instructor is a professional educator who spent considerable time structuring and organizing the course. The result is evident. THIS IS A GREAT WAY TO LEARN PYTHON!” by Larry Laswell
“I’ve tried learning from the books & multiple videos – most were too basic to make a practical app. Some books were too thick and made me sleep. But still none of the materials had the perfect balance like this course where all the basics were covered, instructions were concise, and Mihai walks you through how to create 7 practical apps step by step. I’ve also tried reading some advanced python book which didn’t make sense because it was too advanced. Let me tell you, this is hands down “that course that takes you up to beyond the basics” to bridge you to the advance topics. Right now I’m hitting the advanced topics and it finally makes sense…” by Joon Park
“Usually I’m not doing courses review but this time I will make an exception. During time I took a lot of trainings but very few provided by Udemy proved as having the right approach in teaching the audience. I will mark this one as being one of my personal top three best trainings as content’s quality, technical explanations, and additional learning materials perspective. Long story short this course is a very simple, straight forward way of learning Python for managing IT networks.” by Johnny Stanescu
“This is a great course for network engineers who would like to start automating their tasks. Geared towards beginners, this course teaches the fundamentals of programming and applying those concepts to networking. There is a lot of fluff about python on the internet, however the instructor managed to put together the necessary information to start automating the network. A working knowledge of TCP/IP is needed to get the most out of this course. Should you understand every lecture, you will be ready to start writing your own scripts according to your needs. In particular, I loved the use of scapy, an amazing tool which should be in the arsenal of anyone working with TCP/IP.” by Costin-Alin Neacsu
“I’ve seen the blueprint and some demo videos and I was convinced right away. Without a doubt, it’s one of the best trainings a network engineer can have. It gives you actual valuable and marketable skills that you can use in your daily job. Mihai explains the topics really well, with practical examples making it a fun way to learn. Highly recommended.” by Vlad Vlaicu
⚠ Important information before you enroll!
- In case you find the course useless for your career, don’t forget you are covered by a 30-day money back guarantee, full refund, no questions asked.
- Once enrolled, you have unlimited, 24/7, lifetime access to the course (unless you choose to drop the course during the first 30 days).
- You will have instant and free access to any updates I’ll add to the course – video lectures, additional resources, exercises or new code.
- You will benefit from my full support regarding any question you might have and your course colleagues will help you, as well. This is not just a programming course, it’s an amazing learning community!
- Check out the promo video at the top of this page and some of the free preview videos in the curriculum to get a taste of my teaching style and methods before making your decision!
“I would firstly thank you for making this course . Secondly, i did like the approach. You understand the mindset of the beginner. I would recommend this course for all those who want to consider using Python for network automation.”by Pramod Ramu
✔ Enroll NOW and hop on the Python 3 Network Programming train. Let’s get started!
- Network Administrators, Network Engineers, Network Managers, Systems Engineers.
- Network Quality Assurance Engineers, Network Analysts, Network Professionals.
- Python Developers Who Want to Apply Their Knowledge in Network Automation.
Introduction – What’s This Course All About
1 What Will You Learn What Benefits You Get From Taking This Course
2 Quick Introductory Note
3 How to Ask Good Questions on Udemy
4 FAQ – Check This First If You Run Into Any Issues
[Python 101] Python 3 – Basics
5 How to Install Python 3
6 Python 3 Basics – Keywords
7 Python 3 – Data Types
8 Python 3 Basics – Quiz
9 Installing Python 3 on Windows, Linux and MacOS
10 The Python Interpreter
11 Python 3 Basics – Scripts
12 Python 3 Basics – User Input
13 Notebook – User Input
14 User Input – Quiz
15 Python 3 Basics – Variables
16 Notebook – Variables
[Python 101] Python 3 – Strings
17 Python 3 Strings – Introduction
18 Python 3 Strings – Methods
19 Python 3 Strings – Operators & Formatting
20 Python 3 Strings – Slices
21 Notebook – Strings
22 Strings – Quiz
[Python 101] Python 3 – Numbers and Booleans
23 Python 3 Numbers – Math Operators
24 Notebook – Numbers and Math Operators
25 Numbers – Quiz
26 Python 3 Booleans – Logical Operators
27 Notebook – Booleans and Logical Operators
28 Booleans – Quiz
[Python 101] Python 3 – Lists
29 Python 3 Lists – Introduction
30 Python 3 Lists – Methods
31 Python 3 Lists – Slices
32 Notebook – Lists
33 Lists – Quiz
[Python 101] Python 3 – Sets
34 Python 3 Sets – Introduction
35 Python 3 Sets – Methods
36 Python 3 Sets – Frozensets
37 Notebook – Sets and Frozensets
38 Sets – Quiz
[Python 101] Python 3 – Tuples
39 Python 3 Tuples – Introduction
40 Python 3 Tuples – Methods
41 Notebook – Tuples
42 Tuples – Quiz
[Python 101] Python 3 – Ranges
43 Python 3 Ranges – Introduction
44 Python 3 Ranges – Methods
45 Notebook – Ranges
46 Ranges – Quiz
[Python 101] Python 3 – Dictionaries
47 Python 3 Dictionaries – Introduction
48 Python 3 Dictionaries – Methods
49 Python 3 – Conversions Between Data Types
50 Notebook – Dictionaries and Conversions Between Data Types
51 Dictionaries – Quiz
[Python 101] Python 3 – Conditionals, Loops and Exceptions
52 Python 3 Conditionals – If Elif Else
53 Notebook – Break Continue Pass
54 Python 3 – Exceptions
55 Python 3 – Try Except Else Finally
56 Notebook – Try Except Else Finally
57 Conditionals and Loops – Quiz
58 Notebook – If Elif Else Conditionals
59 Python 3 Loops – For For-Else
60 Notebook – For For-Else Loops
61 Python 3 Loops – While While-Else
62 Notebook – While While-Else Loops
63 Python 3 Nesting – If For While
64 Notebook – Nesting
65 Python 3 – Break Continue Pass
[Python 101] Python 3 – Functions and Modules
66 Python 3 Functions – Basics
67 Python 3 Functions – Arguments
68 Notebook – Functions – Basics
69 Python 3 Functions – Namespaces
70 Python 3 Modules – Importing
71 Python 3 Modules – Helpful Functions dir() and help()
72 Python 3 Modules – Installing a Non-Default Module
73 Notebook – Modules and Importing
74 Functions – Quiz
[Python 101] Python 3 – File Operations
75 Python 3 Files – Opening & Reading
76 Python 3 Files – Writing & Appending
77 Python 3 Files – Closing. The with Method
78 Python 3 Files – Access Modes Summary
79 Notebook – File Operations
80 File Operations – Quiz
[Python 101] Python 3 – Regular Expressions
81 Python 3 Regex – match() & search()
82 Python 3 Regex – findall() & sub()
83 Python 3 Regex – Regular Expressions Summary
84 Notebook – Regular Expressions
85 Regular Expressions – Quiz
[Python 101] Python 3 – Classes and Objects
86 Python 3 Classes – Objects
87 Python 3 Classes – Inheritance
88 Notebook – Classes and Objects
89 Classes – Quiz
[Python 101] Python 3 – Advanced Concepts and Tools
90 Python 3 – List Set Dictionary Comprehensions
91 Notebook – Itertools
92 Python 3 – Decorators
93 Notebook – Decorators
94 Python 3 – Threading Basics
95 Notebook – Threading Basics
96 Python 3 – Coding Best Practices
97 Advanced Concepts and Tools – Quiz
98 Notebook – List Set Dictionary Comprehensions
99 Python 3 – Lambda Functions
100 Notebook – Lambda Functions
101 Python 3 – map() and filter()
102 Notebook – map() and filter()
103 Python 3 – Iterators and Generators
104 Notebook – Iterators and Generators
105 Python 3 – Itertools
[Python 101] Python 3 – Download the Cheat Sheet
106 Python 3 – Cheat Sheet
[Python 101] Python 3 – Download the E-Book
107 Python 3 – 200+ Pages E-Book
[APP] Setting Up the Working Environment
108 Network Setup Overview
109 Any Connection Issues Check Out This Troubleshooting Checklist!
110 Installing the Virtualization Software
111 Installing the Virtualization Software on Windows, Linux, MacOS
112 Downloading & Installing the Network Device VM
113 Signing Up to the Arista Software Download Portal
114 Importing the VM & Tweaking the VM Settings
115 Connecting the Local PC to the Devices
116 Checking the SSH Configuration and Testing the Connectivity
117 Necessary SwitchRouter Configuration
[APP] Network Application #1 – Reading Writing Device Configuration via SSH
118 Planning the Application
119 Notebook – Checking UsernamePassword File Validity
120 Checking Command File Validity
121 Notebook – Checking Command File Validity
122 Establishing the SSH Connection
123 Notebook – Establishing the SSH Connection
124 Enabling Simultaneous SSH Connections
125 Notebook – Enabling Simultaneous SSH Connections
126 Putting Everything Together
127 Download the Full Code – Network Application and Modules
128 Reading Device Configuration
129 Logical Flow Diagram
130 Extracting Network Parameters
131 Configuring Multiple Devices Simultaneously
132 Checking IP File Validity
133 Notebook – Checking IP File Validity
134 Checking IP Address Validity
135 Notebook – Checking IP Address Validity
136 Checking IP Address Reachability
137 Notebook – Checking IP Address Reachability
138 Checking UsernamePassword File Validity
[APP] Network Application #2 – Building an Interactive Subnet Calculator
139 What Are We Going to Build
140 Random IP Address Generation Algorithm
141 Notebook – Random IP Address Generation Algorithm
142 Testing the Application
143 Download the Full Application Code
144 Planning the Application
145 Logical Flow Diagram
146 Checking IP Address and Subnet Mask Validity
147 Notebook – Checking IP Address and Subnet Mask Validity
148 Converting to Binary. Calculate Hosts per Subnet. Wildcard Masks
149 Notebook – Converting to Binary. Calculate Hosts per Subnet. Wildcard Masks
150 Converting to Binary. Find the Network and Broadcast Addresses
151 Notebook – Converting to Binary. Find the Network and Broadcast Addresses
[APP] Network Application #3 – Extracting Network Parameters & Building Graphs
152 Planning the Application
153 Notebook – Matplotlib – Building the Switch CPU Utilization Graph
154 Testing the Application
155 Download the Full Code – Network Application, Graph Building Script and Modules
156 Logical Flow Diagram
157 Connecting to the Network Device via SSH
158 Notebook – Configuring the Arista Switch for SSH Connectivity
159 Extracting the CPU Utilization Value and Saving It to a Text File
160 Notebook – Extracting the CPU Utilization Value and Saving It to a Text File
161 Polling the Switch Every 10 Seconds
162 Notebook – Polling the Switch Every 10 Seconds
163 Matplotlib – Building the Switch CPU Utilization Graph
[APP] Network Application #4 – Building a Basic Network Packet Sniffer
164 Planning the Application
165 Notebook – Importing the Necessary Modules
166 Asking the User for Input Interface, Number of Packets, Interval, Protocol
167 Notebook – Asking the User for Input
168 Extracting Parameters from Packets and Writing to a Log File
169 Notebook – Extracting Parameters from Packets and Writing to a Log File
170 Testing the Application – Running the Sniffer and Filtering Packets by Protocol
171 Notebook – Running the Sniffer
172 Download the Full Application Code
173 Logical Flow Diagram
174 Setting Up a Linux VM in VirtualBox
175 Notebook – Downloading the Linux VM
176 Configuring the Linux VM
177 Notebook – Configuring the Linux VM – Make Sure You Follow These Steps
178 Meeting Scapy
179 Notebook – Meeting Scapy
180 Importing the Necessary Modules
[APP] Network Application #5 – Config File Management and E-mail Notifications
181 Planning the Application
182 Sending E-mails to the Network Admin with Device Configuration Changes
183 Notebook – Sending E-mails to the Network Admin
184 Creating a Schedule for Sending E-mails on a Daily Basis in Linux
185 Notebook – Creating a Schedule for Sending E-mails
186 Testing the Application
187 Download the Full Application Code
188 Logical Flow Diagram
189 Importing the Modules and Defining the Necessary Parameters
190 Notebook – Installing Necessary Modules and Official Documentation
191 Notebook – Importing the Modules and Defining the Necessary Parameters
192 Connecting to the Arista Switch via SSH using Netmiko
193 Notebook – Connecting to the Arista Switch via SSH Using Netmiko
194 Handling the Configuration Files and Extracting the Configuration Changes
195 Notebook – Extracting the Configuration Changes
[BONUS] Running Python Code via Remote Servers
196 Running CLI Commands via a Remote Server
197 Running a Local Python Script via a Remote Server
198 Running a Remote Python Script via a Remote Server
199 Notebook – Running Python Code via Remote Servers
Final Section – Get Your Certificate and Let’s Connect on Social Media!
200 Final Thoughts
201 How to Get Your Certificate of Course Completion
202 Bonus Lecture