Do you think is technically possible to take a screeshot of a website programmatically?
I would like to craft a scheduled Python task that crawls a list of websites taking an homepage screenshot of them.
Do you think is technically feasible or do you know third party website that offer a service like that (Input: url --> Output: screenshot
) ?
Any suggestion?
You can check webkit2png (only OS X) and khtml2png (Linux) and this post (use PyQt and WebKit).
How about pyGTK
It's certainly technically possible.
You would probably have to render the HTML directly onto an image file (or more likely, onto an in-memory bitmap that's written to an image file once completed).
I don't know any libraries to do this for you (apart from a modified WebKit, perhaps)... but there's certainly websites that do this.
Of course, this is a bit more involved than just opening the page in a browser on a machine and taking a screenshot programatically, but the result would likely be better if you don't care about the result from a specific browser.
Are you looking for functionality like what browsershots.org offers?
Source code available at Google Code/Browsershots.
I used selenium and PhantomJS.
be sure to place the PhantomJS executable in your $PATH.