在页面的实际时刻,如何在Python中使用Selenium进行屏幕截图?
我正在尝试使用我在Python的项目的Selenium进行屏幕截图,这是Selenium仅在加载页面时拍摄屏幕截图,并且我想在加载后的此刻将其拿走。这是我拥有的代码。
from selenium import webdriver
from webdriver_manager.chrome import ChromeDriverManager
from selenium.webdriver.chrome.options import Options
options = webdriver.ChromeOptions()
options.headless = True
driver = webdriver.Chrome(ChromeDriverManager().install(), options = options)
driver.maximize_window()
driver.get("http://127.0.0.1:8050/")
driver.refresh()
S = lambda X:driver.execute_script('return document.body.parentNode.scroll'+X)
driver.set_window_size(S('Width'), S('Height'))
driver.find_element_by_tag_name('body').screenshot('prueba.png')
pyautogui.screenshot()
I'm trying to take a screenshot with Selenium of my project in python, the thing is that Selenium only takes the screenshot when the page loads, and I would like to take it in the moment after it loads. Here's the code I have.
from selenium import webdriver
from webdriver_manager.chrome import ChromeDriverManager
from selenium.webdriver.chrome.options import Options
options = webdriver.ChromeOptions()
options.headless = True
driver = webdriver.Chrome(ChromeDriverManager().install(), options = options)
driver.maximize_window()
driver.get("http://127.0.0.1:8050/")
driver.refresh()
S = lambda X:driver.execute_script('return document.body.parentNode.scroll'+X)
driver.set_window_size(S('Width'), S('Height'))
driver.find_element_by_tag_name('body').screenshot('prueba.png')
pyautogui.screenshot()
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(1)
老实说,我会使用pyautogui,
您可以只使用
pyautogui.screenshot()
函数如果您需要特定的区域,则可以使用:
pyautogui.screenshot(region =(x1,y1,x2,y2))
这应该足够快地适合您所要求的。
如果需要更多信息,请单击在这里
I would honestly use PyAutoGui instead,
you could just use the
pyautogui.screenshot()
functionand if you need a specific region you could just use:
pyautogui.screenshot(region=(x1,y1, x2, y2))
this should be fast enough for what you asked.
if you need more info click here