我正在尝试获取原始格式OID值的MIB
。使用lookupNames = False, lookupValues = False
我得到了想要的东西,但是当尝试这样做时,可以说CSV格式:
(pname, pval) = (name.prettyPrint(), val.prettyPrint())
prettyPrint更改值:
# name: 1.3.6.1.2.1.15.3.1.4.30.30.24.4
# pname: RFC1213-MIB::mib-2.15.3.1.4.30.30.24.4
有什么办法可以避免这种情况,只获取完整的数字OID?
我有pysnmp(4.3.9)。
最佳答案
我建议您使用带有单个lookupMib=False
参数的pysnmp hlapi API,对于pysnmp 4.3.9,它似乎会生成纯OID。
另外,还有一种方法可以完全摆脱SNMP类型。您可以在OID值上调用tuple()
,以便获得一个整数子OID的元组。同样,您可以在数字SNMP值上调用int
,在字符串SNMP值上调用str
,以获取内置类型的Python对象。要注意的是,您首先必须figure out处理您的SNMP类型以进行适当的类型转换。
关于python - pysnmp prettyPrint转换OID名称,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/45562811/