Skip to content

knowbee/llvd

Repository files navigation

Table of Contents

Downloads Open Source Love Open Source Love

Status Feature
cookie-based authentication
download by learning path
download a course and all its exercises
group videos by chapters
subtitles
nice progress bar
resume failed downloads
skip already downloaded videos
set video format (360p, 540p, 720p)
all platforms
$ pip --no-cache-dir install llvd

If you have multiple versions of python installed in your system, use pip3 instead.

$ pip3 --no-cache-dir install llvd

Running from local installation

llvd --help
llvd -c "course-slug" -r 720

Running from docker container

# You will need to either use `docker cp` to get the course or mount it when running.
docker run ghcr.io/knowbee/llvd:master -c "course-slug" -r 720

When you get 'llvd' is not recognized as an internal or external command after successfully installing llvd, run python3 -m llvd <flags>

  1. Click on the desired course
  2. Your URl will look something like, https://www.linkedin.com/learning/l-essentiel-d-asp-dot-net-core-pour-dot-net-5
    • The course slug is: l-essentiel-d-asp-dot-net-core-pour-dot-net-5
  1. Click on the options in Google Chrome (top right with 3 vertical dots).
  2. Click on More tools -> Developer tools
    • You can also reach here by using the keyboard combination: ctrl+shift+I).
  3. Now once you’ve gained access to the developer tools, navigate to the Application tab, and copy the value of two cookies named li_at and JSESSIONID
  4. Create a file named cookies.txt and place it in the folder you want to download your courses to
  5. Open the cookies.txt file and paste in the values of li_at and JSESSIONID
li_at=xxxxx
JSESSIONID="ajax:xxxxxx"

If you have a corporate connected account you can fix the download issue by using a headers.txt as per below.

  1. Create a file named headers.txt and place it in the folder you want to download your courses to
  2. Right click on the page and select view source
    • You can also reach here by using the keyboard combination: ctrl+U.
  3. Search for enterpriseProfileHash using ctrl+F
  4. enterpriseProfileHash&quot;:&quot;XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX&quot;,&quot; copy the code between the double &quot;
5. Open the `headers.txt` file and paste in the values of `x-li-identity` from the above.
x-li-identity=XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX
User-Agent=Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/124.0.0.0 Safari/537.36 
$ llvd --help
$ llvd -c "course-slug" --cookies

Has to use cookies in conjection with headers

$ llvd -c "course-slug" --cookies --headers
$ llvd -c "course-slug" -r 720

Note: The default is set to 720.


    $ llvd -c "course-slug" --caption

or


    $ llvd -c "course-slug" -ca

To avoid rate limits because of downloading a lot of videos, use the following:

$ llvd -p "path-slug" -t 10,30

Igwaneza Bruce