首页 > 解决方案 > 谁能建议如何使用 ruby​​ selenium 截取整个网页的屏幕截图?

问题描述

我想使用 ruby​​ selenium 在 chrome 浏览器中捕获完整的网页截图。我正在使用 Rspec 测试框架。save_screenshot方法仅捕获可见区域的屏幕截图。我已经通过以下链接,

如何在 Ruby 中使用 selenium-webdriver/capybara 截取完整的浏览器页面及其元素?

但我不想使用窗口大小调整或 watir gem。有没有其他方法或宝石来实现相同的目标。

标签: rubyseleniumselenium-webdriverrspec

解决方案


1)您可以使用https://github.com/samnissen/watir-screenshot-stitch在哪里

  • 直接使用 geckodriver 新的全页截图功能(仅在 Firefox 上)。
  • 屏幕截图拼接,按视口大小向下分页给定 URL,捕获屏幕截图并连接它们。
  • 对页面使用捆绑的 html2canvas 脚本以从画布元素生成 png。

2)或为您的操作系统使用本机仪器 - https://paulhammond.org/webkit2png
代码如下所示
webkit2png https://stackoverflow.com/questions/60728482/can-anyone-suggest-how-to-take-screenshot-of-full-webpage-using-ruby-selenium

其中:
- 主命令 - webkit2png
- 链接页面 -all else


推荐阅读