是否有任何解决方案可以使用 chromedriver 在 selenium Python 和无头浏览器中捕获具有不同 URL 的屏幕截图?

问题描述

我已尝试使用此解决方案来使用此解决方案捕获完整屏幕截图。 Take screenshot of full page with Selenium Python with chromedriver

使用单个屏幕截图效果很好,但是当我尝试将其循环播放时,它无法正常工作。

我面临的问题是它没有返回确切高度。我使用的是无头浏览器

driver.get(URL1)
S = lambda X: driver.execute_script('return document.body.parentNode.scroll'+X)
driver.set_window_size(S('Width'),int(float(S('Height')) + 10)) # May need manual adjustment
print(S('Width'),int(float(S('Height')) + 10))
driver.find_element_by_tag_name('body').screenshot('web_screenshot.png')

driver.get(URL2)
S = lambda X: driver.execute_script('return document.body.parentNode.scroll'+X)
driver.set_window_size(S('Width'),int(float(S('Height')) + 10))
driver.find_element_by_tag_name('body').screenshot('web_screenshot.png')

这是我正在测试的代码在这里面临的问题是,如果 URL1 高度大于 URL2,那么它给出的 URL2 的高度将大于 URL1。我认为这是没有意义的。我想同时捕获长屏幕和小屏幕截图。

解决方法

暂无找到可以解决该程序问题的有效方法,小编努力寻找整理中!

如果你已经找到好的解决方法,欢迎将解决方案带上本链接一起发送给小编。

小编邮箱:dio#foxmail.com (将#修改为@)