Skip to main content

Python client for the Last.fm API with a pythonic interface to all methods, including auth, etc. An async, Tornado-based client included as well.

Project description

Python client for the Last.fm API with a pythonic interface. Also includes an async variant of the client for Tornado.

Usage

Regular

from lastfmclient import LastfmClient

api = LastfmClient(
    api_key=KEY,
    api_secret=SECRET,
    session_key=session_key
)

resp = api.track.update_now_playing(
    track='Paranoid Android',
    artist='Radiohead',
    album='OK Computer',
)

print resp

Asynchronous (uses tornado.httpclient.AsyncHTTPClient)

import tornado.web
import tornado.gen
from lastfmclient.async import AsyncLastfmClient

class Scrobbler(tornado.web.RequestHandler):

    @tornado.gen.coroutine
    def post(self):
        api = AsyncLastfmClient(
            api_key=KEY,
            api_secret=SECRET,
            session_key=session_key
        )

        resp = yield api.track.update_now_playing(
            track='Paranoid Android',
            artist='Radiohead',
            album='OK Computer',
        )
        self.finish(resp)

See also examples.

Client methods

All the methods the Last.fm API provides are mirrored in the client with rich docstrings and arguments description. This code is actually generated directly from the online API documentation pages (see ./generate.py, ./api.json, and ./lastfmclient/api.py).

The defined methods be updated to the current version of the documentation via:

$ pip install -r requirements.txt lxml

# 1. Generate fresh api.json from docs at http://www.last.fm/api:
$ make spec

# 2. Generate `lastfm/api.py` from `api.json`:
$ make code

# Or, all the above in one step:
$ make

Contact

Jakub Roztočil

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

lastfmclient-0.0.4.tar.gz (17.6 kB view details)

Uploaded Source

File details

Details for the file lastfmclient-0.0.4.tar.gz.

File metadata

  • Download URL: lastfmclient-0.0.4.tar.gz
  • Upload date:
  • Size: 17.6 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No

File hashes

Hashes for lastfmclient-0.0.4.tar.gz
Algorithm Hash digest
SHA256 500b836582ec824f62899dccc4ed7b907860036c8b4b394effa2e9e35ec9eddf
MD5 7bb99f91b05fe2c1d6f8b2a371738a02
BLAKE2b-256 6fbc963b98fdbf261b6586788d66ce5e1a738f199da7d5bd84feac89b8756c2a

See more details on using hashes here.

Supported by

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