Professional Documents
Culture Documents
How To Download A Udemy Course: Working
How To Download A Udemy Course: Working
How To Download A Udemy Course: Working
Steps:
1. Basically follow the steps in the Udemy Downloader on Github
a. Put ffmpeg, aria2c, mp4decrypt, and yt-dlp in the system path (by going into
environmental variables and adding the folders that contain the files).
b. Find your bearer token using the firefox guide or the chrome guide. Edit the config.toml
file and make it look like this:
Also put your udemy username and password near the end of the file and change
headless to false if you want (I don’t think it’s necessary):
c. I did not find my cookie because I don’t have a subscription, but if you have a
subscription take a look at the cookie section
2. Get the Key ID and Key for your course
a. Go to GetWVKeys and click on “Login with Discord”
b. Join the discord server, read #rules, read #verification-faq, and then create a ticket in
#verification and wait for the admins/mods to give you the green verified role.
Remember one important piece of information: #rules says you cannot share whatever
you download with anyone else. Once you are verified in the discord server, go back to
GetWVKeys.
c. Find your API key by hovering over your username and clicking on Profile
d. Download the Get key script and run the downloaded .py file. You should see something
like this:
To find the media license token, open dev tools in your browser (ctrl+shift+i for chrome)
and click on network.
Go to any video in the udemy course you want to download and reload the page so that
stuff appears in the network tab. Also, make sure that all is selected:
In the search bar, type in “license” (without the quotation marks ofc) and click on the
thing that says something like validate-auth-token?drm… . Scroll down to Request
Headers and look for the :path:. It will say
/api-2.0/media-license-server/validate-auth-token?drm_type=widevine&auth_
token=. Copy everything after the equals sign (only the stuff in :path:, don’t go to
:scheme:). That will be the media license token. Now you must enter the mpd url:
Instead of searching for “license”, just search for “mpd”. Look for index.mpd?token= and
click on it. Then copy everything after Request URL underneath General, but don’t go to
Request Method. This is the MPD URL. Now it will ask for the GetWVkeys api key:
NOTE: THE STUFF TO GET THE KEY MUST BE DONE RELATIVELY QUICKLY OR YOU WILL
GET AN ERROR. IF YOU GET AN ERROR RELOAD THE VIDEO PAGE AND TRY EVERYTHING
AGAIN
e. Find the key and keyid. Right above DONE you will see a bunch of text and in it
somewhere it will say "keys":[{"key":"_____:____"}]. There will be stuff in the blanks.
Copy the stuff in the first blank. Go to keyfile.json in the downloaded selenium branch
and paste that into the first set of quotation marks. The stuff in the second blank will be
copied into the second set of quotation marks. Save keyfile.json and close it.
3. Run the downloaded selenium branch folder stuff
a. In cmd, navigate to the downloaded selenium branch folder and run the command “pip
install -r requirements.txt” (without the quotation marks). Once that’s done just run “pip
install xmltodict” as a safe measure.
b. Find your Udemy course url by going to your udemy course. Make sure it has /learn in it.
An example of the link is
https://www.udemy.com/course/java-the-complete-java-developer-course/learn.
c. To download all the course files (it doesn’t download the captions idk why) run the
command “python main.py -c
https://www.udemy.com/course/java-the-complete-java-developer-course/learn/
--download-assets -sc” but replace the course link with your course link and don’t type
the quotes.
d. Watch as stuff happens.
e. The output course should be in the out_dir folder inside the selenium branch folder you
downloaded from github.