Skip to content

A bot for automatically completing the KAIST safety course

Notifications You must be signed in to change notification settings

fedebotu/kaist-safety-course-bot

Repository files navigation

KAIST Safety Course Bot

A bot for automatically completing the KAIST safety course.

This bot makes viewing the (quite annoying) lab safety videos automatic, so you don't have to click many times on the videos that you need to see to complete the course. Also, considering that as of the time of writing the quiz can't be failed, the bot can additionally complete it too :D

Usage

First, choose you target courses in the KAIST Safety Website. Then:

  • For Windows/Mac users:
  1. We will be using Chrome and thus the chromedriver needs to be installed and moved in the right path (look it up on Google for installation help depending on your system).
  2. From the Release Page, download and run files that fit your operating system.
  3. Run the executable file
  4. Modify settings (have a look at the Configuration Settings). NOTE: you need to modify the driver_path with the path where chromedriver is saved
  5. Enjoy!
  • For Linux users (or developers): We will be using Selenium for automating the webpages. The first step is to install it along with the requirements:
pip install -r requirements.txt

then, run

python kaist-safety-course-bot.py

Configuration Settings

The bot will ask for a few configuration inputs:

  • answer_quiz: (default=true): if true, the bot will also answer the quiz for you
  • driver_path: (default=/usr/bin/chromedriver) your chromedriver path (look at Setup above)
  • mute_video (default=true) mute video
  • target_webpage (default='https://safety.kaist.ac.kr/main/main.do') target page
  • username (default='YOUR_USERNAME') your KAIST username
  • video_id (default=0) the video you want to watch signed with '정기' starting on the left

A config.yaml file will be saved so that you don't need to re-add these again. You should then see some webpages automatically popping up and doing stuff!

Releases

Important Note

The scope of these scripts is NOT to disregard lab safety, which is extremely important for researchers! The purpose is mainly to automate some boring stuff for fun - besides, don't you feel like a chad cheating the system?

On a serious note, most people just find it annoying having to listen to mandatory courses they are not interested in so they skip them manually. The exam can just be passed by failing the first time and completing the answers after knowing the results. So my question is: does this make sense? Why not just automate this tedious and - for most - time-wasting process?

PS: I'm not responsible for inappropriate use of this software of course ;) Feel free to contact me anytime though if you need help or have some feedback

Known Issues

When the quiz is passed (>=60 points scored) the bot gets stuck since it cannot find the "NEXT" button. In this case, check if the quiz has been passed and you can stop the script with Ctrl+C. This could be fixed by checking the page source for keywords related to the completion.

Contribute

Feel free to contribute and open Issue/PRs!

Here are some ideas of things to be done:

  • Create executable for Windows/Mac
  • Automate chromedriver installation
  • Automatic course selection (everything would be automatic this way)
  • ... Any additional feedback!

Additionally, you may try reusing some code for automating something else ^^


PS: the original scope was to save time, but I took much longer to create this bot rather than just clicking on the screen myself and remembering the answers kkk. Hopefully though, it will save other people's time!