如何在 Python 中的硒中截取相同窗口大小的屏幕截图?



我想使用Selenium以特定分辨率在无头模式下截取屏幕截图,但即使我设置了驱动程序窗口大小,屏幕截图也会以不同的分辨率拍摄:

from selenium import webdriver
from selenium.webdriver.chrome.options import Options
width = 1024
height = 768
chrome_options = Options()
chrome_options.add_argument('--no-sandbox')
chrome_options.add_argument('--headless')
driver = webdriver.Chrome(options=chrome_options)
driver.set_window_size(width, height)
driver.get('https://google.com')
print('Window size', driver.get_window_size())
# Window size {'width': 1024, 'height': 768}
driver.save_screenshot('screenshot.png')  # <--  Screenshot is saved at different resolution

如何以驱动程序窗口大小(本例中为 1024x768(的相同分辨率截取屏幕截图,而无需对保存的图像进行后期处理?

您可以添加window-size选项。

chrome_options.add_argument('window-size=1024x768')

使用下面的代码,您可以设置窗口大小。 *我的回答解释了更多:

chrome_options.add_argument('--window-size=1024,768')

或:

driver.set_window_size(1024, 768)

相关内容

  • 没有找到相关文章

最新更新