3

我想用 python 连接到 lightstramer

光流器示例

我试试

import asyncio
import websockets as websockets

header = {
    'Accept-Encoding': 'gzip, deflate, br',
    'Accept-Language': 'en-US,en;q=0.9,fa;q=0.8',
    'Cache-Control': 'no-cache',
    'Connection': 'Upgrade',
    'Host': 'push.lightstreamer.com',
    'Origin': 'https://demos.lightstreamer.com',
    'Pragma': 'no-cache',
    'Sec-WebSocket-Extensions': 'permessage-deflate; client_max_window_bits',
    'Sec-WebSocket-Key': '0JsNTUnSx4IOsbmuLusyaw==',
    'Sec-WebSocket-Protocol': 'TLCP-2.1.0.lightstreamer.com',
    'Sec-WebSocket-Version': '13',
    'Upgrade': 'websocket',
    'User-Agent': 'Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/80.0.3987.163 '
                  'Safari/537.36',
}

async def hello():
async with websockets.connect('wss://push.lightstreamer.com/lightstreamer', extra_headers=header) as websocket:
        greeting = await websocket.recv()
        print(greeting)
asyncio.get_event_loop().run_until_complete(hello())

但总是出错

websockets.exceptions.InvalidStatusCode: server rejected WebSocket connection: HTTP 400

我怎样才能连接到这个并获取数据?我需要什么库?

4

1 回答 1

2

目前,Lightstreamer 不提供官方的 python 客户端库,但您可以利用这个简单的示例,它使用HTTP 流与 Lightstreamer 服务器实例进行通信。

此外,请查看TLCP 规范以了解有关如何实现通信协议的更多详细信息。

于 2020-04-21T08:57:57.940 回答