All Projects → jesseward → Plex Lastfm Scrobbler

jesseward / Plex Lastfm Scrobbler

Licence: mit
Scrobble played audio items Last.FM from the Plex Media Server application.

Programming Languages

python
139335 projects - #7 most used programming language

Projects that are alternatives of or similar to Plex Lastfm Scrobbler

multi-scrobbler
Scrobble plays from multiple sources to multiple clients
Stars: ✭ 54 (-38.64%)
Mutual labels:  plex, lastfm, plex-media-server
synology-update-plex
Script to Auto Update Plex Media Server on Synology NAS
Stars: ✭ 89 (+1.14%)
Mutual labels:  plex, plex-media-server
Porthole
A window into the status of multiple services related to Plex Media Server (Plex, Couchpotato, Sickrage, Deluge, Sabnzbd+, etc.).
Stars: ✭ 30 (-65.91%)
Mutual labels:  plex, plex-media-server
Cloud Media Scripts
Upload and stream media from the cloud with or without encryption. Cache all new and recently streamed media locally to access quickly and reduce API calls
Stars: ✭ 84 (-4.55%)
Mutual labels:  plex, plex-media-server
Plexus
A suite of tools to help manage your media collection.
Stars: ✭ 78 (-11.36%)
Mutual labels:  plex, plex-media-server
UpdateTool
A tool to update the IMDB ratings for Plex libraries that contain movies/series and use the IMDB agent to receive ratings
Stars: ✭ 195 (+121.59%)
Mutual labels:  plex, plex-media-server
PGMA-Modernized
An updated approach for Plex Gay Media Adult Agents for both Full Feature Films and Scenes
Stars: ✭ 59 (-32.95%)
Mutual labels:  plex, plex-media-server
PlexAutoSkip
Automatically skip content in Plex
Stars: ✭ 95 (+7.95%)
Mutual labels:  plex, plex-media-server
Kitana
A responsive Plex plugin web frontend
Stars: ✭ 252 (+186.36%)
Mutual labels:  plex, plex-media-server
Audiobooks.bundle
Plex metadata scraper for Audiobooks
Stars: ✭ 461 (+423.86%)
Mutual labels:  plex, plex-media-server
Plex Nginx Reverseproxy
Configuration to serve Plex Media Center https://plex.tv using Nginx https://nginx.com
Stars: ✭ 523 (+494.32%)
Mutual labels:  plex, plex-media-server
Iptv.bundle
Plex plug-in that plays live streams (like IPTV) from a M3U playlist
Stars: ✭ 739 (+739.77%)
Mutual labels:  plex, plex-media-server
PlexServerAutoUpdater
Automatically update Plex when running the Plex service.
Stars: ✭ 94 (+6.82%)
Mutual labels:  plex, plex-media-server
BPfM
unofficial Plex web client wrapper for macOS
Stars: ✭ 15 (-82.95%)
Mutual labels:  plex, plex-media-server
clusterplex
ClusterPlex is basically an extended version of Plex, which supports distributed Workers across a cluster to handle transcoding requests.
Stars: ✭ 123 (+39.77%)
Mutual labels:  plex, plex-media-server
plex-traefik
Plex media server with traefik 2 in docker and docker-compose
Stars: ✭ 30 (-65.91%)
Mutual labels:  plex, plex-media-server
rpi-nas
🌐👨‍💻💻 Setup your own NAS on a Raspberry Pi
Stars: ✭ 29 (-67.05%)
Mutual labels:  plex, plex-media-server
plex-utills
Manage your Plex library automatically
Stars: ✭ 258 (+193.18%)
Mutual labels:  plex, plex-media-server
plexmedia-downloader
Offline download media from Plex Media Server
Stars: ✭ 15 (-82.95%)
Mutual labels:  plex, plex-media-server
Telly
An IPTV proxy
Stars: ✭ 557 (+532.95%)
Mutual labels:  plex, plex-media-server

plex-lastfm-scrobbler

Build Status

NOTE : If you're a plex.tv user, Plex includes its own internal scrobbling capabilities. In order to enable your Plex.Tv account for Last.FM integration browse to https://plex.tv/users/other-services and link your Last.fm account from the Other Services . Announcment was made public via https://www.plex.tv/blog/plex-media-server-v0-9-12-5-a-tasty-update/ .

