Skip to main content

Beets plugin to fetch and store popularity values as flexible item attributes

Project description

# beets-popularity

Beets plugin to store the popularity values from Spotify as flexible item attributes in the database

**Note: Because of the recent changes in the authentication process for the Spotify API, the popularity values will be fetched from Deezer instead for the time being.**

## Installation
Using pip:

pip install beets-popularity

Manually:

git clone https://github.com/abba23/beets-popularity.git
cd beets-popularity
python setup.py install

## Usage
$ beet popularity happy
popularity: Bon Jovi - The Circle - Happy Now: 20
popularity: The Doors - Strange Days - Unhappy Girl: 40
popularity: Kygo - Cloud Nine - Happy Birthday: 59

## Options
| Option | |Description |
| ------ | ------ | ------ |
| -a | \-\-album | match albums instead of tracks |
| -n | \-\-nowrite | print the popularity values without storing them |

## Import
All imported songs will automatically have a popularity attribute and value assigned to them if the plugin is enabled.

## Query
As the popularity of a song is a value between 0 and 100, you could filter your library like this in order to list all tracks that have a popularity of at least 20:

$ beet list -f '$artist - $title ($popularity)' popularity:20..
Bon Jovi - Happy Now (20)
The Doors - Unhappy Girl (40)
Kygo - Happy Birthday (59)

This is especially useful in combination with the [Smart Playlist Plugin](https://beets.readthedocs.io/en/v1.4.3/plugins/smartplaylist.html). Adding this to your configuration would allow you to have continuously updated playlists of the most popular songs in your library:

smartplaylist:
playlist_dir: ~/Music/Playlists
playlists:
- name: popular.m3u
query: 'popularity:70..'

- name: popular_rock.m3u
query: 'popularity:60.. genre:Rock'

Project details


Download files

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

Files for beets-popularity, version 1.0.2
Filename, size File type Python version Upload date Hashes
Filename, size beets-popularity-1.0.2.tar.gz (3.4 kB) File type Source Python version None Upload date Hashes View hashes

Supported by

Elastic Elastic Search Pingdom Pingdom Monitoring Google Google BigQuery Sentry Sentry Error logging AWS AWS Cloud computing DataDog DataDog Monitoring Fastly Fastly CDN DigiCert DigiCert EV certificate StatusPage StatusPage Status page