🧠Return to Personal Projects

Problem

During the peak of Covid, to attend a catholic mass, every individual had to book their own slot. My church has the highest number of attendees. In order to be able to have a chance to attend weekend mass, everyone had to book a slot at a stipulated time for their parish. Since there were so many people trying to attend mass, it was fastest finger first. In the end, not everyone in my family had a chance to go to church. The elderly in my family especially never got a chance to go because they were never quick enough. We helped them to book but we would then not get a chance for mass. How can everyone have a chance to get to attend mass?

Solution

I reviewed the website and how the operations worked. I notice that when a mass slot was available the button would change from a red border to a green border. I recognised that many people would book the slots first and later cancel. These slots were up for grabs but in order to capitalize on it, we had to monitor the site constantly.

I picked up web scraping and python for this solution. The program would refresh the page every few minutes and monitor particular mass slots button for their availability. When a mass changed to a green border (signalling availability) the second part of the script would kick in.

The second part of the script would click the available mass slot and register for the slot. I then got a friend to make a basic phone app so that I can utilize it for the third part of the script.

When the slot is booked, it would push a notification to my phone using the phone app, notifying me that a successful slot has been booked.

https://github.com/verghese96/CatholicMassBookingForV

Summary

Limitation

I could only work one account at a time. The second part of the script was also fixed. The mouse would click and look for specific information. If the booking process changed (adding a new step) or the website layout changed, the booking of a slot would not work. The script would fail and notify me on my phone.

The other limitation was that the script had to run 24/7. Which meant, my computer had to be on for the entire time. When it was shut down or slept for the day, the script would stop searching for the available slots.

Reflection

If I had to do this again how would it be different? I would utilize a telegram bot instead. Users could perhaps use telegram bots to add markers to the masses they wanted to attend. The bot will then notify you when those slots become available. The user would then manually go to the site and select the mass.

🧠Return to Personal Projects