Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/shihabmridha/educative.io-downloader
Free Palestine. 📖 This tool is to download course from educative.io for offline usage. It uses your login credentials and download the course.
https://github.com/shihabmridha/educative.io-downloader
educativeio hacktoberfest nodejs pdf puppeteer scraping typescript
Last synced: 2 days ago
JSON representation
Free Palestine. 📖 This tool is to download course from educative.io for offline usage. It uses your login credentials and download the course.
- Host: GitHub
- URL: https://github.com/shihabmridha/educative.io-downloader
- Owner: shihabmridha
- Created: 2020-01-15T15:12:55.000Z (about 5 years ago)
- Default Branch: master
- Last Pushed: 2024-04-13T18:46:24.000Z (9 months ago)
- Last Synced: 2025-01-13T23:09:14.789Z (10 days ago)
- Topics: educativeio, hacktoberfest, nodejs, pdf, puppeteer, scraping, typescript
- Language: TypeScript
- Homepage:
- Size: 229 KB
- Stars: 219
- Watchers: 13
- Forks: 129
- Open Issues: 14
-
Metadata Files:
- Readme: README.md
- Funding: .github/FUNDING.yml
Awesome Lists containing this project
README
## [😍 SUPPORT](https://www.educative.io?aff=xkwW)
Help maintaning this project by showing your support. Use **[this affiliate link](https://www.educative.io?aff=xkwW)** for future purchase.## ✉️ Description
This tool is to download course from for later usage. It uses your login credentials and download the course.## 🧯 IMPORTANT
- A bunch of things are not working (image does not load sometimes, full code snippet not captured, not multi-language support etc).
- You need a subscription to use this.# Prerequisite
- Bun (v1.1.0)## 💡 Usage
- Clone the project and navigate into it.
- `bun install` to install dependencies.
- Create a file named `.env` and set configs (Email, Password, Course URL). See the `.env.example` for reference.
- `bun start` to start download.## ⚙️ CONFIG
Config file `.env` has the following properties.
- EMAIL: Your subscription email.
- PASSWORD: Your subscription password.
- COURSE_URL: The course you wanna download.
- SKIP_LOGIN: By default, before downloading a course we check if you are already logged in. If you are sure that you are already logged in then you can set this value to ___false___ to skip login check.
- MULTI_LANGUAGE: A lesson can contains code snippets in multiple programming languages. Set this to `true` to download snippets in all available language. Default is `false`.
- SAVE_AS: Available options: ___`pdf` and `html`___. Default is ___`html`___.
- HEADLESS: Browser mode. Default is `false`.
- DOWNLOAD_ALL: Download all available courses for the account> IMPORTANT: If you save as html it is actually gonna save as mhtml.
## 🛠 TROUBLESHOOT
**NAVIGATION TIMEOUT (Or, some other timeout)?**
- Open configuration.ts and increase the value of `_httpTimeout`. Default is 30000ms.**DOWNLOAD EMPTY PAGE?**
- Verify your login credentials and set `SKIP_LOGIN = true`.
- Make sure you are logged in.**FORCE LOGIN? LOGIN TO ANOTHER ACCOUNT?**
- Remove `data` directory. Chrome driver stores session/cookies etc in that directory.**SOMETHING IS WRONG?**
- Remove `data` directory. Chrome driver stores session/cookies etc in that directory.