Python网络工程师自动化运维班课程表 | ||||
上课周期 | 上课时间 | 课程模块 | 课程内容 | 重点项目案例 |
一、Python开发基础 | ||||
第1天 | 上午 | 核心数据类型 | 1.Python简介与应用领域 2.Python开发环境搭建(windows或Linux平台) 3.Python包与环境管理工具,pip、setuptools、vitualenv 安装与介绍 4.变量赋值与动态类型介绍 5.核心数据类型概览 6.帮助与文档资源 | 实战案例1:根据给定数据源计算PV与UV 实战案例2:根据给定数据源生成指定类型的数据结构 |
下午 | 核心数据类型 | 1. 数字布尔型与运算符 2. 字符串及常用方法 3. 列表与元组 4. 集合 | ||
第2天 | 上午 | 核心数据类型与条件控制语句 | 1. 字典 2. 文件 3. Python语法规则 4. 条件控制语句与三元表达式 | |
下午 | 循环控制语句 | 1. for循环 2. while循环 3. 循环控制语句中的关键字pass、continue、break 4. 课堂练习: 1) 分析日志文件计算PV、UV 2) 根据元数据生成指定类型的数据结构 | ||
第3天 | 上午 | 循环控制语句与函数基础 | 1. 迭代器与列表解析 2. Python函数基础 3. 变量及其作用域 4. 函数的参数 | 实战案例1:编写函数代码实现冒泡排序 实战案例2:编写函数代码实现二分查找 |
下午 | 循环控制语句与函数基础 | 1. 递归函数与匿名函数 2. 课堂练习: 1) 实现冒泡排序算法 2) 实现二分查找算法 3. 详解生成器 | ||
第4天 | 上午 | 模块化代码的编写与OOP | 1. 模块化代码的编写(上),介绍 from ..,Import..,import,搜索路径 2. 模块化代码的编写(下),模块包 3. Python面向对象编程OOP与类代码编写基础 | 实战案例1:通过subprocess模块采集操作系统各项性能指标 实战案例2:实现一个带有命令超时通能的系统命令执行模块 |
下午 | 面向对象编程 | 1. Python面向对象编程--继承 2. Python面向对象编程--封装 3. Python面向对象编程--多态 | ||
第5天 | 上午 | 面向对象编程 | 1. Python面向对象编程--抽象 2. Python面向对象编程--类代码的设计 3. 静态方法与类方法 4. 运算符重载 | |
下午 | 代码异常处理与装饰器 | 1. 代码异常检测与处理 try..except..处理异常 Raise抛出异常 assert断言 2. 装饰器 3. subprocess模块执行操作系统命令 4. 实践:采集Linux操作系统性能指标,CPU、内存、磁盘、网络、带宽 | ||
二、Python网络工程师自动化运维实战 | ||||
第6天 | 上午 | Python网络运维相关模块 | 1. 实验环境介绍:GNS3 + vmware workstation 实验:创建虚拟机、虚拟网卡并与GNS3相关联 2. Ipy模块处理IP子网信息 3. smtplib发送电子邮件 实验:Python实现发送文本邮件、富文本邮件与带附件邮件 | 实战案例1:GNS3+VMware实验环境搭建 实战案例2:Python通过smtplib发送电子邮件 实战案例3:telnetlib连接思科网络设备 实战案例4:paramiko通过SSH连接思科网络设备 |
下午 | 网络设备远程管理 | 1. telnetlib模块连接思科网络设备、下发命令、获取配置 2. paramiko以SSH方式连接网络设备、下发命令、获取配置 | ||
第7天 | 上午 | 网络设备信息采集 | 1. netmiko模块介绍 2. snmp协议介绍及其配置 3. Python通过snmp获取网络设备信息(cpu、负载、接口流量) 实验:编写脚本通过SNMP采集网络设备信息 4. netconf协议介绍 5. Cisco XRV设备开启netconf | 实战案例1:Cisco XRV设备模拟与配置 实战案例2:开发Python netconf模块获取思科XRV设备配置信息 实战案例3:LLDP网络接口信息拉取及网络拓扑生成 实战案例4:Python SNMP采集网络设备性能信息 |
下午 | 网络设备信息采集 | 1. Python netconf模块ncclient 2. Python XML 处理 实验: 1) netconf 获取Cisco XRV设备、主机名信息 2) netconf 获取Cisco XRV设备、lldp网络接口信息并生成拓扑 | ||
第8天 | 上午 | 网络设备配置文件处理 | 1. Python JSON 处理 2. Jinjia2 模板及语法 3. YAML语法与Python处理 | 实战案例1:Jinjia2模板生成网络设备配置文件 实战案例2:Python发送HTTP请求 |
下午 | Python-WEB编程 | 1. 实验:Jinjia2 生成配置文件并下发给网络设备 2. RestAPI与Http协议 实验:Python requests模块发送Http请求 | ||
第9天 | 上午 | WEB框架-Flask | 1. Web框架Flask初探 2. Flask WEB服务器开发并处理Http请求 实验:开发一个WEB服务接口并接收HTTP请求中的参数 | 实战案例1:Flask Http接口开发, 接收HTTP请求数据 实战案例2:Python与思科路由器建立BGP邻居 实战案例3:通过Python下发路由条目影响BGP选路 |
下午 | 网络设备流量管理 | Python与网络设备建立BGP邻居关系--ExaBGP 1. 使用ExaBGP向邻居路由器通告路由 2. 使用RestAPI 向ExaBGP下发路由进而影响BGP邻居路由器的路由信息 3. ExaBGP健康检查自动下发配置 | ||
第10天 | 上午 | Python并发编程 | threading模块实现多线程编程 1)基本概念 线程 进程 2) 守护线程与非守护线程 3)线程锁 线程池 线程任务日志 | 实战案例1:多线程并发拉取多台网络设备配置信息 实战案例2:Python发送虚假数据帧与ARP包, 攻击思科网络设备 |
下午 | Python数据包处理Scapy | Scapy模块介绍与数据包的伪造 实验: 1) 伪造数据帧攻击交换机接口 2) 伪造ARP包 实现ARP攻击 |
相关课程推荐
VCP-NV VCP-DW VCP-DTM VCP-CMA VCAP 阿里云Cloud Computing 阿里云BigData 渗透入侵与信息安全 软考中级资格 软考高级资格 容器&Kubernetes 认证管理员-K8s认证 CCP-Move to the Cloud CCP-Optimize and Troubleshoot 阿里云Cloud Security Architecting on Amazon Web Services 技能等级证书 PMP®项目管理认证 CISP国家注册信息安全专业人员 Python系统工程师自动化运维班 Python网络工程师自动化运维班 VCP VMware认证数据中心虚拟化专家 CCA-Administer PMP® CISSP 国际注册信息系统安全专家