A command-line Last.fm scrobbler and a now-playing status updater.


License
GPL-3.0
Install
pip install scrobblerh==1.1.4

Documentation

Note: Python 3 is required!

Usage

The program can be invoked with one of the following commands:

  • add-user - Add a user to the list of known users.

    • [user]
      A Last.fm username.
    • [--password, -p]
      The corresponding password.

    If a username is provided, you will be prompted for a password. If the command is invoked without any arguments, a Last.fm authorization web-page will be opened for you to grant access to the application.

    • [--dont-invoke-browser, -x]
      When invoking the command without arguments, always show the authentication URL; never try to automatically open it.
  • list-users - List known users and their corresponding session keys.

  • remove-user - Remove a user from the list of known users.

    • user
      The user to remove.
  • scrobble - Scrobble a track.

    • user
      The username to scrobble with. If the user isn't known, you will be prompted for a password.
    • artist
      The name of the artist.
    • track
      The name of the track.
    • time
      The time of listening. Formatted by --time-format. It may also be now, in which case the current time is used.
    • [--time-format, -tf]
      Specifies the format of time, using the syntax of strftime(). Defaults to %Y-%m-%d.%H:%M.
    • [--album, -a]
      The name of the album.
    • [--duration, -d]
      Has the format of XXhYYmZZs. At least one of those has to be present, but any number of them can be specified, and in any order.
  • now-playing - Update the now-playing status.

    • user
      The username to use. If the user isn't known, you will be prompted for a password.
    • artist
      The name of the artist.
    • track
      The name of the track.
    • [--album, -a]
      The name of the album.
    • [--duration, -d]
      Has the format of XXhYYmZZs. At least one of those has to be present, but any number of them can be specified, and in any order.

Examples

Add a user to the list of known users:

$ scrobbler add-user
The Last.fm authentication page will be opened, or its URL printed here.
Press enter to continue.
Press enter after granting access.
User hauzzer added.

$

and:

$ scrobbler add-user hauzzer
Password:
User hauzzer added.

$

also:

$ scrobbler add-user hauzzer --password ******
User hauzzer added.

$

List all known users:

$ scrobbler list-users
hauzzer | b431328fc489a4f6e6eeee3e8a0f5537

$

Scrobble a track, "Lamplight Symphony" by Kansas, which was listened to on 07/15/2013 at 15:32:

$ scrobbler scrobble hauzzer Kansas "Lamplight Symphony" 2013-15-07.15:32 -a "Song for America" -d 8m16s
Track scrobbled.

$

Update the now-playing status with "Incomudro - Hymn to the Atman" by Kansas.:

$ scrobbler now-playing hauzzer Kansas "Incomudro - Hymn to the Atman" -a "Song for America" -d 12m17s
Status updated.

$

Remove a user from the list of known users:

$ scrobbler remove-user hauzzer
User hauzzer removed.

$