利用 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.tw/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** 的新檔案。
右鍵單擊它,然後選擇 **屬性**。彈出 **屬性** 彈窗。複製位置域。
在瀏覽器中開啟它。
廣告