我在Windows 10上使用selenium和Firefox geckodriver进行截屏
delay = 5
browser = webdriver.Firefox(executable_path="C:\\Users\\A0048436\\Downloads\\geckodriver.exe")
browser.set_window_size(1920, 1080)
browser.get('file://' + html_file)
time.sleep(delay)
browser.save_screenshot(html_file + '.png')
browser.quit()
因此我预计图像分辨率将是窗口大小,但不是 - 它更低。如何设置屏幕截图分辨率?
答案 0 :(得分:3)
方法set_window_size
设置窗口的大小,包括边框,菜单栏和标签。
要设置视口的大小,首先需要计算外窗口和内窗口之间的差异。然后将此差异添加到所需的分辨率:
dx, dy = browser.execute_script("var w=window; return [w.outerWidth - w.innerWidth, w.outerHeight - w.innerHeight];")
browser.set_window_size(1920 + dx, 1080 + dy)