2010-11-30 101 views
1

我正在为一个网站编写文档database界面。是否可以编写一个脚本,该脚本在执行时采用网站的最新快照并将其保存为图像文件?我可以从命令行获取网站快照吗?

注意:我使用ruby,bash和python标签,因为这些是我们组中使用的语言(与R和FORTRAN一起使用;对于运动,我将设置100点奖励)如果任何人都可以发布FORTRAN解决方案)。

更新:作为@birryree笔记,previous question提供了答案。考虑到FORTRAN的报价只是为了运动,也许这是重复的?

+2

这可能帮助:http://stackoverflow.com/questions/3940098/is-it-technically-possible-to-take-a-screenshot-of-a-website-programmatically/3940169#3940169。但不知道Fortran! – birryree 2010-11-30 15:52:17

回答

3

WkHTMLtoPDF具有二进制文件也将网页转换为使用WebKit的渲染图像。

+0

类似的东西也已经在Python中与Qt和Webkit完成:http:/ /lateral.netmanagers.com.ar/weblog/posts/BB901.html – 2010-11-30 16:18:50

+0

优秀。易于安装和使用!感谢 – 2010-11-30 20:15:56

+0

程序和命令是'wkhtmltopdf'(不* 2pdf) – 2010-11-30 20:22:08

2

拍摄网页快照并将其保存为包含图像的HTML文件可以吗?因为这是微不足道的。

wget -m -p http://www.example.com/example.html

+1

为有用的代码+1,事实上,这让我更近一步,如果有像html2jpg – 2010-11-30 15:58:02

2

这可以用硒来完成。首先设置seleniumrc。然后使用任何语言API,使用captureScreenshot()方法。这是Java中的例子:

http://www.cloudtesting.com/blog/2009/06/24/capturing-screen-shots-of-browsers-with-selenium-and-cloud-testing-part-1/

注意硒需要一个显示器来呈现,但你也可以使用一个虚拟的帧缓冲喜欢的Xvfb在Linux上(可能是默认安装)

我还建议使用seleniumIDE firefox插件,因为它基本上可以用任何语言编写代码。

2

CutyCapt(命令行)做的很好。

CutyCapt --url=http://www.example.org --out=example.png 
相关问题