I find myself taking screenshots of websites all the time. Pages that I find visually interesting, because I've had far too many experiences where I went back and it looks like a completely different website. Or sometimes to remember information that is shown on a website for only a short period of time, like holiday layouts and fun coming soon pages. And I even take screenshots of my own webpages so I can look back at it later.
I know there's archive.org, but they take too long to archive content when all I want is a screenshot of the recent past of a webpage.
So I created SnapRobot as a side project. It was built in less than a day.
You feed it a URL and leave it. SnapRobot monitors the page, taking screenshots whenever changes occur. You can come back whenever you want and relive pages of the past. :)
In the example, you can see how the top Hacker News items evolve over the course of a day.
Currently, any HTML change triggers a new screenshot so it works better for websites that don't dynamically generate different code on every request. No query strings for now.
If you want to build your own, you could use Watir or even shell scripting to put together a sequence that opens a browser, takes a screenshot, closes a browser, and crops the screenshot, etc.
At Sauce Labs, we use a combination of the Selenium API for taking screenshots and Castro for recording movies of browser pages. Things get fun when you can click button, type text into fields, or execute arbitrary JavaScript between screenshots.
Looks neat. You might need a threshold in changes made. Seems like most websites have small irrelevant things that change on every visit. Like number of comments on techcrunch, or a timestamp in the code, resulting in a screenshot on every try.
I assumed the large numbers were dates, when they are actually times (13 = 1 pm, not the 13th). I'd either use 'am/pm' or add ':00' to each time to make this more apparent. Large numbers inside boxes is a similar pattern to calendars, which is why this can be confusing.
This would be incredibly useful for publicly traded corps to help prove that they made information public at a specific time (i.e., disclosure requirements were met).
I am disappointed that entering http://snaprobot.com only gives an error page. I was hoping for an infinitely recursive snapshot.
Edit: tried it again, and I DID get a snapshot of snaprobot displaying the BBC site, which is its default page. I guess the error was an actual error (it was an indexing disallowed error). Kudos!
19 comments
[ 3.6 ms ] story [ 34.0 ms ] threadI know there's archive.org, but they take too long to archive content when all I want is a screenshot of the recent past of a webpage.
So I created SnapRobot as a side project. It was built in less than a day.
You feed it a URL and leave it. SnapRobot monitors the page, taking screenshots whenever changes occur. You can come back whenever you want and relive pages of the past. :)
In the example, you can see how the top Hacker News items evolve over the course of a day.
Currently, any HTML change triggers a new screenshot so it works better for websites that don't dynamically generate different code on every request. No query strings for now.
python webkit2png.py -x -o hn.png http://news.ycombinator.com/
http://www.alexezell.com/code/webkit2png.txt
There's also an OS X version available: https://github.com/paulhammond/webkit2png/
I'm using the WebThumb API right now: http://webthumb.bluga.net/home
If you want to build your own, you could use Watir or even shell scripting to put together a sequence that opens a browser, takes a screenshot, closes a browser, and crops the screenshot, etc.
The app passes an extra parameter for cache busting and Google doesn't like it. It will be fixed in an update.
Edit: tried it again, and I DID get a snapshot of snaprobot displaying the BBC site, which is its default page. I guess the error was an actual error (it was an indexing disallowed error). Kudos!