请求库 - 长时间等待数据

时间:2018-06-04 07:00:07

标签: python-requests jsonstream

我有一个关于"请求"的问题python库。在这种情况下,我不能强迫它运作良好。 下面的代码运行良好(使用urllib3):

http = urllib3.PoolManager()
r = http.request(
    'GET',
    'https://api-live.exante.eu/md/1.0/feed/SVXY.ARCA',
    preload_content=False,
    headers={
        'Authorization': 'Bearer ' + token,
        'Accept': 'application/x-json-stream'
    }
)

while True:
    json_data = json.loads(r.readline())
    ....
    ....

如您所见,它是API - json-stream feed。现在让我们看看请求:

url = 'https://api-live.exante.eu/md/1.0/feed/SVXY.ARCA'
headers = {'Accept': 'application/x-json-stream'}
auth = ''
r = requests.get(url, headers=headers, auth = auth, stream=True)
    for raw_rsvp in r.iter_lines():
        if raw_rsvp:
            json_data = json.loads(raw_rsvp)

代码" urllib3"在http-request之后立即收到第一行,并在http-session期间完美地工作。但代码与"请求"图书馆等了很久才拿到第一笔数据。似乎有任何缓冲区,库等待它填满。当数据接收频率很高时 - "请求"快速给我这些数据。但是,如果服务器每分钟给我发送3-5行,我会在收到它之前等待几分钟,然后通过"请求"库。

抱歉我的英文。希望能解决问题。

谢谢!

0 个答案:

没有答案