Python for Network Automation is a powerful approach to streamline and enhance the management, configuration, and monitoring of computer networks. Leveraging the simplicity and versatility of Python, network engineers and administrators can create scripts, tools, and applications to automate repetitive tasks, optimize network performance, and troubleshoot issues efficiently.
With its extensive set of libraries and frameworks, Python offers robust capabilities for interacting with network devices, protocols, and APIs. From automating device configuration changes and provisioning to monitoring network health and analyzing traffic patterns, Python provides a flexible and scalable solution for network automation across diverse environments.
Section-1: Introduction to ProgrammingÂ
Section-2: Basics of PythonÂ
2.1: Python Objects & Data StructureÂ
2.2: Python Comparison OperatorsÂ
2.3: Python Data TypesÂ
2.4: Python Statements (if/else statements)Â
2.5: Loops in Python (While/For Loop)Â
2.6: Method and FunctionsÂ
2.7: Python ClassesÂ
Section-3: Network Automation Using Python:Â
3.1: Use of Paramiko with practical exampleÂ
3.2: File Operations in Python Script with ParamikoÂ
3.3: Use of String MethodsÂ
3.4: Config CompareÂ
3.5: IP Address ModuleÂ
3.6: Use of Python Classes and Object on Network Automation with ExampleÂ
3.7: Use of Python statements and loopsÂ
3.8: Python Multi-ThreadingÂ
3.9: Logging with PythonÂ
3.10: Use of Netmiko with practical example Â
3.11: Use of NAPALM with practical exampleÂ
3.12: Use of Nornir with practical exampleÂ
Section-4: Python RegEx:Â
4.1: RegEx FundamentalÂ
4.2: Use of RegEx for parsing outputsÂ
Section-5: Data Serialization & Templates:Â
5.1: JSONÂ
5.2: YAMLÂ
5.3: XMLÂ
5.4: Jinja2 Template Â
Section-6: Netconf/Restconf/gNMIÂ
6.1: Introduction to NetconfÂ
6.2: Netconf operationsÂ
6.3: Parse device config using NetconfÂ
6.4: Save device config using NetconfÂ
6.5: Introduction to RestconfÂ