Raspberry pi.
Web server
Python
Easy peasy.
I hear a lot of people's concerns about automation, and it's valid to a point. But if done correctly I'd say it's more reliable. Those mechanical electrical timers fail, and fail often. I've bought expensive ones, digital ones, and even beefed some...