I've never used a free host, even the shared ones usually have limits of 30s per script execution, which means your script can't require that amount of time, or that you need to break it down into edible bites.
Bandwidth I've never had an issue with.
If you remember NeoAcademy, half the code on there was automated, I worked with them on it, the AltadorPlot solver was mine, and so was the daily crossword thingy, which logged in and downloaded the puzzle, solved it and posted 1 click links, sometimes there were ones which couldn't be solved automatically, and those had to be entered into a form for moderators to answer.
---------- Post added at 12:23 AM ---------- Previous post was at 12:13 AM ----------
Well, PHP is designed to work with the internet, it's amazingly flexible, you can run it on pretty much windows, mac, and linux.
Since you can run PHP via console, you don't really need to worry about setting up Apache or anything.
You don't need to worry about having any runtimes installed, no Java, no dotNet, just have the PHP files on a usb and you can php.exe script.php anywhere. If you're out of town without all your dev tools and sources, you can edit the code directly, as there is no compiling required, just a text editor.
Sure I'd never run my full Altador Plot Bot on a shared host, but doing smaller tasks is no problem at all. As long as the execution time is less than 30 seconds and it's not run too often. Most of mine that are hosted would be set to run once a day, or once every few hours.
If you have a VPS you could use any length of script you like, set it up on a cron job and just let it do it's thing.
The only thing that really limits PHP is the lack of a native desktop UI.