如何使用websocket-client
时间: 2023-09-11 20:03:28 浏览: 96
`websocket-client` 模块提供了一个 `WebSocketApp` 类,用于实现 WebSocket 客户端功能。下面是一个简单的例子,演示如何使用 `WebSocketApp` 类连接到 WebSocket 服务器,发送消息并接收服务器返回的消息:
```python
import websocket
def on_message(ws, message):
print(message)
def on_error(ws, error):
print(error)
def on_close(ws):
print("### closed ###")
def on_open(ws):
ws.send("Hello, world!")
if __name__ == "__main__":
websocket.enableTrace(True)
ws = websocket.WebSocketApp("ws://localhost:8000/",
on_message = on_message,
on_error = on_error,
on_close = on_close)
ws.on_open = on_open
ws.run_forever()
```
这个例子中,我们定义了四个回调函数:
- `on_message`:当收到服务器发送的消息时调用,`message` 参数为接收到的消息内容。
- `on_error`:当出现错误时调用,`error` 参数为错误信息。
- `on_close`:当连接关闭时调用。
- `on_open`:当连接建立成功时调用,这里我们在这个回调函数中发送了一条消息。
然后我们创建了一个 `WebSocketApp` 对象,指定了要连接的 WebSocket 服务器的地址和回调函数。最后调用 `run_forever` 方法开启 WebSocket 连接。
注意:在使用 `WebSocketApp` 对象时,需要先调用 `enableTrace` 方法来启用调试输出,以便于调试和排查问题。
这只是一个简单的示例,`websocket-client` 模块还提供了很多其他的功能,例如支持 SSL/TLS 加密连接、支持多线程、支持自定义 HTTP 请求头等。如果需要更高级的功能,可以参考官方文档:https://pypi.org/project/websocket-client/
阅读全文