当前位置: 首页 > 面试题库 >

如何通过使用Selenium Webdriver(Python)在上下文菜单中选择“将图像另存为...”来保存图像

督冠玉
2023-03-14
问题内容

我正在尝试使用Selenium
WebDriver将特定图像保存到目录中。我一直在通过模拟右键单击img元素并选择“将图像另存为…”来实现此目的。使用以下代码,我可以打开上下文菜单,但是无法选择正确的选项。

browser = WebDriver(executable_path=CHROMEDRIVER_PATH)
browser.get(URL)
img = browser.find_element_by_tag_name('img')
ActionChains(browser).context_click(img).perform()

我也尝试过:

ActionChains(browser).context_click(img).send_keys(Keys.ARROW_DOWN).send_keys(Keys.ENTER).perform()

并使用快捷方式(“ v”似乎选择了“将图像另存为…”)

ActionChains(browser).context_click(img).send_keys('v').perform()

该图片没有直接的网址,因为它是一个验证码图片,每次点击都会随机重新加载。对于我来说,能够处理它的唯一方法是首先将其保存在磁盘上(使用“另存为…”)。保存整个页面不会保存该特定图像,因此也无法正常工作。

有任何想法吗?


问题答案:

如果您想使用的是验证码,那么最好还是截取屏幕截图。

driver.save_screenshot('screenshot.png')


 类似资料:
  • 问题内容: 我正在学习Swift,并且正在创建一个使用个人照片的应用程序,并将另一个放在上面。我现在有一个hacky解决方案,可以创建该区域的屏幕截图并保存。我需要在Swift中执行此操作 但是,这是可行的,现在不再可行。但是,这也不是最佳解决方案。 那么,伙计们,我该如何将个人图像中的图像作为叠加图像保存到相机胶卷中? 帮助将不胜感激!谢谢! 问题答案: 我建议阅读此线程。您所有的答案都在那里。

  • 问题内容: 我正在尝试通过Django Shell保存图像文件。 我的是: 一切都可以用admin和form进行,但是我想使用shell保存图像: 就像是 问题答案: 您最终将图像复制到中指定的目录中。 在这种情况下,该方法还将保存实例。可以在以下位置找到用于保存的文档:https://docs.djangoproject.com/en/dev/ref/files/file/

  • 我试图将字节保存为图像,但似乎不起作用。 以下是我尝试过的: 但我得到一个错误,说它不能写模式RGBA为JPEG,所以我猜这个方法只适用于PNG?如果是这样的话,有没有其他方法来处理jpeg图像?

  • 问题内容: 我有一个Numpy数组类型的矩阵。如何将其作为映像写入磁盘?任何格式都可以使用(png,jpeg,bmp …)。一个重要的约束是不存在PIL。 问题答案: 你可以使用PyPNG。这是一个纯Python(无依赖性)开源PNG编码器/解码器,它支持将NumPy数组写为图像。

  • 问题内容: 我没有收到任何错误,但是图像没有保存在文档中。 问题答案: 那里的问题是您正在检查文件夹是否不存在,但是应该检查文件是否存在。代码中的另一个问题是,您需要使用url.path而不是url.absoluteString。您还将使用“ png”文件扩展名保存jpeg图像。您应该使用“ jpg”。 编辑/更新: Swift 4.2或更高版本

  • 问题内容: 我刚刚使用Python图像库(PIL)进行了一些图像处理,这是我之前发现的用于执行图像的傅立叶变换的文章,但是我无法使用save函数。整个代码运行良好,但不会保存生成的图像: 我得到的错误如下: 如何使用Pythons PIL保存图像? 问题答案: 已解决有关文件扩展名的错误,您可以使用(不带点)或将输出名称与扩展名一起传递。现在要处理该错误,您需要在频域中适当地修改数据以将其保存为整