Tee Time Automated Scheduling App

I built a tool to automate tee time booking for a golfer that struggled to get competitive tee times at their local course. To protect the anonymity of that player, I’ve changed the screenshots below to show courses in St. Andrews.

 

Tee Time Preferences

Although this project is straightforward enough to be a command-line program, I built a simple tkinter app in Python to provide them a GUI to use the script. Upon opening the app, they’re presented with the options for booking their tee time. They can select the course of their preference, the date to book the tee time, the time time they prefer, and a window around that time that they’d be willing to accept.

After clicking Book Tee Time, the preferences are passed into the base Python script. The script then waits until the time that day’s tee times open for booking (ex – 3 days before at 12am). At that time, the script opens a web driver using Selenium, navigates to their course’s website, and logs in.

It then opens the tee time booker and reads in all the available tee times that haven’t yet been booked. If the target tee time is available, the script proceeds through the booking process and reserves it. If the target time isn’t available, the script begins checking times on either side of that time until it either reaches the boundary the user specified or an available tee time to book.

After the script completes, it shows the user the result – either a positive or negative screen.

Languages

Python

Technology

Tkinter, Selenium