An intelligent Python automation tool that downloads and organizes all course materials from Moodle-based e-learning platforms. Designed specifically for Sudan University of Science and Technology students, but adaptable to any Moodle installation.
# π Moodle Automated Material Downloader
An intelligent Python automation tool that downloads and organizes all course materials from Moodle-based e-learning platforms. Designed specifically for Sudan University of Science and Technology students, but adaptable to any Moodle installation.
## β¨ Features
- π€ **Fully Automated** - Logs in and navigates through courses automatically
- π **Smart Download Tracking** - Never downloads the same file twice
- ποΈ **Intelligent Organization** - Automatically sorts files by course, type, and category
- π₯ **Video Link Extraction** - Collects YouTube and browser video links for offline viewing
- βοΈ **Google Drive Support** - Downloads files from Google Drive links
- π **Google Docs Conversion** - Converts Google Docs/Slides/Sheets to downloadable formats
- πΎ **Persistent Tracking** - Remembers what you've downloaded across sessions
- π **Statistics** - Shows download progress and history
## π― What It Downloads
- β
PDF documents
- β
PowerPoint presentations (PPT, PPTX)
- β
Word documents (DOC, DOCX)
- β
ZIP archives
- β
Google Drive files
- β
Google Docs/Slides/Sheets (converted to PDF/PPTX/XLSX)
- β
Excel spreadsheets
- π YouTube and video links (saved to text file)
## π Prerequisites
- Python 3.7 or higher
- Google Chrome browser installed
- Active Moodle account (e.g., Sudan University account)
## π Installation
### 1. Clone the Repository
```bash
git clone
github.com
cd MoodleMaterialAuto-Downloader
```
### 2. Install Required Packages
```bash
pip install -r requirements.txt
```
### 3. Update Configuration File
Add your student id and your password in the configuration file named `config.py` in the project directory:
```python
# config.py
# Your Moodle login credentials
USER_NAME = "your_student_id"
PASSWORD = "your_password"
LOGIN_URL = "
el.sustech.edu"
COURSES_PAGE = "
el.sustech.edu"
```
## π¦ Project Structure
```
MoodleMat β¦