728x90
라고 하였지만 회사에서 쏠쏠하게 사용하고 있다.
한 번에 2,000개 정도의 스크린샷을 찍어놓도록 하고 있어 Selenium 옵션에 --headless를 주어 Headless 모드로 스크린샷을 저장하고 있는데 driver에 maximize_window()를 해주어도 800x600 사이즈의 크기로 스크린샷이 찍히고 있었다.
작은 사이즈로 스크린샷이 저장되고 있어 일부 사이트에서 잘리는 부분이 나와 창 크기를 조절하기로 하였다.
1. driver option을 이용하여 창 크기(윈도우 사이즈) 조절하기
options = webdriver.ChromeOptions()
... 기타 옵션
options.add_argument('--headless')
options.add_argument('window-size={width},{height}')
driver = webdriver.Chrome({chromedriver path},options=options)
위처럼 driver의 option을 줄 때 add_argument('window-size={너비}, {높이}')를 설정해주면 원하는 크기의 사이즈를 열 수 있다.
2. driver.set_window_size()를 이용하여 창 크기(윈도우 사이즈) 조절하기
driver = webdriver.Chrome({chromedriver path},options=options)
driver.set_window_size({width}, {height})
다른 방법으로는 driver의 set_window_size()를 사용하여 창 크기를 변경할 수 있다.
사용 중 창 크기를 조절해야 하는 경우에는 이 방법을 이용하면 좋을 것 같다.
참고로 Headless 모드를 이용하면 좋은 점이 하나 있는데 창 크기를 1280x720 사이즈로 스크린샷을 저장한다고 하였을 때 Headless가 아닌 경우에는
탭들과 스크롤바의 사이즈도 창 크기에 들어가기 때문에 찍힌 스크린샷의 크기가 1280x720가 아닌 탭과 스크롤바 부분이 제외된 크기의 스크린샷이 찍히게 된다.
반면 Headless 모드를 사용하게 되면 지정한 크기의 스크린샷을 얻을 수 있다.
또한 크기의 제한이 없어
이런 극단적인 크기의 스크린샷도 찍을 수 있게 된다.
728x90
'Python' 카테고리의 다른 글
[Selenium] Selenium에서 크롬 확장 프로그램 사용하기 (feat. Google Chrome 설치된 확장 프로그램에서 crx 파일 추출하기) (0) | 2022.12.01 |
---|---|
[Python] Python Thread 종료 시키기 (0) | 2022.04.30 |
[Python] 폴더가 존재하지 않을 경우에만 폴더 만들기 (0) | 2022.03.31 |
[Python] __init__.py 뭐하는 파일인가요? (0) | 2022.01.10 |
[Python] Selenium을 이용한 스크린샷 저장하기 (0) | 2021.12.01 |