This is a Python client library for iterating over http Server Sent Event (SSE) streams. The SSEClient class accepts a url on init, and is then an iterator over messages coming from the server.
Installation
Use pip:
pip install sseclient
Usage
from sseclient import SSEClient
messages = SSEClient('http://mysite.com/sse_stream/')
for msg in messages:
do_something_useful(msg)
Each message object will have a ‘data’ attribute, as well as optional ‘event’, ‘id’, and ‘retry’ attributes.
Optional init parameters:
last_id: If provided, this parameter will be sent to the server to tell it to return only messages more recent than this ID.
retry: Number of milliseconds to wait after disconnects before attempting to reconnect. The server may change this by including a ‘retry’ line in a message. Retries are handled automatically by the SSEClient object.
You may also provide any additional keyword arguments supported by the Requests library, such as a ‘headers’ dict and a (username, password) tuple for ‘auth’.
Development
Install the test dependencies:
pip install pytest mock
And run the tests:
$ py.test ================== test session starts =================== platform linux2 -- Python 2.7.3 -- pytest-2.3.4 collected 9 items test_sseclient.py ......... ================ 9 passed in 0.31 seconds ================
There are a couple TODO items in the code for getting the implementation completely in line with the finer points of the SSE spec.
Additional Resources
Metadata
Release files for sseclient 0.0.6
For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.
Source distribution (sdist)
| File | Size | Uploaded | Provenance | |
|---|---|---|---|---|
| sseclient-0.0.6.tar.gz | 3.6 kB | Without provenance | Details |
Release files / sseclient-0.0.6.tar.gz
| Download URL | sseclient-0.0.6.tar.gz |
|---|---|
| Size | 3.6 kB |
| Tags | Source |
|
SHA-256 checksum How to use checksums |
02be127dc2922014358e92711076a5709ea346e77786d3a698ab0755124b5653
|
|
BLAKE2b-256 checksum How to use checksums |
d49a1745460b12640e919233b134344e13fcfc5f107498b629b6bf0aff20e66f
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
Security for sseclient 0.0.6
Provenance
Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.
No provenance found
None of the files in this release were uploaded with provenance metadata.
A note on package security
PyPI is a repository for distributing packages, not a service for auditing them. While third-party security researchers and our staff do their best to detect and remove malicious packages, PyPI cannot guarantee the quality, security or suitability of any given package.
To learn more about protecting yourself from malicious actors, visit our package security documentation.