Python websocket客户端-将消息从Python代码发送到websocket服务器

Python websocket客户端-将消息从Python代码发送到websocket服务器,python,websocket,tornado,Python,Websocket,Tornado,我需要将系统日志发送到浏览器,因此我有一个基于tornado的websocket服务器,运行方式如下 class WSHandler(tornado.websocket.WebSocketHandler): def check_origin(self, origin): return True def get(self, *args, **kwargs): self.ip = self.get_argument('ip', None)

我需要将系统日志发送到浏览器,因此我有一个基于tornado的websocket服务器,运行方式如下

class WSHandler(tornado.websocket.WebSocketHandler):

    def check_origin(self, origin):
        return True

    def get(self, *args, **kwargs):
        self.ip = self.get_argument('ip', None)
        self.action = self.get_argument('action', None)
        super(WSHandler, self).get(self, *args, **kwargs)

    def open(self, *args, **kwargs):

        clients.append(self)

    def on_message(self, message):

        ll = eval(message)

        for cl in clients:
            if cl.ip and cl.ip != ll.user:
                continue
            if cl.action and cl.action != ll.action:
                continue

            message = '%s %s' % (ll.action, ll.url)
            cl.write_message(message)

    def on_close(self):
        try:
            clients.remove(self)
        except ValueError:
            pass
到目前为止,我遇到的例子都是基于Tornado的服务器和基于js的客户端

然而,我需要的是一种从Python客户端连接到此websocket的简单方法,最好由Tornado提供支持。客户端不需要接收消息,只需要发送消息。我以为我在这篇帖子上找到了答案

…但我需要在日志事件发生时发送消息,最好是从解析事件的代码发送消息。到目前为止,我遇到的例子都是基于Tornado的服务器和基于js的客户端。是否有一个基于短而甜的tornado的客户端,它只发送可以从for循环调用的消息

有一个项目。注意它。

此外,发送消息也很简单。

Tornado包括一个websocket客户端:

此外,我还开发了一个完整的Tornado websocket客户端/服务器示例


如果您想要WebSocket身份验证/授权,请查看我的其他项目。

我在文档中遇到过,但不知道如何使用它。没有在野外遇到过任何例子。如何实例化客户端,然后在forloop中使用连接?这就是问题所在?嗯,我们确实需要更好的文档和示例。现在最好的例子是在测试中:tornado websocket客户端看起来很棒,只是我不知道如何使用它。如示例类所示,我尝试实例化ws=HelloSocket('ws://echo.websocket.org')ws.connect(),然后使用ws.write_message(msg),但它不会发送到服务器。不知道我做错了什么。我确实让websocket客户端工作了…所以我摆脱了困境,但我希望能有一些更轻的东西。SHAZZAM!!我可以用你的例子来说明。也许我也应该在以前的帖子上发表,但我没有。谢谢大家的帮助。