当前位置: 首页 > 知识库问答 >
问题:

使用Selenium WebDriver拍摄完整浏览器窗口的屏幕截图

戴霖
2023-03-14

可以使用SeleniumWebDriver拍摄屏幕截图。

它会截取网页的整个区域,但浏览器窗口(boarder)不包括在此截图中。

有没有一种方法来采取与Selenium网络驱动程序截图,以便整个浏览器窗口被捕获?

我想看到所有的状态栏,选项卡和按钮。

这是可能的。NET,但它有可能会屏蔽其他内容(例如,浏览器被最小化),所以我想使用selenium

共有2个答案

封永嘉
2023-03-14

使用Selenium Webdriver无法获得整个web浏览器窗口的屏幕截图。但是,您仍然可以使用Ashot使其工作

我们如何做到这一点的文章可以在这里查看

希望这有助于:)。

经国安
2023-03-14

不,这是不可能使用WebDriver:

WebDriver提供了Take Screenshot命令来捕获顶级浏览上下文的初始视口,并提供了Take Element Screenshot命令,用于在滚动到视图中后对元素的边框的可见区域执行相同操作。

我不知道这对您有多重要,但您可以将浏览器配置为在固定位置以固定大小打开(通过WebDriver),拍摄全屏截图(Java代码;或者自动执行“打印屏幕”按钮),并使用您所知道的窗口边界裁剪全屏图像,以仅包括窗口。

如果您必须支持多个操作系统和浏览器,那么它可能并不完美,但您可以将其调整为非常精确。

 类似资料:
  • 问题内容: 使用Google的“报告错误”或“反馈工具”,您可以选择浏览器窗口的区域来创建屏幕截图,并在屏幕上提交有关错误的反馈。 他们是如何做到的?Google的JavaScript反馈API已从此处加载,它们对反馈模块的概述将演示屏幕截图功能。 问题答案: JavaScript可以读取DOM并使用来相当准确地表示该DOM 。我一直在研究将HTML转换为画布图像的脚本。今天决定将其实现为发送您所

  • 问题内容: 我想获得活动的“全页”屏幕截图。该视图包含一个RecyclerView,其中包含许多项。 我可以使用此功能拍摄当前视图的屏幕截图: 但是它仅包含我可以正常查看的项目(符合预期)。 截屏时,有什么方法可以使RecyclerView神奇地完整显示(一次显示所有项目)? 如果没有,我应该如何解决这个问题? 问题答案: 这是我的解决方案,当 所有项目的尺寸都相同 并且 只有一种类型的项目时 。

  • 我需要使用Sikuli的自动化,但我无法采取截图。问题是,当我点击“截屏”或“创建区域”时,IDE会被隐藏,但选择区域选项不会出现....

  • 问题内容: 我正在构建一个称为“ HTML测验”的东西。它完全在JavaScript上运行,非常酷。 最后,弹出一个结果框,显示“您的结果:”,它显示了他们花费了多少时间,他们得到了多少百分比以及他们从10个问题中得出了多少个问题。我想有一个按钮,上面写着“捕获结果”,并使其以某种方式截取屏幕截图或div,然后仅在页面上显示捕获的图像即可在其中单击鼠标右键并“将图像另存为”。 我真的很想这样做,以

  • 问题内容: 我正在尝试使用Linux上的python脚本拍摄当前窗口的屏幕截图。 我目前有一个脚本,可以截取整个屏幕的屏幕截图: 但是一个只想拥有选定的窗口。我知道问题出在grabWindow。但我不知道如何解决。 问题答案: 只需更换 与您要为其截屏的小部件一起使用。