gpt4 book ai didi

python - 在 Python 中使用 Websocket 连续发送数据并打开连接

转载 作者:行者123 更新时间:2023-12-04 19:35:35 25 4
gpt4 key购买 nike

这是我第一次使用 Python 编程,需要帮助使用 websocket。我正在使用 here 中的示例作为例子。我正在工作的项目要求我在连接打开的情况下不断向服务器发送更新。我使用了 Firefox 的扩展来连接到 websocket,并且知道它可以工作并且我可以向它发送数据。但是,我在修改 main 中的代码以保持连接打开以便我可以继续发送数据时遇到问题。 on_open 仅在连接打开时运行一次

    import websocket
try:
import thread
except ImportError:
import _thread as thread
import time

def on_message(ws, message):
print(message)

def on_error(ws, error):
print(error)

def on_close(ws):
print("### closed ###")

def on_open(ws):
def run(*args):
for i in range(3):
time.sleep(1)
ws.send("Hello %d" % i)
time.sleep(1)
ws.close()
print("thread terminating...")
thread.start_new_thread(run, ())

if __name__ == "__main__":
websocket.enableTrace(True)
ws = websocket.WebSocketApp("ws://echo.websocket.org/",
on_open = on_open,
on_message = on_message,
on_error = on_error,
on_close = on_close)

ws.run_forever()

最佳答案

ws= websocket.create_connection(ws_url)

ws.send(init_data) # send the initial data
while True:
# get the data to send
data = process_data(get_data())
if not data:
break

try:
ws.send(json.dumps(data))
except Exception as e:
print(e)
break
finally:
ws.close()

关于python - 在 Python 中使用 Websocket 连续发送数据并打开连接,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/66591786/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com