met-downloader v1.1.3
A puppeteer (headless browser) script that downloads the material of any course hosted on the MET (GUC) website, and organizes the materials into their respective folders accordingly.
Showcase
Usage
npx (Recommended)
If you have npx installed, you can avoid installing the tool on your system. However chromium binaries will be downloaded every time you run the application, so you can use the below setup to avoid doing so.
export CHROMIUM_EXECUTABLE_PATH=/usr/bin/google-chrome
export PUPPETEER_SKIP_CHROMIUM_DOWNLOAD=true
npx met-downloaderWhen PUPPETEER_SKIP_CHROMIUM_DOWNLOAD is set to true, puppeteer skips downloading the binaries for chromium, however you must provide an executable path to a chromium binary (which is done via the CHROMIUM_EXECUTABLE_PATH environment variable). In the above example, it's assumed the default path to google-chrome, on an Ubuntu machine.
Installing globally
If you don't have npx installed, or you would like to install the CLI tool so that you can use it anytime you can install it globally by running
npm i met-downloader -gNote that this will fetch the chromium binaries, you can skip them as described above, but you will have to provide the executable chromium path as an environment every time you run the command (you can obviously configure this through your bash to avoid exporting the same environment repeatedly) Once the installation is done, simply run
met-downloaderFrom the source code
Clone the repo
git clone git@github.com:AbdullahKady/met-downloader.gitAfter cloning, install the dependencies by running
npm iFinally run the application normally, and follow the interactive input
npm start