Designed for IIT Bombay Moodle
This application serves the purpose of automating the process of downloading files from Moodle. It downloads all the files from the listed courses to the user's computer.
- Tkinter
- Mechanize
- pyCrypto
-
Linux and Mac - Download
MooDLD.py
andmoodle.ico
from Github Repository.
Windows - Extract the MooDLD.rar file before use. -
Install Dependencies
-
mechanize
On Ubuntu usesudo apt-get install python-mechanize
On Mac usesudo pip install mechanize
-
Tkinter
On Ubuntu usesudo apt-get install python-tk
On MacTkinter
is installed by default when you install python -
pyCrypto
Install using pip
pip install pycrypto
-
Run using
python MooDLD.py
-
The user has to login using LDAP ID/Password.
(Keep me logged in can be checked to avoid entering credentials repeatedly) -
On the first run, after logging in, the user must go to the Preferences page to select the courses to be downloaded.
-
Click "Save Settings" to save the settings for further use. These can be changed by visiting the Preferences page any time.
-
The user has to click on the DLD Files button to download files of selected courses from Moodle. Auto-Download feature is also available.
The application creates two .txt
files in the directory in which it is kept - Cred.txt
and Preferences.txt
.
These files are essential for the working of the application and must NOT be deleted! Deletion of above files will lead to loss in saved settings.
If a course has folders within it, MooDLD creates a new folder in the pre-set directory and downloads all the folder contents into this newly created folder, effectively, replicating the entire structure present on the website on your local system. Assignment handling has also been added so that the assignments which are uploaded are also downloaded.
Nihal Singh - nihal111
Arpan Banerjee - arpan98
Akash Trehan - CodeMaxx
Please feel free to contact us:
mailto:[email protected]
mailto:[email protected]
mailto:[email protected]
Any bugs found should be reported to the issue tracker.
You can send in Pull Requests to contribute to the project.