Skip to content

bag1s3k/light_autobaka

Repository files navigation

ligth_autobaka

light_autobaka is python util to automatically calculate average of each subject from Bakaláři

"light" cause it's powered by request and bs4 instead dynamically going through the page as a previous version

💡The main reason for this is that our school has disabled students from viewing their grade averages and grade predictions. I didn't wanted to calculate them manually like other monkeys.

Recommendation

  • use uv package manager
git clone https://github.com/bag1s3k/light_autobaka.git
cd light_autobaka
uv sync

Usage

Configuration

  • base_url - login url without /login
  • login_endpoint - login page
  • after_login_endpoint - url after you login
  • marks_endpoint - url endpoint to marks in chronological view (Grade > Interim Grading > Chronological button)

Chronological button

Local Run

uv run -m main

Github Actions + Pages

  1. Fork my repo
  2. Go to GitHub Pages settings and change source to GitHub Actions
  3. Go to GitHub Actions and anable them and activate deploy.yml workflow
  4. Go to the secrets of repo
  5. Create following variables:
    • USERNAME - your bakalari username

    • PASSWORD - your bakalari password

    • DATA - configuration of app (instead config.toml), it's json object

      {"base_url": "https://website.com", "login_endpoint": "login", "after_login_endpoint": "dashboard", "marks_endpoint": "next/prubzna.aspx?s=chrono"}

Output (default)

  • marks - raw marks data
  • result.txt - text output with calcuated averages
  • logs.log
  • index.html - only via CI environment

Future features maybe

  • absence prediction

About

Simple script that automatically calculates your average grades from Bakaláři and shows them on GitHub Pages. It also includes a predictor how a new grade would change your average.

Topics

Resources

License

Stars

3 stars

Watchers

1 watching

Forks

Contributors