anilabhadatta / educative.io_scraper

Educative.io Course Downloader developed using Python and Selenium. Refer Readme.md for setup instructions.
MIT License
170 stars 57 forks source link
automation chrome chromedriver educative-downloader educative-scraper educativeio-downloader html javascript python selenium web-scraping

Educative.io Scraper -- Educative.io Downloader

Description: 
This tool effortlessly scrapes and saves Educative.io courses for offline use enabling you to
learn at your own pace, even without an internet connection.

Contributions:
I wholeheartedly welcome contributions from individuals in any capacity to enhance this project.
Thank you for your support!

Disclaimer:
I want to clarify that I am not accountable for any inappropriate use of this scraper. 
I developed it solely for research purposes and take no responsibility for its misuse.

Repository Version: v3.8.0 (Recommended)
Master Branch: v3-master
1. Updates Information
-  SandPack code container support added
-  SingleFile injection script now uses single-file-cli logic instead of custom (v3.7.4) 
-  Injectes SingleFile through Local. Script faster by 10 seconds per topic, fixes Iframe (v3.7.3)
-  AutoFixUrl and AutoResume were added (v3.6.5+)
      * AutoFixUrl: The urls text file will be automatically updated based on the last topic URL from the Log File.
        If a manual edit was done on the text file then consider unchecking this option.
      * AutoResume (Recommended): Retries 3/4 times if there is any error occurs for a specific URL.
        If it still fails, then consider checking the log for more details. 
-  Undetected driver replaced by SeleniumBase (Bypass Cloudflare Turnstile) (v3.5.7+)
-  Run with --install arg again OR manually clean install (v3.5.7+)
-  Delete the old UserDataDir (v3.5.5+)
-  No existing Chrome browser should be running in the background (v3.4.2+)     
-  Redownload Chrome Binary and Chrome driver. (v3.4.2+)
-  If Undetected/SeleniumBase does not work then UNCHECK and use default webdriver. (v3.4.2+)
2. Send a mail notification status, Setup here: /src/Main/MailNotify.py

To view the downloaded courses, you can use the Educative-Viewer repository, which provides a better readability and user-friendly interface for accessing the downloaded course content.

Steps to use the scraper:

Git
Python 3.12 or more
OS: Win(x86/x64) - Mac(ARM64/x64) - Linux(ARM64/x64)
git clone https://github.com/anilabhadatta/educative.io_scraper.git
cd educative.io_scraper