Python프로그래밍

[Python] 파이썬 크롬드라이버 오류 해결하기: TypeError: WebDriver.init() got an unexpected keyword argument ‘executable_path’

13년만에 새로운 PC를 쿠팡에서 왕가PC 상호를 통하여 구입하였다. 윈도우 11 운영체제 설치 후 파이썬 개발환경을 설정하는 과정에 기존에 잘 동작하던 코드에 문제가 발생되었다.

TypeError: WebDriver.init() got an unexpected keyword argument ‘executable_path’

Traceback (most recent call last):
  File "C:\python\Workspace\main.py", line 285, in <module>
    driver = webdriver.Chrome(executable_path='C:/python/chromedriver_win64/chromedriver.exe')
             ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
TypeError: WebDriver.__init__() got an unexpected keyword argument 'executable_path'


오류원인

 selenium 라이브러리 버전 문제로 이전에 사용되던 코드에서 오류가 발생되었다. 기존에 사용하던 셀레니움 버전은 3이었던 것이다.

driver = webdriver.Chrome(executable_path='C:/python/chromedriver_win64/chromedriver.exe')


오류 해결방법

새로 설치된 셀레니움 버전은 selenium4이다.

service = Service(executable_path='C:/python/chromedriver_win64/chromedriver.exe')
driver = webdriver.Chrome(service=service)


크롬드라이버 자동 설치 방법

python -m pip install webdriver_manager 를 통해 위의 라이브러리를 설치하여 사용할 수 있다.

from selenium.webdriver.chrome.options import Options
from selenium.webdriver.chrome.service import Service
from webdriver_manager.chrome import ChromeDriverManager


options=Options()
service=Service(ChromeDriverManager().install())
driver=webdriver.Chrome(service=service,options=options)

url = 'https://dhlottery.co.kr/store.do?method=topStoreLocation&gbn=lotto&rtlrId='
driver.get(url)

하지만 이방법도 어느 순간부터는 잘 되지 않아 크롬브라우저가 업그레이드 될때마다 수동으로 크롬드라이버 다운받아서 사용하고 있다.


크롬 드라이버 다운로드 위치 최신버전
https://googlechromelabs.github.io/chrome-for-testing/last-known-good-versions-with-downloads.json

error: Content is protected !!