1

我正在尝试将生成的 PYSNMP 数据存储到 mysql 数据库中。

生成的数据是元组还是列表——我不确定。

我得到的输出是 9016,但是当我希望将它保存到数据库时,它类似于(OID(1.3.6.1.1.18443.1.1.), Integer(9016). 在我了解它的打印价值后,我知道了这一点。

我试过了output = re.split(r'', val)。这里val有上面提到的字符串/元组。

在获取整数数据方面需要帮助。

4

1 回答 1

1

pysnmp 返回一个二元元组序列。这些组件是 OID 和 value。这在 SNMP 中称为变量绑定。

所以你看到的可能是:

varBinds = [ (ObjectIdentifier('1.3.6.1.1.18443.1.1'), Integer(9016)) ]

这是一个变量绑定列表。

要在序列中仅保存第一个变量绑定的值部分,您可能需要:

varBind = varBinds[0]
oid, value = varBind
str(value)

或者

int(value)

取决于数据库数据类型。

于 2013-10-30T06:52:56.240 回答