Shubhamrawat5 / apple-playlist-downloader

apple music playlist downloader (mp3) in node js
102 stars 26 forks source link

Support for songs using non-latin characters e.g. Russian #2

Closed sectune closed 3 years ago

sectune commented 3 years ago

Thanks a lot for this script, works like a charm for me!

Just one issue I have which is easy to reproduce. Try adding a song with a cyrillic title in your playlist and run the script. You'll encounter the following stack as below when the script tries to download the first cyrillic/non-latin song. Would you please be so kind and take a look at it? Would be amazing if this could be fixed!

Thanks once more, big fan of your work!

internal/process/promises.js:213 triggerUncaughtException(err, true / fromPromise /); ^

TypeError [ERR_UNESCAPED_CHARACTERS]: Request path contains unescaped characters at new ClientRequest (_http_client.js:155:13) at Object.request (https.js:374:10) at RedirectableRequest._performRequest (/Location/apple-playlist-downloader/node_modules/follow-redirects/index.js:241:24) at new RedirectableRequest (/Location/apple-playlist-downloader/node_modules/follow-redirects/index.js:60:8) at Object.request (/Location/apple-playlist-downloader/node_modules/follow-redirects/index.js:437:14) at dispatchHttpRequest (/Location/apple-playlist-downloader/node_modules/axios/lib/adapters/http.js:195:25) at new Promise () at httpAdapter (/Location/apple-playlist-downloader/node_modules/axios/lib/adapters/http.js:46:10) at dispatchRequest (/Location/apple-playlist-downloader/node_modules/axios/lib/core/dispatchRequest.js:52:10) at processTicksAndRejections (internal/process/task_queues.js:95:5) { code: 'ERR_UNESCAPED_CHARACTERS'

Shubhamrawat5 commented 3 years ago

Yeah thanks. can you post the song full name which caused this problem? Will check

sectune commented 3 years ago

The name of the song is: “Я не отдам тебя никому” from the band “Ruki Vverkh” from the Album “The Best (Deluxe Version)”

Thanks a lot!

Shubhamrawat5 commented 3 years ago

Hey, It is fixed now i think. Check it by pulling new code i just pushed.

sectune commented 3 years ago

wow, that was quick! I did a git clone and cloned in a fresh dir but unfortunately I now encounter an error as soon as I execute:

internal/modules/cjs/loader.js:892 throw err; ^

Error: Cannot find module 'progress' Require stack:

Shubhamrawat5 commented 3 years ago

Yeah. I just added a small inbuilt function. "Error: Cannot find module 'progress'" this shows you don't have package installed so run command -> npm install

You need to follow again all the steps from starting as you used clone !

sectune commented 3 years ago

Thank you very much! It worked, stupid me forgot the npm install :) You are amazing if I can chip-in for a beer for you somehow, please let me know!