Skip to content

Error message when release is missing cover #283

@cirdan-shipwright

Description

@cirdan-shipwright

Describe the bug
Isn't able to download when the release is missing a cover.

To Reproduce
Command to reproduce the behavior:
bandcamp-dl https://blackmagi.bandcamp.com/track/waltz-of-the-funeral-urn

https://blackmagi.bandcamp.com/track/waltz-of-the-funeral-urn
https://blackmagi.bandcamp.com/track/trudging-through-fog-and-smoke
https://blackmagi.bandcamp.com/track/thoughts-in-reverse

Expected behavior
They should be downloaded.

Logs
Most if not always you will get some kind of output explaining the issue, post it:

bandcamp-dl https://blackmagi.bandcamp.com/track/waltz-of-the-funeral-urn --debug
DEBUG:bandcamp-dl:Config/Args: Namespace(URL=['https://blackmagi.bandcamp.com/track/waltz-of-the-funeral-urn'], version=False, debug=True, artist=None, track=None, album=None, template='%{artist}/%{date} - %{album}/%{track}. %{title}', base_dir='/home/redacted/BC', full_album=False, overwrite=False, no_art=False, embed_lyrics=False, group=False, embed_art=False, no_slugify=True, ok_chars='-_~', space_char='-', ascii_only=False, keep_spaces=False, keep_upper=False, no_confirm=False, embed_genres=False)
DEBUG:bandcamp-dl:
	URL: https://blackmagi.bandcamp.com/track/waltz-of-the-funeral-urn
DEBUG:urllib3.connectionpool:Starting new HTTPS connection (1): blackmagi.bandcamp.com:443
DEBUG:urllib3.connectionpool:https://blackmagi.bandcamp.com:443 "GET /track/waltz-of-the-funeral-urn HTTP/1.1" 200 None
DEBUG:bandcamp-dl.Main: Generating BandcampJSON..
DEBUG:bandcamp-dl.JSON: Grab pagedata JSON..
DEBUG:bandcamp-dl.JSON: Grabbing embedded scripts..
DEBUG:bandcamp-dl.JSON: Converting JS to JSON..
DEBUG:bandcamp-dl.JSON: Converting JS to JSON..
DEBUG:bandcamp-dl.Main: BandcampJSON generated..
DEBUG:bandcamp-dl.Main: Generating Album..
DEBUG:bandcamp-dl.Main: Generating track metadata..
DEBUG:bandcamp-dl.Main: Track metadata generated..
Traceback (most recent call last):
  File "/home/redacted/.local/lib/python3.12/site-packages/bandcamp_dl/bandcamp.py", line 229, in get_album_art
    url = self.soup.find(id='tralbumArt').find_all('a')[0]['href']
          ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^^^
IndexError: list index out of range

During handling of the above exception, another exception occurred:

Traceback (most recent call last):
  File "/home/redacted/.local/bin/bandcamp-dl", line 8, in <module>
    sys.exit(main())
             ^^^^^^
  File "/home/redacted/.local/lib/python3.12/site-packages/bandcamp_dl/__main__.py", line 119, in main
    album_list.append(bandcamp.parse(url, not arguments.no_art, arguments.embed_lyrics, arguments.embed_genres,
                      ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/home/redacted/.local/lib/python3.12/site-packages/bandcamp_dl/bandcamp.py", line 148, in parse
    album['art'] = self.get_album_art()
                   ^^^^^^^^^^^^^^^^^^^^
  File "/home/redacted/.local/lib/python3.12/site-packages/bandcamp_dl/bandcamp.py", line 231, in get_album_art
    except None:
TypeError: catching classes that do not inherit from BaseException is not allowed


``
If possible after running the command with the --debug option.

**Desktop (please complete the following information):**
 - OS: Ubuntu
 - Version 24.04.3 LTS x86_64
 - Python Version Python 3.12.3

**Additional context**
Add any other context about the problem here.

Metadata

Metadata

Assignees

Labels

Projects

No projects

Milestone

No milestone

Relationships

None yet

Development

No branches or pull requests

Issue actions