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 …