已安装Twisted仍报错:No module named autobahn.twisted.websocket
嘿,这个问题我之前帮同事排查过!你只安装了Twisted,但报错里找不到的autobahn.twisted.websocket属于Autobahn库——它是一个依赖Twisted的WebSocket工具包,并不是Twisted自带的模块,所以只装Twisted肯定不够呀。
具体原因
Twisted只是Autobahn运行所需的依赖之一,但Autobahn本身并没有被安装到你的Python2.7环境里,这才导致了导入失败。你看到的Twisted已满足依赖,只是说明Autobahn的前置条件达标了,但核心包还没装。
解决方法
直接用pip安装带Twisted支持的Autobahn版本就行:
pip install autobahn[twisted]
这里的[twisted]是额外的安装参数,用来拉取Autobahn和Twisted集成所需的全部组件,确保能正常导入autobahn.twisted.websocket。
如果安装时碰到权限问题(比如无法写入系统级Python目录),可以加上--user参数,把包安装到当前用户的私有目录:
pip install --user autobahn[twisted]
安装完成后,再重新运行./demos/web/start-servers.sh,这个导入错误应该就会消失啦。
内容的提问来源于stack exchange,提问作者jianjun liu
相关产品推荐
相关产品推荐

