Package: async-udemy-dl
udemy-dlGoalsA python script using asyncio to speedup downloading for Chinese udemy users who cannot watch video online because of China GFWThanksThis project is based onudemy-dland adds asyncio support to it.FeaturesAsynchronously download course videos.Resume capability for a course video.Download specific chapter in a course (option:-c / --chapter).Download specific lecture in a chapter (option:-l / --lecture).Download chapter(s) by providing range in a course (option:--chapter-start, --chapter-end).Download lecture(s) by providing range in a chapter (option:--lecture-start, --lecture-end).Download course to user requested path (option:-o / --output).RequirementsPython>=3.7requestsaiohttpDownload async-udemy-dlYou can download the latest version of async-udemy-dl by cloning the GitHub repository.git clone https://github.com/Firkraag/async-udemy-dlPip installpip install async-udemy-dlAfter installation, pip will install a script namedasync-udemy-dlin your executable path, soasync-udemy-dlcan replacepython async-udemy-dl.pyin the Usage section.UsageThis project uses cookies to authenticate with, so you must specify cookie file on commandline with option-k cookies_file.
Please followExtracting Cookies / Request Headersto save udemy cookies to files before using this script.Download a coursepython async-udemy-dl.py -k COOKIES_FILE COURSE_URLDownload course to a specific locationpython async-udemy-dl.py -k COOKIES_FILE COURSE_URL -o "/path/to/directory/"Download specific chapter from a coursepython async-udemy-dl.py -k COOKIES_FILE COURSE_URL -c NUMBERDownload specific lecture from a chapterpython async-udemy-dl.py -k COOKIES_FILE COURSE_URL -c NUMBER -l NUMBERDownload lecture(s) range from a specific chapterpython async-udemy-dl.py COURSE_URL -k COOKIES_FILE -c NUMBER --lecture-start NUMBER --lecture-end NUMBERDownload chapter(s) range from a coursepython async-udemy-dl.py COURSE_URL -k COOKIES_FILE --chapter-start NUMBER --chapter-end NUMBERDownload specific lecture from chapter(s) rangepython async-udemy-dl.py COURSE_URL -k COOKIES_FILE --chapter-start NUMBER --chapter-end NUMBER --lecture NUMBERDownload lecture(s) range from chapter(s) rangepython async-udemy-dl.py COURSE_URL -k COOKIES_FILE --chapter-start NUMBER --chapter-end NUMBER --lecture-start NUMBER --lecture-end NUMBERExtracting Cookies / Request HeadersLogin to your udemy account via browser.Once you are logged in right click on page the search for option calledInspect Elementand click on that.Under that look forNetwork Taband click on that. Under thatNetwork Tabclick on Requests typeXHR.Now click onMy Coursesin the Udemy navbar and refresh the page you will see some requests underNetwork Tab.Right click on request links toudemy.com/api-2.0/. Simply copyRequest Headersand save to text file.The above guide is forFirefoxusers.ChromeUsers can followguide by @lamlephamngoc.Done run the async-udemy-dl against that text file it will start downloading the course.Advanced UsageAuthor: Firkraag (Firkraag)

usage: async-udemy-dl.py [-h] [-v] -k cookie_file [-d] [-o] [-c] [-l]
                   [--chapter-start] [--chapter-end] [--lecture-start]
                   [--lecture-end] course

A cross-platform python based utility to download courses from udemy for
personal offline use.

positional arguments:
  course            Udemy course.

General:
  -h, --help        Shows the help.
  -v, --version     Shows the version.

Authentication:
  -k , --cookies cookies_file    Cookies to authenticate with.

Advance:
  -d, --debug       output debug info to screen
  -o , --output     Download to specific directory, if not specified, download to current directory.
  -c , --chapter    Download specific chapter from course.
  -l , --lecture    Download specific lecture from chapter(s).
  --chapter-start   Download from specific position within course.
  --chapter-end     Download till specific position within course.
  --lecture-start   Download from specific position within chapter(s).
  --lecture-end     Download till specific position within chapter(s).

Example:
  python async-udemy-dl.py  COURSE_URL -k cookies.txt