在命令行上使用 Firefox进行整页截图

我在 VPS 中的 Xvfb 上运行 Firefox。我想要做的是对页面进行整页截图。

我在 VPS 中的 Xvfb 上运行 Firefox。我想要做的是对页面进行整页截图。

我可以使用将 Firefox 重定向到特定页面

firefox http://google.com

并使用 ImageMagick 拍摄屏幕截图(在 X 内)

import root -window output.jpg

问题是,大多数页面需要滚动,我不能事先知道高度。

另一种方法是选择一个非常大的高度(如 4000px),然后处理图像并删除无用的部分。

我发现了许多 Firefox 加载项,但我正在寻找一个可以使用 Shell 命令行编程的解决方案。

编辑:我结束了写我自己的FireFox extension这样做。

495

Developer Toolbar GCLI and Shift+F2 shortcut were removed in Firefox version 60。要在 60 或更高版本中截取屏幕截图:

Ctrl+Shift+K打开开发者控制台(在 macOS 上,Option+Command+K

type:screenshotor:screenshot--fullpage Find out more regarding screenshots and other features

对于 Firefox 版本 & lt;60:

Shift+F2或转到工具 & gt;Web 开发人员 & gt;开发人员工具栏以打开命令行。写:

screenshot

然后按Enter以拍摄屏幕截图。

为了完全回答这个问题,你甚至可以保存整个页面,而不仅仅是它的可见部分:

screenshot --fullpage

要将屏幕截图复制到剪贴板,请使用--clipboard选项:

screenshot --clipboard --fullpage

Firefox 18改变了参数传递给命令的方式,您必须在它们之前添加“--”。

Firefox 88.0有一种拍摄屏幕截图的新方法。如果在about:config中将extensions.screenshots.disabled设置为false,则可以右键单击屏幕并选择拍摄屏幕截图。还可以通过自定义将屏幕截图菜单按钮添加到菜单中。

您可以找到一些文档和命令的完整列表here

PS。默认情况下,屏幕截图保存在downloads目录中。

142

更新 2018-07-23

正如刚刚在评论中指出的那样,这个问题是关于从命令行获取屏幕截图。对不起,我刚刚读了一遍。所以这里是正确的答案:

从 Firefox 57 开始,您可以在无头模式下创建屏幕截图,如下所示:

firefox -screenshot https://developer.mozilla.com

阅读更多documentation

更新 2017-06-15

从 Firefox 55 开始,有Firefox Screenshots作为更灵活的替代方案。从 Firefox 57 屏幕截图也可以捕获整个页面。

原始答案

由于 Firefox 32 在开发人员工具(F12)中也有一个full page screenshot on。如果未启用,请转到开发人员工具设置(齿轮按钮),然后在“可用工具箱按钮”部分中选择“全页截图”。

developer tools source: developer.mozilla.org

默认情况下,屏幕截图保存在下载目录中。这类似于工具栏中的screenshot --fullpage

9

我最终编码一个自定决方案(Firefox 扩展),这样做。我认为当我开发它时,enreas 中提到的命令行不存在。

Firefox 扩展是CmdShots。如果您需要更好地控制截图过程(或者您想进行一些 HTML / JS 修改和图像处理),这是一个不错的选择。

你可以使用它,也可以滥用它,我决定让它保持无牌,这样你就可以随心所欲地玩它。

8

我认为您正在寻找的是一个实用程序,它使您可以将在浏览器中打开的完整页面保存到 png 文件中。

安装扩展后,您只需要键入命令:

firefox -print http://google.com -printfile ~/foo.png

本站系公益性非盈利分享网址,本文来自用户投稿,不代表码文网立场,如若转载,请注明出处

(903)
如何使用SeleniumPython提取 NewEgg上的图形卡发布的所有标题文本
上一篇
如何使用SeleniumPython提取 NewEgg上的图形卡发布的所有标题文本
下一篇

相关推荐

发表评论

登录 后才能评论

评论列表(88条)