繁体   English   中英

AttributeError: 'module' object 没有属性 'WebSocketApp'

[英]AttributeError: 'module' object has no attribute 'WebSocketApp'

我正在尝试使用 WebSocketApp 连接到 API 和 python,但我似乎做不到。 无论我尝试什么,我都会不断收到此错误:

AttributeError: 'module' object 没有属性 'WebSocketApp'

这是我正在使用的简单代码

import websocket
import json

def on_open(ws):
    json_data = json.dumps({'data':'value'})
    ws.send(json_data)

def on_message(ws, message):
    print('data update: %s' % message)

if __name__ == "__main__":
    apiUrl = "appurl"
    ws = websocket.WebSocketApp(apiUrl, on_message = on_message, on_open = on_open)
    ws.run_forever()

任何帮助将不胜感激,我在网上找到的所有解决方案都不适合我。

看起来您正在尝试使用websocket-client软件包的功能,而不仅仅是websocket软件包。 从命令行websocket-client -install websocket-client (或使用你拥有的任何其他软件包管理器安装它),然后再次尝试运行你的代码。

pip install websocket-client

确保您没有将文件命名为websocket.py ; 否则,它将阻止导入所需的第三方模块websocket ; 因为首先根据sys.path模块搜索路径搜索模块。

将模块重命名为其他名称,并确保清除websocket.pyc如果有)。

在这种情况下,您应该卸载可能不一致的先前版本并再次安装websocket-client:

pip uninstall websocket-client
pip uninstall websocket

然后安装新版本:

pip install websocket-client

问题可能是因为版本。 v1.3 及以上版本对我有同样的问题,但安装 v1.2.3 问题消失了......

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM