Simple tool to download video and lecture materials from edx.org.
edx-dl is a simple tool to download videos and lecture materials from Open edX-based sites. It requires a Python interpreter (>= 2.7) and very few other dependencies. It is platform independent, and should work fine under Unix (Linux, BSDs etc.), Windows or Mac OS X.
We strongly recommend that, if you don’t already have a Python interpreter installed, that you install Python >= 3.4, if possible, since it has better security than Python 2.
To install edx-dl run:
pip install edx-dl
To install all the dependencies please do:
pip install -r requirements.txt
One of the most important dependencies of edx-dl is youtube-dl. The installation step listed above already pulls in the most recent version of youtube-dl for you.
Unfortunately, since many Open edX sites store their videos on Youtube and Youtube changes their layout from time to time, it may be necessary to upgrade your copy of youtube-dl. There are many ways to proceed here, but the simplest is to simply use:
pip install --upgrade youtube-dl
Once you have installed everything, to use edx-dl.py, let it discover the courses in which you are enrolled, by issuing:
edx-dl -u firstname.lastname@example.org --list-courses
From there, choose the course you are interested in, copy its URL and use it in the following command:
edx-dl -u email@example.com COURSE_URL
replacing COURSE_URL with the URL that you just copied in the first step. It should look something like: https://courses.edx.org/courses/edX/DemoX.1/2014/info
Your downloaded videos will be placed in a new directory called Downloaded, inside your current directory, but you can also choose another destination with the -o argument.
To see all available options and a brief description of what they do, simply execute:
Important Note: To use sites other than edx.org, you have to specify the site along with the -x option. For example, -x stanford, if the course that you want to get is hosted on Stanford’s site.
You can run this application via Docker if you want. Just install docker and run
docker run --rm -it \ -v "$(pwd)/edx/:/Downloaded" \ strm/edx-dl -u <USER> -p <PASSWORD>
Before reporting any issue please follow the steps below:
Verify that you are running the latest version of all the programs (both of edx-dl and of youtube-dl). Use the following command if in doubt:
pip install --upgrade edx-dl
If you get an error like "YouTube said: Please sign in to view this video.", then we can’t do much about it. You can try to pass your credentials to youtube-dl (see https://github.com/rg3/youtube-dl#authentication-options) with the use of edx-dl’s option --youtube-dl-options. If it doesn’t work, then you will have to tell edx-dl to ignore the download of that particular video with the option --ignore-errors.
If the problem persists, feel free to open an issue in our bugtracker, please fill the issue template with as much information as possible.
These are the current supported sites:
- University of Sydney
- France Université Numérique
- GW Online SEAS - George Washington University
- GW Online Open - George Washington University