plex-lastfm-scrobbler provides a set of scripts that allow you to scrobble played audio items to Last.FM from the Plex Media Server application. plex-lastfm-scrobbler was built to run across platforms, though only tested on Linux.

A few points

  • plex-lastfm-scrobbler is an out of process tool. Meaning it is not a Plex Media Server plug-in. This tool runs separately of your Plex Media Server.
  • Must be run on the Plex Media Server
  • Parses Plex Media Server logs for the 'got played' string in the log file.
  • Does not differentiate between clients. Meaning all media played, will be scrobbled while the script is running.
  • Your plex-media-server logs must be set at DEBUG level (not VERBOSE)

Installation

Linux, OSX

It is recommended (but not required) that you install this into a virtualenvironment. This can be done as such.

virtualenv ~/.virtualenvs/plex-lastfm-scrobbler
source ~/.virtualenvs/plex-lastfm-scrobbler/bin/activate

Installing via pip or easy_install is supported. For example :pip install plex-scrobble or easy_install plex-scrobble.

If you wish to run development builds, fetch and install the source from the github repo.

git clone https://github.com/jesseward/plex-lastfm-scrobbler.git
cd plex-lastfm-scrobbler
python setup.py install
pip install -r dev_requirements.txt # for mock/testing packages.

Alternatively, you can fetch the latest zip from github

wget https://github.com/jesseward/plex-lastfm-scrobbler/archive/master.zip
unzip master.zip
cd plex-lastfm-scrobbler-master
python setup.py install

You're done.

Configuration

Run the wizard to generate config file

plex-scrobble --wizard

The plex-lastfm-scrobbler configuration file (.plex-scrobble.toml) is installed to ~/ . The following configuration values are available.

If you're running Plex Media Server on a Linux based operating system, things should work out of the box.

[lastfm]
# REQUIRED: You'll need to create a last.fm API application first. Do so here:
# http://www.last.fm/api/account/create
api_key = "YOUR_API_KEY"
api_secret = "YOUR_API_SECRET"
user_name = "LAST_FM_USERNAME"
password = "LAST_FM_PASSWORD"

[plex-scrobble]
# mediaserver_log_location references the log file location of the plex media server
# the default under /var/lib/... is the default install of plex media server on
# a Linux system. You may wish to change this value to reference your OS install.
# https://support.plex.tv/hc/en-us/articles/200250417-Plex-Media-Server-Log-Files
mediaserver_log_location = "/var/lib/plexmediaserver/Library/Application Support/Plex Media Server/Logs/Plex Media Server.log"

# REQUIRED: Where do you wish to write the plex-scrobble log file.
log_file = "/tmp/plex-scrobble.log"

# REQUIRED: mediaserver_url is the location of the http service exposed by Plex Media Server
# the default values should be 'ok', assuming you're running the plex scrobble
# script from the same server as your plex media server
mediaserver_url = "http://localhost:32400"

# REQUIRED: a python data struture that stores failed scrobbles. plex-scrobble
# will retry on a 60 minute interval, maximum of 10 attempts if last.fm is
# experiencing issues.
cache_location = "/tmp/plex_scrobble.cache"

# OPTIONAL: plex_token defines the plex token used to get metadata
# Note: This is required if you use localhost or 127.0.0.1 and Plex Media Server >= 1.1.0
# You will know if you see a line like this your log_file:
# [plex_scrobble.plex_monitor fetch_metadata] [ERROR] urllib2 error reading from http://localhost:32400/library/metadata/48080 'HTTP Error 401: Unauthorized'
# Here is how you can obtain your token https://support.plex.tv/hc/en-us/articles/204059436-Finding-your-account-token-X-Plex-Token
plex_token = "YOUR_PLEX_TOKEN"

Running

If you installed plex-lastfm-scrobble to a virtual environment, enable the virtual env.

source ~/.virtualenvs/plex-lastfm-scrobbler/bin/activate

run the application

nohup plex-scrobble &

Troubleshooting & Known Issues

Or browse the github issues list to review old bugs or log a new problem. See https://github.com/jesseward/plex-lastfm-scrobbler/issues?q=

Note that the project description data, including the texts, logos, images, and/or trademarks, for each open source project belongs to its rightful owner. If you wish to add or remove any projects, please contact us at [email protected].