我正在尝试使用Python 3.6(在Windows 10上)的Selenium
保存一个网站的屏幕截图。当我使用get_screenshot_as_file()
或get_screenshot_as_png()
函数时,总会出现以下异常:
WebDriver异常:未知错误:无法从未知错误中获得自动化扩展:无法找到页面:chrome-扩展://aapnijgdinlhnhlmodcfapnahmbfebeb/_generated_background_page.html
(会话信息:chrome=60.0.3112.90)
(驱动程序信息:chromedriver=2.25.426923(0390b88869384d6eb0d5d09729679f934aab9eed),平台=Windows NT 6.1.7601 SP1 x86_64)
例如:
driver = webdriver.Chrome()
ref = 'http://google.com'
driver.get(ref)
driver.get_screenshot_as_png()
是否有解决方法,或其他方法将整个页面保存为图像?
我建议您使用save_screenshot()
方法,而不是get_screenshot_as_png()
方法save_screenshot()
方法使用一个参数作为屏幕截图的名称以及逻辑/绝对路径。下面的代码块导航到URL
,并将屏幕截图另存为temp。png
位于名为屏幕截图的子目录中,该子目录是在我的项目范围内创建的。
from selenium import webdriver
driver = webdriver.Chrome(r'C:\Utility\BrowserDrivers\chromedriver.exe')
ref = 'http://google.com'
driver.get(ref)
driver.save_screenshot('./Screenshots/temp.png')
driver.quit()
请注意,
Python文档
指定确实还存在一些方法(),如下所示:
get_screenshot_as_png()
:获取当前窗口的屏幕截图作为二进制数据。
get_screenshot_as_file(filename)
:获取当前窗口的屏幕截图。 get_screenshot_as_base64()
:获取当前窗口的屏幕截图,显示为Base64编码的字符串
您可以在如何使用Selenium WebDriver截图中找到详细的讨论
我正在使用MSpec使用硒网络驱动程序驱动一些自动化的用户界面测试。很像我在网上找到的例子。当测试失败时,我很难让它截图。 我在另一个问题上看到了一个评论,因为他们在示例Web规范中有一个。然而,在最新版本的Mspec(0.9.1)中似乎不存在。 在最新版本的mspec中,有没有其他方法可以做到这一点?最终,我将作为TeamCity工件生成HTML报告,并包含任何失败规范的屏幕截图。
更新XCode 8.2后,每次保存模拟器屏幕截图都会使其崩溃。即使我重置了内容和设置,仍然会崩溃。 我应该删除所有模拟器并再次安装它们吗? 更新: 8.2.1也有同样的问题 8.3只支持塞拉利昂 以下是坠机报告:
在Linux下有很多屏幕载图的工具,下面简单介绍一下: 在GNOME桌面中自带了一个屏幕截图工具,位于“动作”栏内。该工具功能很少,只能截取当前屏幕。 在GMIP中也可截图,在“文件”--“获取”菜单下有一个“屏幕抓图”选项可进行屏幕截图。它可截取任意图窗口的内容,并自动输入到GMIP中,我们可方便地进行处理和保存。 安装ImageMagick软件,它有一个工具叫import可用于屏幕截图。该工具
点击按钮进行截屏,可以将截屏图像保存到相册中。 作者说:听说会和苹果的策略有冲突,应用如果上架可能会被拒绝。这个估计是看人品了吧。经过测试发现,如果先弹出对话框,然后再截屏,似乎并不能把对话框也给保存下来。 [Code4App.com]
我正在尝试使用SeleniumWebDriver拍摄一个网站的截图,并将其保存在所需的位置。 下面的代码运行良好,但Selenium没有为我保存任何屏幕截图? 有人知道我如何让Selenium截图并保存到我的电脑吗?
我试图创建GIF动画演示我的应用程序。 为了创建我的应用程序的动画GIF,我需要获取屏幕截图。我知道我可以调用Form.paint(图形)-方法。但是,在拖放时,这不会正确地给我一个屏幕截图。在Codename One中获取屏幕截图的最佳方式是什么?