Check a website programmatically for changes

What is it?

I wanted to check a website if a change was made.

Renting a simple space is hard in the Netherlands, as there are many sites that offer appartments / houses / garages, I wanted one.
After a while I found a company responsible for renting out storage spaces and garages. They told me that they work on a first-come-first-serve basis.
Okay I thought, I will then call you every day, or send you every day an email that I am intereseted, even though there wasn’t any offer published on their website.
For sure, they told me that if I would do that, I would not be offered anything anymore.

The solution?

Check if their website has a simple change, namely, a new offer regarding a storage space / garage.
Every minute, my app checks if their webpage has a change, I was lucky, their webpage is a simple html page with no fancy javascript async xhr calls (e.g. Angular / React). So I could just curl the webpage every minute and compare some specific html elements.
When there was any change on the webpage, I setup my phone with Pushbullet to receive push notifications that I can initiate via a web api request.

The complete code can be found on:

The result

The first day, nothing happened, it makes you wonder if the application works, so I was manually checking the webpage every day.
But then, when the app was running a couple of weeks, a push notification that there was a change on the webpage. You can imagine I called and emailed this company right away that I was interesed, and after a couple of days, the contract was signed to rent a garage.

Example of the pushbullet notifications