Python

Selenium 실행시 Chrome 115 버전 문제 해결

별동산 2023. 7. 29. 19:43
반응형

 

1. 크롬 버전 115의 문제

크롬 버전이 115가 아닐 때는 아래 코드를 이용해서 크롬 버전에 맞도록 크롬 드라이버의 버전을 가져왔는데,

chrome_ver = chromedriver_autoinstaller.get_chrome_version().split('.')[0]
driver_path = f'./{chrome_ver}/chromedriver.exe'

if os.path.exists(driver_path):
    print(f"chrome driver is installed: {driver_path}")
else:
    print(f"install the chrome driver(ver: {chrome_ver})")
    chromedriver_autoinstaller.install(True)

 
 
115 버전부터는 위 코드가 실행이 안 돼서 아래 코드를 실행하려고 하면 

driver = webdriver.Chrome(executable_path=driver_path, options=options)

 
"크롬 드라이버 버전이 크롬 버전 106만 지원한다"라고 하면서, 현재 크롬 버전이 115.0.5790.110이기 때문에 "selenium의 예외 처리에 따라 session이 생성되지 않았다"는 메시지가 나옵니다.

크롬 드라이버 버전이 115 버전이 아니라서 에러 발생

 
 

2. 크롬 드라이버 115 버전 다운로드

 
114 버전까지는 아래 사이트에서 다운로드하였는데,
https://chromedriver.chromium.org/downloads

ChromeDriver - WebDriver for Chrome - Downloads

Current Releases If you are using Chrome version 115 or newer, please consult the Chrome for Testing availability dashboard. This page provides convenient JSON endpoints for specific ChromeDriver version downloading. For older versions of Chrome, please se

chromedriver.chromium.org

 
 
115 버전부터는 아래 링크(the Chrome for Testing availability dashboard)를 눌러야 합니다.
아래 링크를 누르면

크롬 115 버전 이후 버전을 Chrome for Testing availability 사이트에 접속해야 함

 
아래와 같은 화면이 나오는데, 115.0.570.102의 Stable(안정) 버전은 Status가 원활인데, 115.0.570.110의 Stable(안정) 버전을 앞으로 나오는데, Status가 X로 되어 있습니다.

크롬 버전 115.0.5790.110 안정화 버전을 이용 불가

 
그런데 다행인 것은 가끔가다 X가 아니라는 것이고,
 
화면 아래로 내려가면 64비트 버전은 404 에러가 나는데, 32비트 버전은 200으로 문제가 없으므로 이것을 다운로드할 수 있다는 것입니다.

크롬 드라이버 115 버전(윈도우 32비트) 다운로드 주소

 
위 주소 줄에서 마우스를 더블 클릭해서 주소를 모두 선택한 다음 마우스 오른쪽 버튼을 누르면 URL(https://edgedl.me.gvt1.com/edgedl/chrome/chrome-for-testing/115.0.5790.102/win32/chromedriver-win32.zip)로 이동하는 메뉴가 있으므로 이것을 누르면

 
새 탭이 열리면서 파일 저장 버튼이 생기므로 다운로드합니다.

 
 
그리고, 압축을 풀어서 chromedriver-win32 폴더의 chromedriver.exe를

 
파이썬 코드가 있는 폴더에 붙여 넣고 실행하니 문제없이 잘 됩니다.

Selenium으로 크롬 실행

 
 

3. 추가적인 사항

가. Selenium 4.10.0으로 업그레이드

혹시 Selenium 버전이 4.10.0 이전 버전이라면 
VS Code의 Terminal 창에서 아래 코드를 실행해서 Selenium버전을 업그레이드해야 한다고 합니다.

pip install selenium==4.10.0

 
그런데, 이것도 VS Code의 Terminal 창에서 잘 안 돼서
아나콘다 내비게이터를 실행한 다음 종료하고,

Anaconda Navigator

 
커맨드 창(윈도우 + R 클릭 후 cmd 입력)에서 실행하니 됐습니다.
현재는 업그레이드가 돼서, 아래와 같이 "이미 설치가 됐다"는 메시지가 나옵니다.

커맨드 창 pip install

 
 

나. chromedriver_autoinstaller 당분간 이용 불가

위 코드 실행시 구글 사이트는 열리지만, "크롬 버전에 맞는 크롬드라이버를 찾을 수 없다"라고 하므로 당분간은 chromedriver_autoinstaller 라이브러리를 사용할 수 없습니다.

반응형