AutoReg is an automated booking tool designed for the Inno Wing Machine room booking system. It streamlines the process of reserving equipment like the ProtoMAX abrasive waterjet and CNC milling machine by automating the form-filling and slot-selection process.
Note: The UI mode is currently in beta. Data retrieval may take some time, and minor bugs may occur.
Before running the bot, ensure you have the following installed:
- Python 3.10+
- Google Chrome (Latest version recommended)
- Git
-
Clone the repository:
git clone -b ui https://github.com/RyanPangSY/00_autoReg.git cd 00_autoReg -
Install dependencies: This project requires
selenium.pip install selenium
- Automated Booking: Automatically navigates the booking site, selects dates/times, and fills user details.
- Graphical User Interface (GUI): Easy-to-use calendar interface for selecting booking dates.
- Multi-Machine Support: Supports both Waterjet and CNC Milling machines.
- Human-like Interaction: Simulates human mouse movements and clicks to avoid bot detection.
- Headless Mode: Can run in the background without opening a visible browser window (default). (Currently Disabled: The bot forces a visible window for stability)
Create or edit the userInfo.txt file in the root directory. This file must contain your booking details in the following format:
Last Name: Doe
First Name: John
Phone Number: 12345678
Email: john.doe@example.com
Content: Project Description
To start the application with the GUI:
python main.pyNote: Headless mode is currently disabled to ensure better compatibility with the booking site's anti-bot measures. The browser window will always open.
You can customize the execution using the following flags:
-nor--non_headless: Run the browser in non-headless mode (visible window). (Currently enforced by default)python main.py -n
-dor--debug: Disable debug mode (default is enabled).python main.py -d
- Run the script. A calendar window will appear.
- Select Equipment: Check the box for the machine you want to book (Waterjet or CNC).
- Select Dates: Click on the dates you wish to book in the calendar.
- Start Booking: Click the "Start" button (or equivalent) to begin the automation process.
- Monitor: The bot will launch Chrome (if
-nis used) and perform the booking. Check the terminal for logs and status updates.
- Captcha/Bot Detection: The bot includes "human-like" mouse movements to mitigate this. If you see a "Something went wrong" popup, the bot is designed to try refreshing the page. The problem cannot be solved, try enter the non_headless
-nmode.
This tool is for educational and personal productivity purposes. Please use it responsibly and adhere to the booking policies of the facility.