Selenium 크롬 안 띄우고 background 사용 방법

Selenium 크롬 브라우저를 눈에 보이지 않도록 background에서 실행되게 하는 방법을 알아보도록 하겠습니다.

Selenium 크롬 브라우저 안 띄우는 옵션

Options 인스턴스 객체에 add_argument로 –headless=new값을 지정해 주면 Selenium을 이용해서 크롬 브라우저를 띄우지 않고 background에서 작동하게 할 수 있습니다.

from selenium import webdriver
from selenium.webdriver.chrome.options import Options

options = Options()
options.add_argument("--headless=new")
driver = webdriver.Chrome(options=options)
driver.get("https://naver.com")
print(driver.page_source)
Python

위의 코드를 실행하면 브라우저가 실행되지 않고 네이버 홈페이지의 페이지 소스를 가져오는 것을 확인할 수 있습니다.

그림 1. Selenium 크롬 안 띄우고 소스 코드 읽어오기
그림 1. Selenium에서 크롬 안 띄우고 소스 코드 읽어오기

크롬 버전에 따른 차이

Diego Molina이 2023년 1월 29일에 밝힌 바에 의하면 전통적으로는 –headless 옵션을 이용했었는데, 크롬 버전 96부터 108까지–headless=chrome, 109 이후에는 –headless=new 값을 이용하여 확장프로그램 실행까지 모든 기능을 사용할 수 있게 해 준다고 합니다. 따라서 최신 버전을 사용하고 있다면 –headless=new 값을 이용하고, 그 외에는 크롬 버전에 따라 옵션을 사용하면 되겠습니다.

관련 자료

셀레니움에서 제공하는 블로그 문서 Headless is Going Away!를 참조했습니다.

같이 읽으면 좋은 글

Leave a Comment