msession未定义
我正在尝试运行这个示例程序 - http://pysnmp.sourceforge.net/examples/1.x/snmpbulk.html
我在使用Mac OS X,并且通过以下方式安装了pysnmp -
$ sudo /usr/local/bin/pip install pysnmp
现在当我运行这个程序时,我得到了 -
Traceback (most recent call last):
File "pysnmptest.py", line 2, in <module>
from pysnmp import msession
ImportError: cannot import name msession
更新:
看起来pysnmp 4.x版本没有msession,所以我尝试了 http://pysnmp.sourceforge.net/examples/4.x/v3arch/index.html
现在我得到了 -
Traceback (most recent call last):
File "pysnmptest.py", line 2, in <module>
from pysnmp.entity.rfc3413.oneliner import cmdgen
File "/Library/Python/2.6/site-packages/pysnmp/entity/rfc3413/oneliner/cmdgen.py", line 2, in <module>
from pysnmp.entity import engine, config
File "/Library/Python/2.6/site-packages/pysnmp/entity/engine.py", line 2, in <module>
from pysnmp.proto.rfc3412 import MsgAndPduDispatcher
File "/Library/Python/2.6/site-packages/pysnmp/proto/rfc3412.py", line 3, in <module>
from pysnmp.smi import builder, instrum
File "/Library/Python/2.6/site-packages/pysnmp/smi/builder.py", line 4, in <module>
from pysnmp.smi import error
File "/Library/Python/2.6/site-packages/pysnmp/smi/error.py", line 1, in <module>
from pyasn1.error import PyAsn1Error
ImportError: No module named pyasn1.error
这个网页还提到他们依赖一些第三方库 -
最新的PySNMP版本(4.x及以后)依赖以下内容:
用于处理ASN.1对象的Python ASN.1库
用于SNMP消息认证和加密的加密工具包
我该如何安装它们?直接从网页下载tar包安装会更好吗?
2 个回答
0
pyasn1
是 pysnmp
需要用到的一个库。所以你只需要输入:
from pyasn1.error import PyAsn1Error
2
你安装的是哪个版本的 pysnmp
呢?你现在尝试运行的例子似乎是适合 pysnmp
的 1.x 版本。
我在这里找到了一些最新的 4.x 版本的例子。注意这些例子没有使用 msession
,所以我猜这个功能可能被删掉了。
编辑:看起来现在你需要从这里安装 pyasn1
...
我不使用 OSX,所以不知道在上面安装软件的更好方法。在 ubuntu 上,我只需输入 apt-get install python-pysnmp
,整个软件就安装好了。