sseclient-py

SSE client for Python

Apache Software License v2 11 个版本 Python >=3.7
安装
pip install sseclient-py
poetry add sseclient-py
pipenv install sseclient-py
conda install sseclient-py
描述

Server Side Events (SSE) client for Python

A Python client for SSE event sources that seamlessly integrates with urllib3 and requests.

Installation

.. code::

$ pip install sseclient-py

Usage

.. code:: python

import sseclient

def with_urllib3(url):
    """Get a streaming response for the given event feed using urllib3."""
    import urllib3
    http = urllib3.PoolManager()
    res = http.request('GET', url, preload_content=False)
    yield from sseclient.SSEClient(res).events()

def with_requests(url):
    """Get a streaming response for the given event feed using requests."""
    import requests
    res = requests.get(url, stream=True)
    yield from sseclient.SSEClient(res).events()

def with_httpx(url):
    """Get a streaming response for the given event feed using httpx."""
    import httpx
    with httpx.stream('GET', url) as s:
        # Note: 'yield from' is Python >= 3.3. Use for/yield instead if you
        # are using an earlier version.
        yield from sseclient.SSEClient(s.iter_bytes()).events()


url = 'http://domain.com/events'
for event in with_urllib3(url):
    ...
for event in with_requests(url):
    ...
for event in with_httpx(url):
    ...

Resources

版本列表
1.9.0 2026-01-02
1.8.0 2023-09-01
1.7.2 2021-09-20
1.7 2017-07-22
1.6 2017-06-11
1.5 2017-02-13
1.4 2016-06-27
1.3 2016-04-14
1.2 2016-03-17
1.1 2016-03-17
1.0 2016-03-11