Skip to content

A CLI script to check/register courses from KFUPM Banner 9.

License

Notifications You must be signed in to change notification settings

Yokozuna59/auto-registrar

Auto Course Checker/Registrar

A CLI script to check/register courses from KFUPM Course Offering and Banner 9.

Prerequisites

You don't need to install any prerequisites, because install.sh script (for MacOS & Linux & WSL) and install.ps1 (for Windows) will install all the required dependencies for you (go to Installation), but you can install the dependencies manually if you want.

Minimal Manual Prerequisites

  1. Python3.7+ Note: Make sure you install the correct version. You can check the version of Python you have installed by running python --version or python3 --version in the command prompt or terminal.

    Linux
    Package Manager Distributions Command
    apk Alpine Linux sudo apk add --no-cache python3 py3-pip
    apt-get Debian, Ubuntu, Kali... etc sudo apt-get install python3 python3-pip
    dnf CentOS, Fedora, Oracle Linux... etc sudo dnf install python3 python3-pip
    pacman Arch Linux, Manjaro, Antergos... etc sudo pacman -S python python-pip
    yum CentOS, Fedora, Oracle Linux... etc sudo yum install python3 python3-pip
    zypper openSUSE, SUSE Linux... etc sudo zypper install python3 python3-pip
    MacOS
    Method Command
    Official Python Website https://www.python.org/downloads/macos/
    brew brew install python
    MacPorts sudo port install python310
    Windows
    • From the official Python website

      Note: Make sure to select this option while installing from official website:
      windows-python-path

    • Using MSYS2: pacman -S python3 python3-pip
    • Using WSL:
      Package Manager Distributions Command
      apk Alpine Linux sudo apk add --no-cache python3 py3-pip
      apt-get Debian, Ubuntu, Kali... etc sudo apt-get install python3 python3-pip
      dnf CentOS, Fedora, Oracle Linux... etc sudo dnf install python3 python3-pip
      pacman Arch Linux, Manjaro, Antergos... etc sudo pacman -S python python-pip
      yum CentOS, Fedora, Oracle Linux... etc sudo yum install python3 python3-pip
      zypper openSUSE, SUSE Linux... etc sudo zypper install python3 python3-pip
  2. Browser: Chrome or Firefox. Currently, the script only supports Chrome and Firefox. If you want to use other browsers, you could open an issue on GitHub.

  3. Browser Drivers Note: You have to create drivers folder and move the drivers to it then move the whole folder to the project.
    e.g., drivers/chromedriver.exe and drivers/geckodriver.exe.

    Chrome - (Download)

    Note: Make sure you install the correct version. You can find the version of your chrome browser by searching chrome://settings/help in your chrome browser.

    chrome-version
    Firefox - (Download)

    Note: Make sure you install the correct version. You can find the version of your firefox browser by searching about:preferences#general in your firefox browser and scroll down until you found Firefox Updates.

    firefox-version

    You can check what version works with your firefox driver through this website: https://firefox-source-docs.mozilla.org/testing/geckodriver/Support.html

Installation

Project Installation

Command-Line Interface (CLI)

Method Command
cmd curl.exe -SLfso auto-registrar.zip https://github.com/Yokozuna59/auto-registrar/archive/refs/heads/master.zip && compact /u auto-registrar.zip /Q && del auto-registrar.zip
curl curl -SLfso auto-registrar.zip https://github.com/Yokozuna59/auto-registrar/archive/refs/heads/master.zip && unzip auto-registrar.zip && rm auto-registrar.zip
git git clone https://github.com/Yokozuna59/auto-registrar.git
powershell Invoke-WebRequest -URI "https://github.com/Yokozuna59/auto-registrar/archive/refs/heads/master.zip" -OutFile "auto-registrar.zip" && Expand-Archive -Path "auto-registrar.zip" -DestinationPath (Get-Location).Path -Force && Remove-Item -Path "auto-registrar.zip" -Force
wget wget -O auto-registrar.zip https://github.com/Yokozuna59/auto-registrar/archive/refs/heads/master.zip --quiet && unzip auto-registrar.zip && rm auto-registrar.zip

Graphical User Interface (GUI)

click-code-button

click-download-button

Requirements Installation

Change directory to the auto-registrar folder:

cd auto-registrar
Platform Command
Linux chmod +x install.sh && ./install.sh
MacOS chmod +x install.sh && ./install.sh
WSL chmod +x install.sh && sed -i 's/\r$//' install.sh && ./install.sh
PowerShell Set-ExecutionPolicy -ExecutionPolicy Bypass && .\install.ps1

Run the Script

  • Open Command Prompt or Terminal in project directory

  • It would be better to use Virtual Environment.

    Platform Command
    Linux python3 -m venv .venv && source .venv/bin/activate
    MacOS python3 -m venv .venv && source .venv/bin/activate
    WSL python3 -m venv .venv && source .venv/bin/activate
    PowerShell python -m venv .venv && .venv/Scripts/activate.ps1
  • Install requirements

    pip install -r requirements.txt
    # or pip3 install -r requirements.txt
  • Run the script:

    python -m auto_registrar
    # or python3 -m auto_registrar
  • To deactivate the virtual environment:

    deactivate