python与snmpget结合使用的示例

 

毕业一年多了,一直做cable modem的测试,总是觉得在国内这一行的人才很少,想找个师傅真的很不容易。

苦闷了许久之后,终于决定,自己去写点东西,万一就找到同行了呢?

 

下面就是本小姐写的第一篇博客,关于在win7下如何用python获取cable modem的设备信息的。

当然用mib browser是非常方便的,但是想到以后可能要做自动化方面的东西,所以就无聊的写了下面的代码。

 

snmp_get_sysDescr.py

1 from pysnmp.entity.rfc3413.oneliner import cmdgen
 2 import re
 3 
 4 def snmpget():
 5     errIndication, errStatus, errIndex, varBinds = cmdgen.CommandGenerator().getCmd(
 6         cmdgen.CommunityData('my-agent', 'public', 1),
 7         cmdgen.UdpTransportTarget(("192.168.100.1",161)),
 8         '1.3.6.1.2.1.1.1.0'
 9     )
10     
11     string = str(varBinds[0][1])
12     str1 = re.search("(<<.*>>)",string)
13     str2 = re.sub("<<|>>",'',str1.group())
14     print(re.split('; ',str2))
15       
16 if __name__ == "__main__":  
17     snmpget()

结果如下

1 E:\Python>python snmp_get_sysDescr.py
2 ['HW_REV: 1.0', 'VENDOR: UNI', 'BOOTR: 2.4.0', 'SW_REV: B5510mp5-S-EU-D230-151021', 'MODEL: TCG220']