S'il vous plaît dites-moi comment connecter Websocket en python
phpcn_u1582
phpcn_u1582 2017-05-18 10:54:01
0
3
839

Je travaille actuellement sur un projet qui nécessite l'utilisation de websocket. J'ai besoin de python pour me connecter au websocket, mais je ne sais pas comment utiliser python pour me connecter au websocket, je le recherche depuis longtemps. temps et je ne l'ai pas trouvé. S'il vous plaît, aidez-moi ~~

phpcn_u1582
phpcn_u1582

répondre à tous(3)
我想大声告诉你

flask est déployé à l'aide de gevent-websocket + gunicorn

pip3 install gevent-websocket
pip3 install gunicorn

app.py démo

from geventwebsocket.handler import WebSocketHandler
from gevent.pywsgi import WSGIServer

app = Flask(__name__)

@app.route('/echo/')
def echo():
    if request.environ.get('wsgi.websocket'):
        ws = request.environ['wsgi.websocket']
        while True:
            msg = ws.receive()
            ws.send(msg)

if __name__ == '__main__':
    http_server = WSGIServer(('', 5000), app, handler_class=WebSocketHandler)
    http_server.serve_forever()

Utilisez gunicorn pour démarrer et spécifier gevent-websocket

gunicorn -k geventwebsocket.gunicorn.workers.GeventWebSocketWorker app:app

django utilise Django-websocket

https://github.com/archever/p...

为情所困

Merci à tous, je n'ai pas trouvé de solution sur Baidu depuis longtemps. Le master ci-dessus devrait pouvoir l'utiliser, mais je ne le comprends pas très bien Merci, j'ai vraiment gagné quelque chose en allant sur Google. , j'ai donc définitivement abandonné Baidu

C'est sur le github de quelqu'un d'autre, vous pouvez l'utiliser

# install ws4py
# pip install ws4py
# easy_install ws4py
from ws4py.client.threadedclient import WebSocketClient

class DummyClient(WebSocketClient):
    def opened(self):
        self.send("www.baidu.com")

    def closed(self, code, reason=None):
        print "Closed down", code, reason

    def received_message(self, m):
        print m

if __name__ == '__main__':
    try:
        ws = DummyClient('ws://10.222.138.163:1889/websocket', protocols=['chat'])
        ws.connect()
        ws.run_forever()
    except KeyboardInterrupt:
        ws.close()
刘奇

Il est recommandé d'utiliser tornado, qui prend en charge websocket. Le backend de Zhihu est construit en utilisant tornado

.
Derniers téléchargements
Plus>
effets Web
Code source du site Web
Matériel du site Web
Modèle frontal
À propos de nous Clause de non-responsabilité Sitemap
Site Web PHP chinois:Formation PHP en ligne sur le bien-être public,Aidez les apprenants PHP à grandir rapidement!