Python模块之snmp-cmds,easysnmp

一、简介

snmp-cmds模块通过SNMP与目标设备进行通信,此模块适用于windows,此模块是基于系统已安装了net-snmp环境
easysnmp模块通过SNMP与谬表设备进行通信,此模块用于linux,此模块基于系统已安装了net-snmp环境

 

二、snmp-cmds模块安装

  2.1 在Windows平台

#1.系统环境安装net-snmp软件
 a.下载链接: https://pan.baidu.com/s/1sq4mjIMfFgG2YxTMLxVF0A 提取码: a7j5
 b.安装完成,打开cmd命令框,输入snmpwalk,无报错,有回显,即安装正常
 
#2.使用pip工具安装snmp-cmds模块
   pip3 install snmp-cmds
  

 

  2.2 在Centos 7平台

#1.系统环境安装net-snmp软件
 a.yum install python-devel
 b.安装setuptools
    wget https://files.pythonhosted.org/packages/25/5d/cc55d39ac39383dd6e04ae80501b9af3cc455be64740ad68a4e12ec81b00/setuptools-0.6c11-py2.7.egg
 c.安装net-snmp-5.7.3软件
    wget https://sourceforge.net/projects/net-snmp/files/net-snmp/5.7.3/net-snmp-5.7.3.tar.gz
 d.提升setuptools为可执行文件
     chmod +x setuptools-0.6c11-py2.7.egg
 e. ./setuptools-0.6c11-py2.7.egg
 f.  tar -zxvf net-snmp-5.7.3.tar.gz
 g.  cd net-snmp-5.7.3
 h.  ./configure --with-python-modules     #选择版本时,输入2,其余直接回车
 i. make (时间较长)
 j. make install
 k. echo "/usr/local/lib" >> /etc/ld.so.conf
 l. ldconfig
 m. 验证,是否有snmpwalk命令
 
 
#2.使用pip工具安装snmp-cmds模块
   pip3 install easysnmp

ps:easysnmp官方文档地址:https://easysnmp.readthedocs.io/en/latest/

 

 

 

三、简单实例

  3.1 获取目标设备的接口名字

from snmp_cmds import snmpwalk
#返回结果是列表
res = snmpwalk(ipaddress='192.168.59.251',oid='IF-MIB:ifDescr',community='qiji123')

for line in res:
    #第一个元素为oid,第二个元素为接口名字
    print(line[0],'     ',line[1])

 

  3.2 使用pysnmp模块案例

from easysnmp import snmp_walk

device_ip = 'IP地址'
community = '团体字'
# oid = 'IF-MIB::ifDescr'
oid = 'sysDescr'

def test():
    res = snmp_walk(oid, hostname=device_ip, community=community, version=2)

    for each in res:
        print(each.value)
     
if __name__ == '__main__':
    test()

 

 

 

转载于:https://www.cnblogs.com/lisenlin/p/10491681.html

  • 0
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
import maya.cmds as cmds windowName = "AssetsLibraryBatev8" if cmds.window(windowName, ex=True): cmds.deleteUI(windowName) cmds.window(windowName) cmds.columnLayout(adj=1) # body---- cmds.rowColumnLayout( numberOfColumns=3, adj=2, cw=[(1, 185), (3, 200)], h=30, bgc=[0.1, 0.1, 0.1] ) # NAV---- cmds.setParent("..") # NAV---- cmds.rowColumnLayout( numberOfColumns=2, adj=2, cw=[(1, 185)], h=690, bgc=[0.3, 0.3, 0.3] ) # workspace---- cmds.columnLayout(adj=1, h=690, bgc=[0.15, 0.15, 0.15]) # left---- cmds.setParent("..") # left---- # flip--- form = cmds.formLayout(nd=100) flow_layout = cmds.flowLayout(cs=20, bgc=[0.3, 0.3, 0.3], w=600, h=50) def button_ui(Normal_color): def button_change(*args): for buffer in all_button: bgc = cmds.button(buffer, q=1, bgc=1) if bgc == [0.6, 0.6, 0.6]: cmds.button(buffer, e=1, bgc=[0.4, 0.4, 0.4]) else: cmds.button(buffer,e=1, bgc=[0.6, 0.6, 0.6]) Left_Arrow = cmds.button(label="<", h=25, w=25, bgc=Normal_color) # no change Initial_Page = cmds.button( label="1", h=25, w=25, bgc=[0.6, 0.6, 0.6], c=button_change ) Left_Excess = cmds.button(label="2", h=25, w=25, bgc=Normal_color, c=button_change) First_Middle_option = cmds.button( label="3", h=25, w=25, bgc=Normal_color, c=button_change ) Second_Middle_option = cmds.button( label="4", h=25, w=25, bgc=Normal_color, c=button_change ) Third_Middle_option = cmds.button( label="5", h=25, w=25, bgc=Normal_color, c=button_change ) Fourth_Middle_option = cmds.button( label="6", h=25, w=25, bgc=Normal_color, c=button_change ) Right_Excess = cmds.button(label="7", h=25, w=25, bgc=Normal_color, c=button_change) Last_Page = cmds.button(label="8", h=25, w=25, bgc=Normal_color, c=button_change) Right_Arrow = cmds.button(label=">", h=25, w=25, bgc=Normal_color) # no change all_button = [ Initial_Page, Left_Excess, First_Middle_option, Second_Middle_option, Third_Middle_option, Fourth_Middle_option, Right_Excess, Last_Page, ] button_ui([0.4, 0.4, 0.4]) cmds.formLayout( form, edit=True, attachForm=[(flow_layout, "top", 620), (flow_layout, "left", 300)] ) cmds.setParent("..") # flow cmds.setParent("..") # form # flip--- cmds.rowColumnLayout(numberOfColumns=5, h=690, bgc=[0.5, 0.5, 0.5]) # list---- cmds.setParent("..") # list---- cmds.setParent("..") # workspace---- cmds.setParent("..") # body---- cmds.window(windowName, e=1, w=1280, h=720, mxb=False, s=False) cmds.showWindow(windowName)
06-07

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值