파이썬 에러 - chromedriver

vivi·2020년 7월 2일
0

파이썬의 selenium 라이브러리를 활용해 크롤링 코드 작성중 에러 발생

에러 코드

driver = webdriver.Chrome('chromedriver')
driver.get('http://www.google.com/');

에러 메시지

SessionNotCreatedException: Message: session not created: This version of ChromeDriver only supports Chrome version 78

현재 사용중인 크롬 브라우저chromedriver의 버전이 다르기 때문에 에러 발생


해결 방법

1. 현재 사용중인 크롬 버전 확인하는 방법

크롬 브라우저를 열고 주소창에 chrome://version/ 입력후 접속하면 아래와 같이 현재 사용중인 크롬 버전 확인 가능

2. 현재 사용중인 크롬 드라이버 버전 확인하는 방법

  • 크롬 드라이버 다운로드에서 현재 사용중인 크롬과 동일한 버전의 크롬 드라이버를 다운로드 받았는데 위와 같은 에러 메시지가 계속 출력되어 크롬 드라이버 버전을 확인

터미널 명령어로 크롬 드라이버 버전 확인이 가능하다기에 아래의 명령어로 확인하니 ChromeDriver 78이 출력됨

chromedriver --version
  • 검색을 하다가 homebrew 명령어로 크롬 드라이버를 설치하는 방법을 찾음
  • 설치후 드라이버는 /usr/local/bin/chromedriver로 연결된다(?)는 것을 알게됨
  • 그래서 chromedriver 명령어 사용이 가능했다는 걸 깨달음
  • 현재 사용중인 크롬 버전과 같은 버전(ChromeDriver 83)의 크롬 드라이버를 다운로드 -> 압축 풀기 -> /usr/local/bin/ 경로에 새로운 버전의 크롬 드라이버를 옮김(원래 있던 chromedriver는 삭제후 또는 대체)

주의 사항

  1. Windows 환경에서는 크롬 드라이버가 다운로드된 경로만 잘 지정해주면 문제없었던 것 같음(*나중에 Windows 환경에서 확인후 내용 업데이트 필요)

  2. Homebrew 명령어로 기존의 크롬 드라이버 삭제 및 재설치 가능

    2.1. 기존 버전의 크롬 드라이버 삭제

    brew cask uninstall chromedriver

    2.2. 새로운 버전의 크롬 드라이버 설치

    • Homebrew GitHub 저장소 - chromedriver.rb 에서 History 조회후 특정 버전을 찾는다.

    • (특정 버전) 해당 커밋 시점의 Raw 파일 링크 - Raw 클릭후 주소창의 주소를 복사한다.

    • 터미널에서 Homebrew 명령어로 설치

    brew cask install https://raw.githubusercontent.com/Homebrew/homebrew-cask/master/Casks/chromedriver.rb
profile
기록. 수정. 기억.

0개의 댓글