Skip to main content

Interact with the Audius platform in Python and the terminal

Project description

audius-py

A Python SDK and CLI for the Audius Platform.

Installation

From pip:

pip install audius-py

From source (from the root project directory):

pip install .

NOTE: In order to user the media player functionality of the SDK, you must have VLC media player installed.

Quick Usage

To create an audius SDK instance, do:

from audius.sdk import Audius

audius = Audius()

It is recommended that you set a custom app name (the default is audius-py). One way to do this is via an environment variable:

export AUDIUS_APP_NAME="My_Audius_App"

Then, when you create an Audius SDK object, it will automatically use this value instead.

You can also specify an app name (and other configuration) when creating the SDK, like:

from audius.config import Config
from audius.sdk import Audius

config = Config(app_name="my_app")
sdk = Audius(config=config)

Another example config value is the host, e.g.:

export AUDIUS_HOST_NAME="https://audius.example.com"

or:

from audius.config import Config

Config(host="https://audius.exmaple.com")

If you don't specify a host, audius-py will select a random host from the list of known hosts to the Audius app. To see all available hosts, run the following command:

audius hosts

CLI

See all commands by doing:

audius --help

This guide will show how to stream one of the top songs on Audius directly into your terminal. First, browse top artists using the CLI:

audius users top

It should show output like this:

1: Zedd (id=XlJby)
2: Skrillex (id=eAZl3)
3: Aluna (id=5j9VM)
4: kennybeats (id=DrZwG)
5: trillsammy (id=NzMW8)
6: ODESZA (id=2oNg1)
7: noodles (id=b9w8J)
8: kayzo (id=LMdyZ)
9: Disclosure (id=E2O1R)
10: Fat Nick (id=oGKZd)

Next, select one of the user IDs by copying it and using it in the following command:

audius users tracks eAZl3

It should output track information like this:

Track: Kliptown Empyrean (id=G0wyE)

Finally, play the track by using its ID in the following command:

audius tracks play G0wyE

The song should now be streaming into your terminal! And if you really enjoy the track, you can download it by doing:

audius tracks download G0wyE song.mp3

By default, audius-py tries to find the best player. However, specify your player of choice using the --player flag:

audius tracks play G0wyE --player vlc

Python SDK

Use the Python SDK directly:

from audius.sdk import Audius

sdk = Audius(app="my_app")
for artist in sdk.users.top():
    print(artist["name"])

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

audius-py-0.1.5.tar.gz (18.5 kB view details)

Uploaded Source

Built Distribution

audius_py-0.1.5-py3-none-any.whl (19.3 kB view details)

Uploaded Python 3

File details

Details for the file audius-py-0.1.5.tar.gz.

File metadata

  • Download URL: audius-py-0.1.5.tar.gz
  • Upload date:
  • Size: 18.5 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/3.8.0 pkginfo/1.9.6 readme-renderer/37.3 requests/2.28.2 requests-toolbelt/0.10.1 urllib3/1.26.15 tqdm/4.65.0 importlib-metadata/6.2.0 keyring/23.13.1 rfc3986/2.0.0 colorama/0.4.6 CPython/3.9.16

File hashes

Hashes for audius-py-0.1.5.tar.gz
Algorithm Hash digest
SHA256 1b8f94b9566329105f7b18998e99ee4884865181d6751887c6e24d0d8bb8b739
MD5 030682fdb8bbc4cecf35ab5d8ed5fbd9
BLAKE2b-256 be94879cc85884ad8f1dc4926d04bdfe566bac08f9847ae50659c40c2f34affa

See more details on using hashes here.

File details

Details for the file audius_py-0.1.5-py3-none-any.whl.

File metadata

  • Download URL: audius_py-0.1.5-py3-none-any.whl
  • Upload date:
  • Size: 19.3 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/3.8.0 pkginfo/1.9.6 readme-renderer/37.3 requests/2.28.2 requests-toolbelt/0.10.1 urllib3/1.26.15 tqdm/4.65.0 importlib-metadata/6.2.0 keyring/23.13.1 rfc3986/2.0.0 colorama/0.4.6 CPython/3.9.16

File hashes

Hashes for audius_py-0.1.5-py3-none-any.whl
Algorithm Hash digest
SHA256 310ff2e58ac1665c85551388e353a2d1f02a67b039d8aef1635e2b36258f14e2
MD5 8da3dc3a7fae090231dac78cd03747e5
BLAKE2b-256 abea752e6f0a34f8e56b174648683f0b472af78062cce0eefd6510f643eda4c3

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