利用 chromedriver 使用 Selenium Python 拍摄整页截图。


借助 chromedriver,我们可以使用 Python 中的 Selenium webdriver 拍摄整页截图。首先,我们要使用 **get_window_size** 方法获取原始的窗口大小。

然后在 JavaScript Executor 的帮助下,我们将获取在浏览器上打开的网页的完整高度和宽度。然后通过使用 **set_window_size** 方法将窗口大小设为该维度。

接下来,使用 **screenshot** 方法在 html 中的 body 标记内捕获全部内容的截图。该方法接受作为参数捕获的截图的路径。

示例

from selenium import webdriver
#set chromodriver.exe path
driver = webdriver.Chrome(executable_path="C:\chromedriver.exe")
driver.maximize_window()
#launch URL
driver.get("https://tutorialspoint.com/index.htm")
#get window size
s = driver.get_window_size()
#obtain browser height and width
w = driver.execute_script('return document.body.parentNode.scrollWidth')
h = driver.execute_script('return document.body.parentNode.scrollHeight')
#set to new window size
driver.set_window_size(w, h)
#obtain screenshot of page within body tag
driver.find_element_by_tag_name('body').screenshot("tutorialspoint.png")
driver.set_window_size(s['width'], s['height'])
driver.quit()

输出

在项目文件夹中创建了一个名为 **tutorialspoint.png** 的新文件。

右键单击它,然后选择 **属性**。弹出 **属性** 弹窗。复制位置域。

在浏览器中打开它。

更新时间:2021 年 1 月 30 日

4000+ 次浏览

启动您的 职业生涯

通过完成课程来获得认证

开始
广告