Skip to main content

A python wrapper package for the paid api from SoundCharts. This package is not affiliated with soundcharts and is not endorsed by them. However, it is built upon their api and can be used assuming you have a paid subscription to their service.

Project description

Soundchartspy PyPI Version PyPI Downloads Build Status

Installation

To install from PyPI, simply run:

pip install soundchartspy

If you’d like to install the latest development version from source:

pip install -e 'git+https://github.com/AidanAlr/soundchartspy.git#egg=soundchartspy'

Make sure to you have contacted SoundCharts and have purchased a plan providing the required app id and api key.

About

soundchartspy is a wrapper package enabling easier pythonic interaction with the SoundCharts API (SoundCharts API documentation). It provides an easy interface to retrieve data about songs, artists, charts and more. This package is not affiliated with or endorsed by SoundCharts, though an active SoundCharts API subscription is required to use the package.

For detailed information, consult the documentation hosted on Read the Docs.

Documentation

Documentation for soundchartspy is located at https://soundchartspy.readthedocs.io/.

Example Usage

Here’s an example of how to use soundchartspy:

from soundchartspy.client import SoundCharts
from soundchartspy.data import Song, Album

# Initialize the SoundCharts client
sc = SoundCharts(api_key='your_api_key', app_id='your_app_id')

# Get the song by UUID
song: Song = sc.song(song_uuid='7d534228-5165-11e9-9375-549f35161576')
print("Song Name: {}, Artists: {}".format(song.name, song.artists))

# Get the song audience on Spotify
audience_data: dict = sc.song_audience(song.uuid, 'spotify')
print("Spotify Audience: {}".format(audience_data))

# Get the song albums
albums: list[Album] = sc.song_albums(song.uuid)
print("Albums: {}".format(albums))

API Implementation Status

✅ Completed Methods

  • Song Methods
    • SoundCharts.song()

    • SoundCharts.song_by_isrc()

    • SoundCharts.song_by_platform_id()

    • SoundCharts.song_ids()

    • SoundCharts.song_albums()

    • SoundCharts.song_audience()

    • SoundCharts.song_spotify_popularity()

    • SoundCharts.song_chart_entries()

    • SoundCharts.song_playlist_entries()

    • SoundCharts.song_radio_spins()

    • SoundCharts.song_radio_spin_count()

  • Artist Methods (Partially Implemented)
    • SoundCharts.artist()

    • SoundCharts.artist_by_platform_id()

    • SoundCharts.artist_ids()

    • SoundCharts.artist_songs()

    • SoundCharts.artist_albums()

    • SoundCharts.artist_similar_artists()

    • SoundCharts.artist_current_stats()

    • SoundCharts.artist_audience()

    • SoundCharts.artist_local_audience()

    • SoundCharts.artist_listeners_streams_views()

    • SoundCharts.artist_spotify_monthly_listeners_latest()

    • SoundCharts.artist_spotify_monthly_listeners_by_month()

    • SoundCharts.artist_retention()

    • SoundCharts.artist_popularity()

    • SoundCharts.artist_audience_report_latest()

    • SoundCharts.artist_audience_report_dates()

    • SoundCharts.artist_audience_report_by_date()

    • SoundCharts.artist_short_videos()

    • SoundCharts.artist_short_video_audience()

📋 Pending Implementation

  • Remaining Artist Methods

  • Chart Methods

  • Playlist Methods

  • Search Methods

  • Album Methods

  • Radio Methods

  • TikTok Methods

  • User Methods

Development Notes

  • All implemented methods follow the official SoundCharts API specification

  • Unit tests available for implemented methods

Found a Bug?

Issues are tracked via GitHub at the project issue page.

Contributing

  1. Check for open issues on the project issue page, or open a new issue to start a discussion about a feature or bug.

  2. Fork the soundchartspy repository on GitHub to start making changes.

  3. Add a test case to ensure that the bug is fixed or the feature is implemented correctly.

  4. Submit your pull request for review.

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

soundchartspy-0.1.4.tar.gz (48.0 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

soundchartspy-0.1.4-py3-none-any.whl (13.7 kB view details)

Uploaded Python 3

File details

Details for the file soundchartspy-0.1.4.tar.gz.

File metadata

  • Download URL: soundchartspy-0.1.4.tar.gz
  • Upload date:
  • Size: 48.0 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/5.1.1 CPython/3.12.2

File hashes

Hashes for soundchartspy-0.1.4.tar.gz
Algorithm Hash digest
SHA256 8673548ca59a4a3da108cfdf8d1670ad8c58a9c745ae0e76c78300c43ab9d9f7
MD5 3bd6dcee47ffaa238c5ea011d8cc9be4
BLAKE2b-256 1c6962e9b7b23450a39596885bbe18a2da9a654a23d3738af20b18e52b23b899

See more details on using hashes here.

File details

Details for the file soundchartspy-0.1.4-py3-none-any.whl.

File metadata

  • Download URL: soundchartspy-0.1.4-py3-none-any.whl
  • Upload date:
  • Size: 13.7 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/5.1.1 CPython/3.12.2

File hashes

Hashes for soundchartspy-0.1.4-py3-none-any.whl
Algorithm Hash digest
SHA256 5df69f2f1425311e4e3f00e7d535ecb132330a838f123a6baca8ca2ed31fa2af
MD5 c7b4d5506b15b20df82a05ad46b47884
BLAKE2b-256 53c26524f59cdedbe4b429c68f77569890cf008de3e2d40d064d3383bbae2c86

See more details on using hashes here.

Supported by

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