본문 바로가기
파이썬

파이썬 Python에서 Selenium WebDriver로 부분 스크린 샷을 찍는 방법은 무엇입니까?

by º기록 2021. 1. 25.
반응형


Python에 유사한 솔루션이 있습니까?

 

해결 방법

 

Selenium 외에이 예제에는 PIL Imaging 라이브러리도 필요합니다. 때로는 이것은 표준 라이브러리 중 하나로 삽입되고 때로는 그렇지 않은 경우도 있지만,없는 경우 pip install Pillow 로 설치할 수 있습니다.

from selenium import webdriver
from PIL import Image
from io import BytesIO

fox = webdriver.Firefox()
fox.get('http://stackoverflow.com/')

# now that we have the preliminary stuff out of the way time to get that image :D
element = fox.find_element_by_id('hlogo') # find part of the page you want image of
location = element.location
size = element.size
png = fox.get_screenshot_as_png() # saves screenshot of entire page
fox.quit()

im = Image.open(BytesIO(png)) # uses PIL library to open image in memory

left = location['x']
top = location['y']
right = location['x'] + size['width']
bottom = location['y'] + size['height']


im = im.crop((left, top, right, bottom)) # defines crop points
im.save('screenshot.png') # saves new cropped image

마지막으로 출력은 ... Stackoverflow 로고입니다 !!!

여기에 이미지 설명 입력

물론 이것은 정적 이미지를 잡는 것에는 지나친 일이지만 Javascript가 필요한 것을 잡으려면 실행 가능한 솔루션이 될 수 있습니다.

 

참조 페이지 https://stackoverflow.com/questions/15018372

 

 

반응형

댓글