I needed something like this for one of the projects I'm doing and I found this program to help me out. Unfortunately it looks as if it only works with Windows at the moment.
I'm still trying to find a web based one with an API. Maybe if I have the time I can try to create one. Not sure how I would approach it since I've never really done image manipulation.
I've been using websnapr.com for the web app I'm working on. It seems to be the best web-based solution around, but it does have some drawbacks, like thumbnails for new sites take some time after they've been requested before they're available. The "unavailable" thumbnail that they show in the mean time is a bit obtrusive too.
I think I'll be looking through the links in this thread to see if any of them are a better alternative. There's definitely room for a web service to do a better job at this, and it probably wouldn't be too hard with these utilities in the backend. It could even let you choose which one to render with...
I was looking for something like this just last week.
This is a web service that will produce web page images, but it's useless to me because they don't specify which browser's rendering they're capturing: http://webshots.velocitysc.com/
I'm still trying to find a web based one with an API. Maybe if I have the time I can try to create one. Not sure how I would approach it since I've never really done image manipulation.