Work/개발

[파이썬] selenium, 크롬 버전 115이후 에러

라리올리 2023. 10. 1. 14:47
반응형

크롤링은  크롬 업데이트나 사이트 업데이트로 인해 꾸준히 유지보수 해줘야 하는 단점이 있는 것 같습니다 -_-

 

오늘 크롤링 하려 돌린 프로그램에 아래와 같이 에러 발생합니다.

 


There is no such driver by url 
https://chromedriver.storage.googleapis.com/117.0.5938/chromedriver_win32.zip


문제 현상 파악

1. 오류 확인

' https://chromedriver.storage.googleapis.com/117.0.5938/chromedriver_win32.zip' 링크를 가보면 아래와 같이 해당 파일이 없다고 나옵니다.

2. 소스 확인

에러가 발생하는 소스의 부분은 아래와 같습니다. 

from webdriver_manager.chrome import ChromeDriverManager

options = webdriver.ChromeOptions()
options.add_argument("Lang=ko_KR")


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

 

 

구글링

1. 크롬 드라이버 설치 URL 변경 

 

구글링 검색 하니 115 버전 이후로 크롬드라이버 설치하는 URL이 변경되었다고 합니다. 

변경 URL은 https://googlechromelabs.github.io/chrome-for-testing/ 입니다. 

 

한 번은 드라이버를 다운로드하여서 사용할 수 있지만, 매번 다운로드할 수 없음으로 자동으로 되는 방법을 서치 해 봅니다.

 

귀인의 댓글을 발견합니다. 

 

2. 크롬 드라이버 자동 실행 방법

 

아래 손생님의 블로그는 https://coding-kindergarten.tistory.com/입니다.

 

 

이제 해 봅니다. 

 

1. 기존 셀레니움 업그레이드 (안된다면 삭제 후 재설치)

pip install --upgrade selenium

 

2. 소스 수정

#from webdriver_manager.chrome import ChromeDriverManager

#options = webdriver.ChromeOptions()
#options.add_argument("Lang=ko_KR")


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

기존 소스 중 driver 받아오는 부분만 남기고 삭제 처리하면 잘 동작합니다.

 

끝.

반응형