Skip to main content

Python API for UCI WebReg

Project description

UCI WebReg Python API

Everything you need to create a UCI WebReg Bot within 5 minutes!

Introduction

Designed for UC Irvine WebReg, WebReg API is a Python API you need to create your own enrollment bot script within less than 10 lines of code!

Unlike other bots, it is deeply integrated with WebReg and takes advantage of Selenium technology which makes it robust, fast, and secure.

Highlights

  • Secure. The top priority is that you'll never get banned because of using this. The bot simulates that a real person and a real browser would do so any kind of behavioral detection will not be able to distinguish you from other people.
  • Robust. The API keeps track of the WebReg login status. So it won't crash due to exceptions like maintenance or unopened enrollment window.
  • Versatile. The API helps you not only enroll in classes, but also check study lists, waitlists, and so on.

Prerequisite

  • Chrome browser and Python 3.6+

Working Functions

  • Add/Change/Drop courses
  • Add/Drop wait list courses
  • See open sections of a course
  • Fetch study list and wait list
  • Auto-logout

Deployment

  • Install Selenium
pip3 install selenium
  • Download WebDriver and make it executable

https://sites.google.com/a/chromium.org/chromedriver/downloads

chmod +x ./webdriver
  • Make it yours
git clone https://github.com/maao666/UCI_WebReg_API.git
  • Example
form WebReg import WebReg
from pprint import pprint # Not required

# Replace username and password with yours
wr = WebReg().login('username', 'password')

# Add a course
wr.add_course('16570')

# Change to Pass/No Pass
wr.change_course('16570', letter_grade=False)

# Drop a course
wr.drop_course('16570')

# See available sections
pprint(wr.list_open_sections('16570'))

# Get study list
pprint(wr.get_study_list())

#It automatically logs out so no logout operation required

We humbly ask you for a star if this helps you.

To UCI Registrar: The technology you use for WebReg is so lame! I can't believe you use a Shell script for load-balancing and redirecting. Such a shame on you and OIT for creating such a terrible user experience! I'm confident that you are not smart enough to catch my bot till I graduate. We'll see.

Project details


Release history Release notifications

This version

0.2

Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Files for webreg, version 0.2
Filename, size File type Python version Upload date Hashes
Filename, size webreg-0.2-py3-none-any.whl (7.8 kB) File type Wheel Python version py3 Upload date Hashes View hashes
Filename, size webreg-0.2.tar.gz (5.9 kB) File type Source Python version None Upload date Hashes View hashes

Supported by

Elastic Elastic Search Pingdom Pingdom Monitoring Google Google BigQuery Sentry Sentry Error logging AWS AWS Cloud computing DataDog DataDog Monitoring Fastly Fastly CDN DigiCert DigiCert EV certificate StatusPage StatusPage Status page