Skip to content

motiwalam/UofT_CourseScript

 
 

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

71 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Changes in fork

This is a fork of Svision's original work. This fork allows you to disable automatic enrollment into courses (which is against UofT policy) and instead only send an email notification when space in a course is available. This is better than scraping TTB since that doesn't update in real time.

When you run the script, a dialog will pop up with a number of options. If you would like to retain the original behaviour of automatically enrolling into a course when there's available space, leave the "Email" field blank. Otherwise, supply a valid gmail address and password. Note that your regular gmail password will not work. You need to generate an app specific password. Instructions on how to do so are here.

Note. If you provide an email address to the script, it will not automatically enroll you! This DOES NOT necessarily mean you're not at risk of having your account suspended. Read the "About" page on Acorn carefully, and set a responsible interval in the script (i.e, don't make the script send requests every second).

UofT_CourseScript

ko-fi (<- points to Svision's original Ko-Fi link, show them some love!)

DISCLAIMER

Using the scirpt could result your Utorid Account be blocked by admin!!!
USE AT YOUR OWN RISK!
NOT INTENDED FOR ANY COMMERCIAL USE

Description

UofT Course Script is a fully free open-source script written in Python with Selenium (automating web applications) to help UofT students get popular courses securely.

Motivation

There are already some agents who charge students to 'help' them get popular courses, and students usually need to provide their username and password. This behavior is not only very unsecure to themselves but also unfair for other students.

Purpose

This script is intended solely to provide a more fair and secure environment for UofT students' course enrollment.

Usage

Installation

  1. Ensure Python is installed on your machine.

  2. Clone and navigate to the repository.

    cd path/to/UofT_CourseScript
  3. Install the necessary Python packages.

    pip3 install -r requirements.txt
  4. Run the script.

    python3 acornscript.py

First-Time Login

Step 1: Update DUO Authentication Settings

  • Log into Acorn using your UTORid and password.
  • When prompted by DUO Security, click on My Settings & Devices.
  • Press the 'Send Me a Push' button and approve the notification on your DUO-authorized mobile device.
  • For "When I log in:", select "Ask me to choose an authentication method" and click "Save".

Step 2: Generate Bypass Code

On your first run of the script, you'll encounter the DUO Security prompt.

Step 3: Approve DUO Mobile Request

After generating the bypass code, your DUO-authorized mobile device will receive a request. Approve this to continue. Note: This step is a one-time requirement.

Subsequent Runs

Once the initial setup is complete, the script will operate autonomously without needing DUO mobile approvals.

Future Work

  • Bypass reCAPTCHA (no longer needed)
  • Bypass DUO
  • Specify Course timeslot
  • Multiple Courses support
  • Support replacement courses (Drop course A if course B is available)
  • Better UI

About

UofT Course Script is a fully free open-source script written in Python with Selenium (automating web applications) to help UofT students get popular courses securely.

Resources

Contributing

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors

Languages

  • Python 100.0%