Как сделать Скриншот вебэлемента и сохранить?

Как на python selenium webdriver сделать скрин вебэлемента и сохранить в папке для дальнейшего сравнения изображений? Или, быть может, сравнить два изображения с двух страниц можно и без сохранения?

окружение - macOS Big Sur, Chrome Browser


Ответы (1 шт):

Автор решения: student_007

Это может выглядеть следующим образом:

from selenium import webdriver 
from time import sleep 
from PIL import Image

browser = webdriver.Chrome() 
browser.get("http://site_name.ru") 
sleep(1) 
featureElement = browser.find_element_by_id('elemId') 
location = featureElement .location 
size = featureElement .size 
browser.save_screenshot("fullPageScreenshot.png") 
x = location['x'] 
y = location['y'] 
w = x + size['width'] 
h = y + size['height'] 
fullImg = Image.open("fullPageScreenshot.png") 
cropImg = fullImg.crop(x, y, w, h) 
cropImg.save('cropImage.png') 
browser.quit()  
→ Ссылка