2017-02-28 5 views
2

직면 새로운 문제를 얻었다. 파이썬 2.7.13.With SNMP GET 및 Getnext : Pysnmp 4.3.2에서도 똑같이 작동합니다. 사실이 문제는 가상 환경과 관련이있을 때 관찰하고 있습니다.가상 환경에서 Pysnmp를 4.3.3에서 4.3.2로 다운 그레이드해도 문제가 재현됩니다.PYSNMP : 형식 오류 : setComponentByType()가 PYSNMP 4.3.3와 키워드 인수에 대해 여러 값 '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에서 0.1.9로 Pyasn1을 다운 그레이드 한 후 코드는 평소와 같이 노력하고 있습니다. 그러나 문제는 Pysnmp 4.3.3을 새로 설치하는 동안 Pyasn1 == 0.2.3과 그 실패입니다. pyasn1/pysnmp 상호 작용에 불행한 회귀의

답변

5

.

pyasn1을 0.2.2로 다운 그레이드하거나 git master에서 pysnmp를 가져 오거나 고정 된 pysnmp가 나타날 때까지 조금 기다려도됩니다.

+0

@illya Etingof 덕분에 우리가 수정을 기다리고 0.2.2 그동안 사용합니다 도움을 많이. – sbhatta

+0

pysnmp 4.3.4가 종료되었습니다! –