Python Selenium-Based Hour Logger for ASES
This tool is designed to streamline the process of booking work hours for employees using the ASES tool from ATOSS. It is optimized for websites in German.
- Time-Saving Automation: The tool automates the process of logging hours, aiming to save employees valuable time.
- Intelligent Booking: It excludes vacation days and weekends from the booking process, ensuring hours are only logged on available workdays.
- Error Prevention: The script avoids duplicating entries on days that have already been booked, minimizing errors in the logging process.
Run the script, taking note of the following considerations:
- Language Assumption: The tool assumes the website language is German. Adjust if necessary.
- Post-Script Verification: After running the script, it is essential for the employee to verify the accuracy of the logged hours, make any necessary adjustments, and manually click on the SAVE button (or activate the
AUTOSAVEsetting at your own risk).
By leveraging this tool, employees can enhance efficiency in the hours booking process while maintaining control over the final submission. Feel free to customize settings and provide feedback for further improvements.
To run the script, follow these steps:
-
Install the required dependencies:
pip3 install -r requirements.txt
-
Create your settings file as
settings.json. You can usesettings.json.exampleas a template. Adjust the following setting parameters:Key Description Default ASES_URLThe URL to access the ASES webpage of your employer your_ases_urlCOMPANY_EMAILYour corporate email address used for SSO login your_company_emailAUTOSAVEFor automatically saving your changes after the script run set this to true. Do this at your own riskfalseTIME_SLOTSDefine the time slots you want to log. These assume an 8-hour shift with a 1-hour lunch break each day. On Fridays only 7 hours are booked. You can adjust this at will see settings.json.examplefileBUFFER_TIMEThe time in seconds that passes between each browser action. We need a bit of time between actions for performance reasons. Only adjust if needed, for example, if your internet connection is slow 0.3FINAL_WAIT_IN_SECThe time in seconds that the browser window will remain open after completing all booking actions 60VERBOSESet the output of log messages for the developer mode to display more information during processing true -
Connect to your employer's VPN if necessary.
-
Run the script:
python3 hour_logger.py
-
The script will automatically fill in your corporate email and click Next on the SSO login page. You will then need to manually select your certificate and click OK.
-
If prompted with a "Stay signed in?" page, the script will automatically click Yes.
-
See the magic happen 🧙.
-
Ensure everything was logged correctly and manually click on the "SAVE" button (or activate the
AUTOSAVEsetting at your own risk).
Feel free to customize the settings to match your specific needs. If you encounter any issues, consider adjusting the waiting times or reaching out for support. Happy logging!
