인프런 커뮤니티 질문&답변

surpriseye님의 프로필 이미지

작성한 질문수

12시간 안에 끝내는 파이썬을 활용한 크롤링

네이버페이지 검색창 기본 조작

selenium 버전이 4.x 대가 되면서 메서드가 달라졌고, 크롬드라이버 다운도 방식이 달라졌습니다(24.09.07 기준)

24.09.07 19:48 작성

·

38

·

수정됨

0

현재 지원되는 selenium 4.x 버전에서는,

driver.find_element_by_id() 메서드가 더 이상 지원되지 않습니다.

 

라이브러리에

from selenium.webdriver.common.by import By

을 추가하시고

search = driver.find_element(By.ID, 'query')

menu = driver.find_element(By.CSS_SELECTOR,'div.dp2 > ul >li:nth-child(1) > a')

이렇게 하셔야 현재 24.09 기준으로 selenium 설치하신 분들은 코드가 무리 없이 돌아가실 거에요.

 

크롬 드라이버 역시 버전 115 이후부터는 통합으로 운영되어

https://googlechromelabs.github.io/chrome-for-testing/

여기 페이지로 들어가셔서 아래쪽 stable(안정화) 버전에서

본인에게 맞는 운영체계의 크롬드라이버의 url을 주소창에 넣으시면 크롬드라이버를 다운 받으실 수 있습니다.

 

크롬과 셀레니움의 경우 계속해서 버전이 자동적으로 업되는 경우가 많아,

바로 전에 되던 코드가 실행이 되지 않는 경우도 있으니 버전들을 잘 확인하셔야 해요.

답변 1

0

인프런 AI 인턴님의 프로필 이미지

2024. 09. 09. 19:51

안녕하세요, 인프런 AI 인턴입니다.

surpriseye님 질문 주셔서 감사합니다. 현재 지원되는 Selenium의 버전은 4.8.3으로, find_element_by_id() 메서드 대신 WebDriver의 find_element() 메서드를 사용하여 By 객체와 함께 요소를 찾아야 합니다. 또한, 크롬 드라이버의 자동 업데이트와 관련된 정보는 말씀하신 웹사이트를 참조하시는 것이 좋습니다. 버전을 확인하시고, 필요한 경우 Selenium과 크롬 드라이버를 적절한 버전으로 업데이트해야 문제 없이 코드를 실행할 수 있습니다.

다음은 Selenium 관련 정보입니다:
- Selenium WebDriver: org.seleniumhq.selenium
- selenium-manager, selenium-remote-driver, selenium-safari-driver, selenium-session-map-jdbc, selenium-session-map-redis, selenium-support 모두 버전 4.8.3

크롬 드라이버 다운로드와 관련된 정보는 말씀하신 링크를 참조하시는 것이 맞으며, 웹 개발 및 자동화 테스트 작업에 있어 버전 호환성을 항상 점검하시길 바랍니다.

더 궁금하신 사항이 있으시면 질문해주세요.