beets: Trying to import returns traceback error

Problem

Trying to import returns traceback error (beet imp -t “{albumFile}”)

Running this command in verbose (-vv) mode:

$ beet -vv (... paste here ...)

Led to this problem:

 File "/usr/local/bin/beet", line 9, in <module>
    load_entry_point('beets==1.3.17', 'console_scripts', 'beet')()
  File "/Library/Python/2.7/site-packages/beets/ui/__init__.py", line 1236, in main
    _raw_main(args)
  File "/Library/Python/2.7/site-packages/beets/ui/__init__.py", line 1226, in _raw_main
    subcommand.func(lib, suboptions, subargs)
  File "/Library/Python/2.7/site-packages/beets/ui/commands.py", line 966, in import_func
    import_files(lib, paths, query)
  File "/Library/Python/2.7/site-packages/beets/ui/commands.py", line 943, in import_files
    session.run()
  File "/Library/Python/2.7/site-packages/beets/importer.py", line 321, in run
    pl.run_parallel(QUEUE_SIZE)
  File "/Library/Python/2.7/site-packages/beets/util/pipeline.py", line 302, in run
    out = self.coro.send(msg)
  File "/Library/Python/2.7/site-packages/beets/util/pipeline.py", line 184, in coro
    func(*(args + (task,)))
  File "/Library/Python/2.7/site-packages/beets/importer.py", line 1265, in lookup_candidates
    task.lookup_candidates()
  File "/Library/Python/2.7/site-packages/beets/importer.py", line 592, in lookup_candidates
    autotag.tag_album(self.items, search_ids=self.search_ids)
  File "/Library/Python/2.7/site-packages/beets/autotag/match.py", line 439, in tag_album
    search_album, va_likely)
  File "/Library/Python/2.7/site-packages/beets/autotag/hooks.py", line 580, in album_candidates
    out.extend(plugins.candidates(items, artist, album, va_likely))
  File "/Library/Python/2.7/site-packages/beets/plugins.py", line 357, in candidates
    out.extend(plugin.candidates(items, artist, album, va_likely))
  File "/Library/Python/2.7/site-packages/beetsplug/discogs.py", line 147, in candidates
    return self.get_albums(query)
  File "/Library/Python/2.7/site-packages/beetsplug/discogs.py", line 207, in get_albums
    type='release').page(1)
  File "/Library/Python/2.7/site-packages/discogs_client/models.py", line 336, in page
    data = self.client._get(self._url_for_page(index))
  File "/Library/Python/2.7/site-packages/discogs_client/client.py", line 110, in _get
    return self._request('GET', url)
  File "/Library/Python/2.7/site-packages/discogs_client/client.py", line 97, in _request
    content, status_code = self._fetcher.fetch(self, method, url, data=data, headers=headers)
  File "/Library/Python/2.7/site-packages/discogs_client/fetchers.py", line 73, in fetch
    resp, content = self.oauth_client.request(url, method, headers=headers)
  File "/Library/Python/2.7/site-packages/oauth2/__init__.py", line 682, in request
    connection_type=connection_type)
  File "/Library/Python/2.7/site-packages/httplib2/__init__.py", line 1593, in request
    (response, content) = self._request(conn, authority, uri, request_uri, method, body, headers, redirections, cachekey)
  File "/Library/Python/2.7/site-packages/httplib2/__init__.py", line 1388, in _request
    redirections=redirections - 1)
  File "/Library/Python/2.7/site-packages/oauth2/__init__.py", line 662, in request
    req.sign_request(self.method, self.consumer, self.token)
  File "/Library/Python/2.7/site-packages/oauth2/__init__.py", line 493, in sign_request
    self['oauth_body_hash'] = base64.b64encode(sha(self.body).digest())
TypeError: must be string or buffer, not None

Here’s a link to the music files that trigger the bug (if relevant):

Setup

  • OS: Mac 10.10.5
  • Python version: 2.7
  • beets version: 1.3.17
  • Turning off plugins made problem go away (yes/no):

My configuration (output of beet config) is:

directory: /Users/peterkoondial/Music/Musique
library: /Users/peterkoondial/.config/beets/library.db
write: yes
copy: yes
move: true
original_date: true
per_disc_numbering: true
plugins: fetchart embedart lyrics inline discogs
paths:
    default: $albumartist/($year) $album%aunique{}/%if{$multidisc,Disc $disc}/$track - $title
    singleton: Non-Album/$artist/$title
    comp: Various Artist/($year) $album%aunique{}/%if{$multidisc,Disc$disc}/$track - $title
    albumtype: soundtrack:Soundtracks/album/$track $title
item_fields:
    multidisc: 1 if disctotal > 1 else 0

About this issue

  • Original URL
  • State: closed
  • Created 8 years ago
  • Comments: 34 (17 by maintainers)

Most upvoted comments

Take a look at #1949 (comment).

You’ll want to run this to install all of the dependencies:

pip install -U beets[fetchart,discogs,import]