面临PYSNMP 4.3.3的新问题。 Python 2.7.13.使用SNMP GET和Getnext: 与Pysnmp 4.3.2一样正常工作。 这个问题实际上我在观察它涉及到虚拟环境时。 在虚拟环境中,即使我将Pysnmp从4.3.3降级到4.3.2,问题也得到转载。PYSNMP:TypeError:setComponentByType()获得关键字参数'verifyConstraints'的多个值
有人能告诉我我失踪了什么吗?
类型错误:setComponentByType()得到了关键字参数多个值 'verifyConstraints'
>>> from pysnmp.hlapi import *
>>> errorIndication, errorStatus, errorIndex, varBinds = next(
... getCmd(SnmpEngine(),
... CommunityData('public'),
... UdpTransportTarget(('127.0.0.1', 161)),
... ContextData(),
... ObjectType(ObjectIdentity('SNMPv2-MIB','sysDescr', 0)))
...)
Traceback (most recent call last):
File "<stdin>", line 6, in <module>
File "/home/sourav/MyWorkSpace/tempproject_1/lib/python2.7/site-packages/pysnmp/hlapi/asyncore/sync/cmdgen.py", line 111, in getCmd
lookupMib=options.get('lookupMib', True)))
File "/home/sourav/MyWorkSpace/tempproject_1/lib/python2.7/site-packages/pysnmp/hlapi/asyncore/cmdgen.py", line 131, in getCmd
options.get('cbFun'), options.get('cbCtx'))
File "/home/sourav/MyWorkSpace/tempproject_1/lib/python2.7/site-packages/pysnmp/entity/rfc3413/cmdgen.py", line 214, in sendVarBinds
v2c.apiPDU.setVarBinds(reqPDU, varBinds)
File "/home/sourav/MyWorkSpace/tempproject_1/lib/python2.7/site-packages/pysnmp/proto/api/v1.py", line 136, in setVarBinds
varBindList.getComponentByPosition(idx), varBind
File "/home/sourav/MyWorkSpace/tempproject_1/lib/python2.7/site-packages/pysnmp/proto/api/v1.py", line 43, in setOIDVal
verifyConstraints=False)
TypeError: setComponentByType() got multiple values for keyword argument 'verifyConstraints'
>>>
随着老款也一样:
>>> from pysnmp.entity.rfc3413.oneliner import cmdgen
>>> cmdGen = cmdgen.CommandGenerator()
>>> errorIndication, errorStatus, errorIndex, varBindTable = cmdGen.nextCmd(cmdgen.CommunityData('public'),cmdgen.UdpTransportTarget(('127.0.0.1', 161), timeout=60, retries=3),cmdgen.MibVariable('SNMPv2-MIB','sysDescr',0))
在链接波纹管请参考最后两点评论。 https://github.com/home-assistant/home-assistant/issues/5790
包使用:
appdirs==1.4.2
packaging==16.8
ply==3.10
pyasn1==0.2.3
pycryptodome==3.4.5
pyparsing==2.1.10
pysmi==0.0.7
pysnmp==4.3.3
six==1.10.0
++++++++++++++++++++++++++++++++++ +++++++++++++++++++++++++++++++++++++++++++ 更新: +++ ++++++++++++++++++++++++++++++++++++++++++++++++++ ++++++++++++++++++++++++似乎 从pyasn1 == 0.2.3降级Pyasn1到0.1.9后的代码工作如常。但问题是,新鲜安装Pysnmp 4.3.3它采取Pyasn1 == 0.2.3及其失败。
@illya Etingof非常感谢您的帮助,我们将等待修复并使用0.2.2。 – sbhatta
pysnmp 4.3.4出来了! –