Skip to main content

Simple client library to submit listens to the ListenBrainz server

Project description

Python module to submit listens to the ListenBrainz service

Simple python module to submit listens to the ListenBrainz server.

Supports submitting single listens, now playing notifications and import of multiple listens. Automatically honors the ListenBrainz server's rate limits.

Usage

import time
from listenbrainz_submit import ListenBrainzClient, Track


# The user's personal ListenBrainz token obtained from https://listenbrainz.org/profile/
user_token = "..."
client = ListenBrainzClient(user_token=user_token)

# Prepare a track to submit
track = Track(
    artist_name="Dool",
    track_name="Vantablack",
    release_name="Here Now, There Then",
    additional_info={
        "listening_from": "My great music player",
        "recording_mbid": "e225fb84-dc9a-419e-adcd-9890f59ec432",
        "release_mbid": "aa1ea1ac-7ec4-4542-a494-105afbfe547d",
        "artist_mbids": "24412926-c7bd-48e8-afad-8a285b42e131",
        "tracknumber": 1,
    }
)

# Inform ListenBrainz that this track is playing right now. ListenBrainz
# will display this track on the user's listens page as being currently played.
client.playing_now(track)

To actually submit a track as has been listened to call:

# Submit the listen with a current timestamp
client.listen(int(time.time()), track)

For details on the API usage please refer to the ListenBrainz API documentation, especially the Payload JSON details which describes the metadata that can be submitted.

License

listenbrainz-submit © 2018-2023 Philipp Wolfer ph.wolfer@gmail.com

Published under the MIT license, see LICENSE for details.

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

listenbrainz_submit-1.0.1.tar.gz (4.7 kB view details)

Uploaded Source

Built Distribution

listenbrainz_submit-1.0.1-py3-none-any.whl (5.7 kB view details)

Uploaded Python 3

File details

Details for the file listenbrainz_submit-1.0.1.tar.gz.

File metadata

  • Download URL: listenbrainz_submit-1.0.1.tar.gz
  • Upload date:
  • Size: 4.7 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/4.0.2 CPython/3.10.9

File hashes

Hashes for listenbrainz_submit-1.0.1.tar.gz
Algorithm Hash digest
SHA256 29090908c2b00aba2b073104a4f2dcebd5af11509dc1ca48d8fa1c0ddb6fe9c6
MD5 454577aebf4d74e535f3fc183db9a857
BLAKE2b-256 d464b96c5733f68b9712833117d0bc25261368f27736a3c2f9616ca303204f96

See more details on using hashes here.

File details

Details for the file listenbrainz_submit-1.0.1-py3-none-any.whl.

File metadata

File hashes

Hashes for listenbrainz_submit-1.0.1-py3-none-any.whl
Algorithm Hash digest
SHA256 11cccc23de493dcfcd9374abb34951ffa43aded26b7251891ad6849755ad951f
MD5 7e6ada034eadb459ab77e2e445353d1d
BLAKE2b-256 daac0254cec7e7a84131d61109e2cef406718b56457b375c842336779d266af3

See more details on using hashes here.

Supported by

AWS AWS Cloud computing and Security Sponsor Datadog Datadog Monitoring Fastly Fastly CDN Google Google Download Analytics Microsoft Microsoft PSF Sponsor Pingdom Pingdom Monitoring Sentry Sentry Error logging StatusPage StatusPage Status page