目的:学习用python脚本登录交换机并执行相关操作

环境:windows 7  Python 3.5.3

最初原因是因为工作需要在交换机上查询IP地址的来源端口,不停的跳转查看很麻烦,于是决定写脚本,这里只写关于用Python登录和之后的可用方法。

telnet是内置模块,模块名telnetlib。

# 定义登录的用户名、密码和登录的设备地址

username = ‘abc‘

password = ‘123‘

switch_ip = ‘1.2.3.4‘

# 连接

tel_con = telnetlib.Telnet(switch_ip[, port=23, timeout=10])

# 读取识别并认证

tel_con.read_until(‘Username:‘)

tel_con.write(username + rn)

tel_con.read_until(‘Password:‘)

tel_con.write(password + rn)

下面就可以执行需要的操作,一般是识别‘>‘这个符号,当然要根据实际情况,视图模式就可能是其他的了,而且read_until可能有时候在执行命令返回的不匹配,则一直在等待,可以使用read_all()返回所以的然后用正则表达式,或用延时time.sleep加read_very_eager()的方法。

最后记得要退出,交换机里退出用quit,连接退出用

tel_con.close()

这里还有几个小技巧:

1)设置返回除错信息可以排除问题tel_con.set_debuglevel(5),这里有0-5的等级,数字越大,信息越多。

2)有些情况传递给write方法的字符串需要注意编码

3)read_until()有一个超时设置,超过时间会返回,否则脚本会一直等待

4)read_all()可能得不到EOF而报错。

5)有需要可以学习第三方模块pexpect,它可以实现ssh, telnet, ftp等交互式自动登录

这里有一些参考资料:

python 管理 交换机_用python 脚本控制telnet登录交换机相关推荐

  1. 用python 脚本控制telnet登录交换机

    目的:学习用python脚本登录交换机并执行相关操作 环境:windows 7  Python 3.5.3 情景:最初原因是因为工作,需要在交换机上查询IP地址的来源端口,不停的跳转查看很麻烦,于是决 ...

  2. python管理系统设计_基于Python和Django框架的物联网智能设备管理系统的设计与实现

    杨武帅 万启元 桑贤伯 摘 要:针对目前日益增多的智能设备提出了兼容性好,稳定性高,易于管理的管理系统的设计方法.在服务器端使用Python和Django框架进行与设备的数据交互及设备管理网站的构架, ...

  3. python 概率分布模型_使用python的概率模型进行公司估值

    python 概率分布模型 Note from Towards Data Science's editors: While we allow independent authors to publis ...

  4. python 时间序列预测_使用Python进行动手时间序列预测

    python 时间序列预测 Time series analysis is the endeavor of extracting meaningful summary and statistical ...

  5. python windows系统管理_利用Python脚本管理Windows服务

    Windows服务常用的功能就是启动服务,关闭服务,重启服务和查询服务运行状态,其中查询服务运行状态是其他三种操作的基础. 本文中提到的使用Python脚本管理Windows服务实际上是调用win32 ...

  6. python版本管理工具_使用 Python 官方工具在 windows 上管理 Python 多版本

    0. 使用官方工具 网上很多教程还在用修改Python.exe文件名的方式来进行多版本的管理,其实Python官方在3.3已经有了一个官方的工具,使用起来也很方便. 1. 下载 2.x 和 3.x(3 ...

  7. 用python当壁纸_使用Python脚本将Bing的每日图片作为桌面的教程

    微软最近出了个 必应bing 缤纷桌面,使用下来还是不错,可以每天更换Bing首页的北京作为壁纸,但是该软件有个不好的地方是,安装后桌面上会有一个搜索框出现,很是烦人,而且不能关掉.于是出于技术考虑, ...

  8. python培训班-Python培训机构_高品质Python线下开发培训班推荐-黑马程序员

    Python编程基础基础班1 课时:15天技术点:97项测验:2次学习方式:线下面授 学习目标 1.掌握Python开发环境基本配置|2.掌握运算符.表达式.流程控制语句.数组等的使用|3.掌握字符串 ...

  9. python 创意项目_针对python开发人员的10个很棒的python项目创意

    python 创意项目 The joy of coding Python should be in seeing short, concise, readable classes that expre ...

最新文章

  1. c:线性表的链式表示
  2. 转:在 C# 中使用 P/Invoke 调用 Mupdf 函数库显示 PDF 文档
  3. os x 启动引导_什么是OS X的启动板以及它如何工作?
  4. arrays中copyof复制两个数组_C语言100题集合026-使用指针交换两个数组中的最大值
  5. 本地windows主机无法访问虚拟机里主机解决办法
  6. Python Twisted介绍
  7. IDEA添加mybatis-mapper的模板
  8. 知乎问答 | 如何在同一坐标系下绘制多幅图形
  9. Mycat安全_SQL拦截黑名单---MyCat分布式数据库集群架构工作笔记0034
  10. 计算机实验报告protel,PROTEL_99SE实验报告
  11. Excel的复合条饼图制作
  12. mysql 删除时间一个星期_我用财务管理系统花费一天时间做账,别人用一个星期也追赶不上...
  13. 【STM32H7教程】第70章 STM32H7的内部Flash基础知识和HAL库API
  14. 【原创】公司自研缓存系统UPU的总结
  15. 代码改变生活-使用You-Get下载bilibili的视频【一】
  16. 将二进制文件或者脚本打包成rpm安装包
  17. Postgresql源码(60)事务系统总结
  18. react实现异步插件_react项目优化之webpack
  19. 如何选择加密软件保护公司数据安全
  20. HTML CSS笔记(没有基础内容,比如br标签是换行什么的),CSS2.1,CSS3,响应式布局

热门文章

  1. 练习篇:完整实践——实现一个简易日记本应用
  2. 如何下载西门子产品CAD、3D和EPLAN文件
  3. sql server 函數
  4. 警惕:这本期刊已被剔除,EI期刊目录更新
  5. TX2+TensorRT+DIGITS实现图像的识别、检测和分割---1---Jetson配置
  6. 信号量优先级反转问题记录(总是遗忘)
  7. IRP(I/O Request Package)详解
  8. vue——实现组织架构图(vue-org-tree)——技能提升
  9. 健康菜谱微信小程序+项目前后台源码(JavaSSM+Mysql)
  10. 【数据挖掘】关联规则之Galois Closure Based Approach(基于Galois闭包的方法)