ebb-earl-co / tidal-wave

Waving at the TIDAL music service
Apache License 2.0
38 stars 2 forks source link

Album Not Getting Download #49

Closed Rajeshsahoo12 closed 7 months ago

Rajeshsahoo12 commented 7 months ago

Hi,

I have latest updated tidal-wave release 2024.1.9. But when I try to download this album. It gives this error message.

tidal-wave https://tidal.com/browse/album/228912245

2024-01-16:18:51:43,165 INFO [models.py:544] TIDAL album ID parsed from input: 228912245 2024-01-16:18:51:43,971 INFO [requesting.py:89] Requesting from TIDAL API: albums/228912245 2024-01-16:18:51:44,693 WARNING [requesting.py:96] 404 Client Error: not found for TIDAL API endpoint albums/228912245 2024-01-16:18:51:44,693 INFO [requesting.py:89] Requesting from TIDAL API: albums/228912245/items 2024-01-16:18:51:45,309 WARNING [requesting.py:96] 404 Client Error: not found for TIDAL API endpoint albums/228912245/items ╭─────────────────────────────── Traceback (most recent call last) ────────────────────────────────╮ │ /home/ubuntu/.local/lib/python3.10/site-packages/tidal_wave/main.py:91 in main │ │ │ │ 88 │ │ │ raise typer.Exit(code=0) │ │ 89 │ │ elif isinstance(tidal_resource, TidalAlbum): │ │ 90 │ │ │ album = Album(album_id=tidal_resource.tidal_id) │ │ ❱ 91 │ │ │ album.get( │ │ 92 │ │ │ │ session=session, audio_format=audio_format, out_dir=output_directory │ │ 93 │ │ │ ) │ │ 94 │ │ │ │ ╭───────────────────────────────────── locals ─────────────────────────────────────╮ │ │ │ album = Album(album_id=228912245) │ │ │ │ audio_format = <AudioFormat.lossless: 'Lossless'> │ │ │ │ include_eps_singles = False │ │ │ │ logger = <Logger tidal_wave.main (INFO)> │ │ │ │ loglevel = <LogLevel.info: 'INFO'> │ │ │ │ output_directory = PosixPath('/home/ubuntu/Music') │ │ │ │ s = <requests.sessions.Session object at 0xffffb050ee90> │ │ │ │ session = <requests.sessions.Session object at 0xffffb050ee90> │ │ │ │ tidal_resource = TidalAlbum(url='https://tidal.com/browse/album/228912245') │ │ │ │ tidal_url = 'https://tidal.com/browse/album/228912245' │ │ │ ╰──────────────────────────────────────────────────────────────────────────────────╯ │ │ │ │ /home/ubuntu/.local/lib/python3.10/site-packages/tidal_wave/album.py:142 in get │ │ │ │ 139 │ │ │ self.metadata = metadata │ │ 140 │ │ │ │ 141 │ │ self.get_items(session) │ │ ❱ 142 │ │ self.save_cover_image(session, out_dir) │ │ 143 │ │ self.get_review(session) │ │ 144 │ │ self.get_tracks(session, audio_format, out_dir) │ │ 145 │ │ │ │ ╭────────────────────────────── locals ───────────────────────────────╮ │ │ │ audio_format = <AudioFormat.lossless: 'Lossless'> │ │ │ │ metadata = None │ │ │ │ out_dir = PosixPath('/home/ubuntu/Music') │ │ │ │ self = Album(album_id=228912245) │ │ │ │ session = <requests.sessions.Session object at 0xffffb050ee90> │ │ │ ╰─────────────────────────────────────────────────────────────────────╯ │ │ │ │ /home/ubuntu/.local/lib/python3.10/site-packages/tidal_wave/album.py:80 in save_cover_image │ │ │ │ 77 │ │ utils.download_cover_image() function. If successful, │ │ 78 │ │ then self.album_cover_saved takes the value True""" │ │ 79 │ │ if self.album_dir is None: │ │ ❱ 80 │ │ │ self.set_dir(out_dir=out_dir) │ │ 81 │ │ self.cover_path: Path = self.album_dir / "cover.jpg" │ │ 82 │ │ if not self.cover_path.exists(): │ │ 83 │ │ │ download_cover_image( │ │ │ │ ╭──────────────────────────── locals ────────────────────────────╮ │ │ │ out_dir = PosixPath('/home/ubuntu/Music') │ │ │ │ self = Album(album_id=228912245) │ │ │ │ session = <requests.sessions.Session object at 0xffffb050ee90> │ │ │ ╰────────────────────────────────────────────────────────────────╯ │ │ │ │ /home/ubuntu/.local/lib/python3.10/site-packages/tidal_wave/album.py:60 in set_dir │ │ │ │ 57 │ │ """This method populates self.album_dir as a sub-subdirectory of │ │ 58 │ │ out_dir: its parent directory is the name of the (main) artist of │ │ 59 │ │ the album""" │ │ ❱ 60 │ │ artist_substring: str = self.metadata.artist.name.replace("..", "") │ │ 61 │ │ album_substring: str = ( │ │ 62 │ │ │ f"{self.metadata.name.replace('..', '')} " │ │ 63 │ │ │ f"[{self.metadata.id}] [{self.metadata.release_date.year}]" │ │ │ │ ╭───────────────── locals ──────────────────╮ │ │ │ out_dir = PosixPath('/home/ubuntu/Music') │ │ │ │ self = Album(album_id=228912245) │ │ │ ╰───────────────────────────────────────────╯ │ ╰──────────────────────────────────────────────────────────────────────────────────────────────────╯ AttributeError: 'NoneType' object has no attribute 'artist'

ebb-earl-co commented 7 months ago

@Rajeshsahoo12 I am getting the same error as well. I'll look into it

ebb-earl-co commented 7 months ago

@Rajeshsahoo12 even though I was able to see the page for this album that you linked to in the browser, the API is responding with 404. In particular:

{"status":404,"subStatus":2001,"userMessage":"Album [228912245] not found"}
Rajeshsahoo12 commented 7 months ago

@Rajeshsahoo12 I am getting the same error as well. I'll look into it

Okay sure

Rajeshsahoo12 commented 7 months ago

@Rajeshsahoo12 even though I was able to see the page for this album that you linked to in the browser, the API is responding with 404. In particular:

{"status":404,"subStatus":2001,"userMessage":"Album [228912245] not found"}

Ohhhh. I have checked now again. URL is working & opening fine on browser. Have tried normal session in multiple browser with private session too. Tried in other devices in my access. But website is working fine.

image

ebb-earl-co commented 7 months ago

@Rajeshsahoo12 In version 2024.1.10, I've fixed what you experienced with the long error message. Now, when resources are missing, the logging will be a concise 404 error reporting.

In terms of this album, if the API returns 404 for the album ID there's nothing more that I can do :disappointed:

Rajeshsahoo12 commented 7 months ago

@Rajeshsahoo12 In version 2024.1.10, I've fixed what you experienced with the long error message. Now, when resources are missing, the logging will be a concise 404 error reporting.

In terms of this album, if the API returns 404 for the album ID there's nothing more that I can do 😞

Ohhh okay

metronidazole commented 4 months ago

@Rajeshsahoo12 In version 2024.1.10, I've fixed what you experienced with the long error message. Now, when resources are missing, the logging will be a concise 404 error reporting.

In terms of this album, if the API returns 404 for the album ID there's nothing more that I can do 😞

I was having the same problem (404s) but I figured out what was causing it. The album ID being shown when I searched via google was different to the one I would see after logging in.

If you login to the tidal site and search there (instead of via google), and get the album link from that, it will work. If the album is otherwise missing while logged in, then it's locked because of georestrictions and there's not much you can do.