셀레니움 크롬드라이버 115, 116, 117, 118 못찾는 에러 오류 해결(Resolution of no such driver error in selenium for chromedriver 115, 116, 117, 118 from repository)
2023. 8. 22. 16:33ㆍIT&모바일&컴퓨터
반응형
셀레니움에서 사용하는 크롬드라이버가 무서운 속도 버전업 되고있다.
덕분에 정식 repository에 chromedriver 115, 116, 117, 118 등이 저장되지 않아서 자동 인스톨 사용시 다음과 같은 에러가 발생하고 있다.
ValueError: There is no such driver by url https://chromedriver.storage.googleapis.com/LATEST_RELEASE_115.0.5790
Error getting version of chromedriver 116. Retrying with chromedriver 115 (attempt 1/5)
Error getting version of chromedriver 115. Retrying with chromedriver 114 (attempt 2/5)
...
selenium.common.exceptions.SessionNotCreatedException: Message: session not created: This version of ChromeDriver only supports Chrome version 114
아래와 같은 크롬드라이버 자동인스톨 구문을 사용중이라면, 해결방법이 여러가지가 있다.
driver = webdriver.Chrome(service=Service(ChromeDriverManager().install()), options=chrome_options)
1. 해결방법A
; 크롬드라이버 자동매니저 사용 구문을 삭제한다.
(아래 예는 options을 줬을 경우)
driver = webdriver.Chrome(service=Service(ChromeDriverManager().install()), options=chrome_options)
==>
driver = webdriver.Chrome(options=chrome_options)
반응형
(아래 예는 options이 없을 경우)
driver = webdriver.Chrome(service=Service(ChromeDriverManager().install()))
==>
driver = webdriver.Chrome()
2. 해결방법B
; 크롬드라이버 매니저의 버전업을 통한 해결
아래와 같이 webdriver-manager 버전이 .4.0 미만이라면 4.0 이상을 설치한다. 최근에 4.0.1로 업데이트 되었는데 여전히 사용가능하다.
>> pip list
....
webdriver-manager 3.8.6
...
>> pip install --upgrade webdriver-manager==4.0
...
Successfully installed webdriver-manager-4.0.0
3. 해결방법C
; 크롬드라이버를 디렉토리에 직접 넣어주는 방법
이 방법은 시도해보지 않았지만, 가능하다는 웹글들이 보이긴 한다. 하지만, 매번 직접넣어주는 건 비효율적이다. 위의 A,B의 방법이 다 실패했을 경우에 고려하자.
4. 해결방법D
; 크롬드라이버의 자동업데이트를 막는 방법
이 방법은 시도해보지 않았지만, 윈도우 서비스의 cupdate를 자동 실행을 막고 114 버전으로 돌아가는 방법인데 보안에 취약할 수 있으니 추천하지는 않는다.
반응형