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

Selenium WebDrive没有将屏幕截图保存到目录

公冶森
2023-03-14

我正在尝试使用SeleniumWebDriver拍摄一个网站的截图,并将其保存在所需的位置。

下面的代码运行良好,但Selenium没有为我保存任何屏幕截图?

from selenium import webdriver
import time

links = ['https://duckduckgo.com','https://google.com','https://facebook.com','https://reddit.com'];


browser=webdriver.Chrome(executable_path='C:/Users/xxxx/Downloads/chromedriver.exe');
browser.maximize_window()

for x in links:


    browser.get(x)

    browser.save_screenshot("C:\\Users\\xxxxx\\Downloads\\website"+x+".png")
    print("website"+x+".png")

    time.sleep(2)
browser.close()

有人知道我如何让Selenium截图并保存到我的电脑吗?

共有1个答案

刁越
2023-03-14

您试图创建的文件名不正确。您可以使用以下内容,它应该可以工作:

import time
from selenium import webdriver

links = ['https://duckduckgo.com','https://google.com','https://facebook.com','https://reddit.com'];
browser=webdriver.Chrome(executable_path='C:/Users/xxxx/Downloads/chromedriver.exe');
browser.maximize_window()

for x in links:
    browser.get(x)
    print(browser.save_screenshot("C:\\Users\\xxxxx\\Downloads\\" + x.split('//')[1].split('.')[0] + "_screenshot.png"))
    print("C:\\Users\\xxxxx\\Downloads\\" + x.split('//')[1].split('.')[0] + "_screenshot.png")
    time.sleep(2)
browser.close()

# >> C:\\Users\\xxxxx\\Downloads\\duckduckgo_screenshot.png
# >> [User@Downloads ~] dir
# >> test.py duckduckgo_screenshot.png
 类似资料:
  • 问题内容: 如标题所述,很简单:您可以仅使用Java命令来截取屏幕截图并保存吗?或者,我是否需要使用特定于操作系统的程序来截取屏幕截图,然后将其从剪贴板中拿出来? 问题答案: 你实际上可以用来“创建一个包含从屏幕读取的像素的图像”。然后,你可以将该映像写入磁盘上的文件。 我只是尝试了一下,整个过程最终像这样:

  • 我试图在一个网页中给出的表格的屏幕截图。和我在代码中提供的相同元素xpath,但是Ashot代码正在捕获其他位置的屏幕截图。 我也尝试过其他截图代码, 但它给了我错误,我可以通过阅读这个链接来修复:https://github.com/pazone/ashot/issues/93,然后我使用下面的代码: 请帮助,因为此代码正在给我网页某些随机部分的屏幕截图。我也试图捕获其他元素,但我再次没有得到正

  • 在Linux下有很多屏幕载图的工具,下面简单介绍一下: 在GNOME桌面中自带了一个屏幕截图工具,位于“动作”栏内。该工具功能很少,只能截取当前屏幕。 在GMIP中也可截图,在“文件”--“获取”菜单下有一个“屏幕抓图”选项可进行屏幕截图。它可截取任意图窗口的内容,并自动输入到GMIP中,我们可方便地进行处理和保存。 安装ImageMagick软件,它有一个工具叫import可用于屏幕截图。该工具

  • 点击按钮进行截屏,可以将截屏图像保存到相册中。 作者说:听说会和苹果的策略有冲突,应用如果上架可能会被拒绝。这个估计是看人品了吧。经过测试发现,如果先弹出对话框,然后再截屏,似乎并不能把对话框也给保存下来。 [Code4App.com]

  • 更新XCode 8.2后,每次保存模拟器屏幕截图都会使其崩溃。即使我重置了内容和设置,仍然会崩溃。 我应该删除所有模拟器并再次安装它们吗? 更新: 8.2.1也有同样的问题 8.3只支持塞拉利昂 以下是坠机报告:

  • 我在我的项目中使用cucumber版本4。我在我的项目中使用以下依赖项。 使用上述依赖关系,我能够生成“cucumberjvm报告”。 我还用java编写了代码,用于将屏幕截图附加到报告中,我只在场景失败时拍摄屏幕截图。 我不确定是否遗漏了什么,但屏幕截图没有附加到报告中。cucumber生成的默认html报告正在显示屏幕截图。 谁能帮我一下吗。谢谢