A simple script to find the depth and breadth electives available for you for subject registration
- This script uses the iit-kgp-erp-login library created by proffapt, and as such, there is some pre-requisite setup to be done
- Copy the template for
erpcreds.py
by runningcp erpcreds.py.template erpcreds.py
in the terminal - Fill
erpcreds.py
with the relevant credentials - If you want automatic OTP fetching: Generate
token.json
file following the instructions here
- Copy the template for
- Install dependencies by running
pip install -r requirements.txt
- Run the
gyfe.py
script following the format:
python3 gyfe.py <breadth/depth> --year <year-of-study> --session <session> --semester <semester>
- The first argument is either
breadth
ordepth
, depending on which electives you want to find --year
is your year of study (single digit), eg:3
--session
is in the formatYYYY-YYY
, eg:2023-2024
--semester
is eitherAUTUMN
orSPRING
Note
--session
has a default value of2023-2024
, and--semester
has a default value ofSPRING
- This must be changed every semester
- Optional flag(s):
--notp
: Don't use thetoken.json
file to login, instead enter OTP manually (easier setup)
- This will generate either
available_breadths.txt
oravailable_depths.txt
depending on the first argument
python3 gyfe.py depth --year 3 --session 2023-2024 --semester AUTUMN
# find depth electives for 3rd year, Autumn 2023-2024, with automatic OTP fetching for login
python3 gyfe.py depth --notp --year 3 --session 2023-2024 --semester AUTUMN
# find depth electives for 3rd year, Autumn 2023-2024, with manual OTP input for login
python3 gyfe.py breadth --year 3 --session 2023-2024 --semester AUTUMN
# find breadth electives for 3rd year, Autumn 2023-2024, with automatic OTP fetching for login
python3 gyfe.py breadth --notp --year 3 --session 2023-2024 --semester AUTUMN
# find breadth electives for 3rd year, Autumn 2023-2024, with manual OTP input for login
- Example
available-breadths.txt
:
- Example
available-depths.txt
:
- See how your timetable will look like with the electives you choose (OR somehow merge this with what-slot)
- Make it a web app for ease of use