From cc22faf121141904b8b4400858c6e116b97ba64f Mon Sep 17 00:00:00 2001 From: 7x11x13 Date: Mon, 29 Nov 2021 05:36:26 -0500 Subject: [PATCH] Prefer original file extension over mimetype guess --- scdl/__init__.py | 2 +- scdl/scdl.py | 6 ++---- 2 files changed, 3 insertions(+), 5 deletions(-) diff --git a/scdl/__init__.py b/scdl/__init__.py index 71f8141..4330e1b 100644 --- a/scdl/__init__.py +++ b/scdl/__init__.py @@ -2,4 +2,4 @@ """Python Soundcloud Music Downloader.""" -__version__ = "v2.3.2" \ No newline at end of file +__version__ = "v2.3.3" \ No newline at end of file diff --git a/scdl/scdl.py b/scdl/scdl.py index 8d33879..425616c 100755 --- a/scdl/scdl.py +++ b/scdl/scdl.py @@ -452,7 +452,7 @@ def get_filename(track: BasicTrack, original_filename=None, aac=False, playlist_ def download_original_file(client: SoundCloud, track: BasicTrack, title: str, playlist_info=None, **kwargs): logger.info("Downloading the original file.") - + # Get the requests stream url = client.get_track_original_download(track.id, track.secret_token) @@ -472,19 +472,17 @@ def download_original_file(client: SoundCloud, track: BasicTrack, title: str, pl # Find filename header = r.headers.get("content-disposition") _, params = cgi.parse_header(header) - print(header) if "filename" in params: filename = urllib.parse.unquote(params["filename"], encoding="utf-8") else: raise SoundCloudException(f"Could not get filename from content-disposition header: {header}") - print(filename) if not kwargs.get("original_name"): filename, ext = os.path.splitext(filename) # Find file extension mime = r.headers.get("content-type") - ext = mimetypes.guess_extension(mime) or ext + ext = ext or mimetypes.guess_extension(mime) filename += ext filename = get_filename(track, filename, playlist_info=playlist_info, **kwargs)