mirror of
https://github.com/beetbox/beets.git
synced 2025-12-30 12:32:33 +01:00
ABrainz: Added first pass of plugin. Only prints MBID and response status code to console.
This commit is contained in:
parent
a7156b63f9
commit
ff81bbf8f5
1 changed files with 38 additions and 0 deletions
38
beetsplug/acoustic.py
Normal file
38
beetsplug/acoustic.py
Normal file
|
|
@ -0,0 +1,38 @@
|
|||
from __future__ import (division, absolute_import, print_function,
|
||||
unicode_literals)
|
||||
|
||||
|
||||
from beets import plugins, ui
|
||||
import requests
|
||||
|
||||
ACOUSTIC_URL = "http://acousticbrainz.org/"
|
||||
LEVEL = "/high-level"
|
||||
PLUGIN_DESCRIPTION = "Fetch metadata from AcousticBrainz"
|
||||
|
||||
|
||||
class AcousticPlugin(plugins.BeetsPlugin):
|
||||
def __init__(self):
|
||||
super(AcousticPlugin, self).__init__()
|
||||
|
||||
def commands(self):
|
||||
cmd = ui.Subcommand('acoustic', help=PLUGIN_DESCRIPTION)
|
||||
|
||||
def func(lib, opts, args):
|
||||
fetch_info(lib)
|
||||
|
||||
cmd.func = func
|
||||
return [cmd]
|
||||
|
||||
|
||||
# Currently outputs MBID and corresponding request status code
|
||||
def fetch_info(lib):
|
||||
for item in lib.items():
|
||||
if item.mb_trackid:
|
||||
r = requests.get(generate_url(item.mb_trackid))
|
||||
print(item.mb_trackid)
|
||||
print(r.status_code)
|
||||
|
||||
|
||||
# Generates url of AcousticBrainz end point for given MBID
|
||||
def generate_url(mbid):
|
||||
return ACOUSTIC_URL + mbid + LEVEL
|
||||
Loading…
Reference in a new issue