如何获取完整网页的屏幕截图?
我已经使用了快门和截图应用程序很长时间来拍摄截图。但是他们只能拍摄与物理屏幕一样大的屏幕截图。
有时候我必须截取整个网页的截图 ,因为浏览器无法正确保存页面,或者我也希望包含弹出窗口。这种情况需要一个可以截取比物理屏幕更长的屏幕截图的软件。
有没有软件可以做到这一点?
请注意, 这个问题及其答案是关于网页保存应用程序。它们不会保存弹出窗口,这在我的情况下是必不可少的。我不需要转换器。我需要一个文字截图应用程序或任何可以保存弹出窗口的应用程序也是如此。
我使用Mozilla Firefox,因为它有非常好的插件。解决方案应该在Firefox本身工作。
在最新版本的Firefox上,不需要任何插件。 此function内置于浏览器中。
- 在Firefox中,使用Shift + F2打开浏览器中的CLI。 这是浏览器窗口底部的命令行界面,可以让你做各种很棒的东西。 (我发现
restart
选项特别有用。) - 键入
screenshot --fullpage
(这将自动完成,因此s
Tab--f
Tab将起作用;自动完成由光标前面的灰色文本显示)。
这会将屏幕截图保存为下载文件夹中的PNG文件。 默认情况下,文件名包含日期和时间。 如果您愿意,可以使用不同的文件名,只需将其传递给CLI: screenshot --fullpage my_name.png
。
这也适用于弹出窗口,但每个窗口都需要单独保存。 我知道无法将它们组合成一个屏幕截图。 (当然,您可以在GIMP或其他图像编辑工具中执行此操作。)
这里是您可以从终端使用的应用程序列表:
- wkhtmltopdf (来源)
wkhtmltopdf是一个命令行实用程序,它使用webkit呈现引擎将html转换为pdf。
sudo apt-get install wkhtmltopdf
- wkhtmltoimage (来源)
wkhtmltoimage实用程序将获取给定URL的屏幕截图,并将其另存为png图像。 它使用webkit呈现引擎。
下载: http : //code.google.com/p/wkhtmltopdf/downloads/list
用法:
要使用wkthmltoimage实用程序,只需从终端运行命令,给出URL和图像文件的名称。
$ ./wkhtmltoimage-amd64 http://www.google.com google.png
它将使用www.google.com的屏幕截图在主目录中创建google.png
其他选择:
wkhtmltoimage提供了许多自定义屏幕截图的选项。 一些例子如下:
质量 – 控制生成图像的质量/压缩。 默认值为94
$ ./wkhtmltoimage-amd64 --quality 50 http://www.google.com google.png
禁用图像
$ ./wkhtmltoimage-amd64 --no-images http://www.google.com google.png
禁用javascript
$ ./wkhtmltoimage-amd64 --disable-javascript http://www.google.com google.png
裁剪截图
$ ./wkhtmltoimage-amd64 --crop-h 300 --crop-w 300 --crop-x 0 --crop-y 0 http://www.google.com googl
- cutycapt (来源)
Cutycapt是一个实用程序,用于获取URL的屏幕截图,使用webkit呈现引擎并将其保存到图像文件。
安装
sudo apt-get install subversion libqt4-webkit libqt4-dev g++ cutycapt
用法要使用cutycapt,只需从终端运行命令,提供输出文件的URL和名称。
$ cutycapt --url=http://www.google.com/ --out=google.png
它将在主目录中创建google.png文件,该文件将包含www.google.com的屏幕截图
- khtml2png (来源)
khtml2png使用konqueror渲染引擎创建网页的屏幕截图。
下载
http://khtml2png.sourceforge.net/index.php?page=download
安装
要安装khtml2png,必须在系统上编译和构建程序。
sudo apt-get install kdelibs4-dev zlib1g-dev g++ cmake Extract the khtml2png archive. ./configure make sudo checkinstall (this will create a deb file and install it , so that it can easily uninstalled later)
用法要使用khtml2png,请从命令行运行程序,提供url和其他选项。
$ khtml2png2 --width 800 --height 600 http://www.google.com/ google.png
这将在主目录中创建一个带有www.google.com屏幕截图的google.png。
- PyWebShot (来源)
Pywebshot使用嵌入式mozilla的python绑定( http://www.mozilla.org/unix/gtk-embedding.html )
安装
sudo apt-get install python-gtkmozembed Download pywebshot from https://github.com/coderholic/PyWebShot
用法:
$ python pywebshot.py www.google.com -t 1024x768<br />
Loading www.google.com... saved as www.google.com.png
它应该在目录中创建一个www.google.com.png,其屏幕截图大小为1024 x 768。
在Firefox上,您可以使用名为Awsome Screenshot Capture plus的插件
如果您使用的是Chrome,则可以使用支持整页屏幕截图的屏幕截图扩展程序。 请注意,有时可能无法使用启用HTTPS的页面。
我试过Awsome截图:屏幕截图Annotate – 一个Chrome插件。 它对我来说效果很好。 捕获Pop-Ups(基于jQuery)[Not the Alerts],全页捕获并使用HTTPS! 伟大的工具。