goodthings4me.tistory.com
최근 selenium이 업그레이드되어서, find_elements_by_* 구문 대신 find_elements() 구문을 사용하라는 경고 메시지가 노출되었다. 사용법은 큰 차이가 없는 듯...
selenium 라이브러리 경고 메시지에 따른 구분 사용 방법
ul = driver.find_element_by_class_name('lst_total')
lis = ul.find_elements_by_class_name('bx')
위 구문에서, 실행 결과는 정상적으로 나오는데 오류인지 경고인지 이상한 메시지가 아래처럼 나온다.
UserWarning: find_elements_by_* commands are deprecated. Please use find_elements() instead
warnings.warn("find_elements_by_* commands are deprecated. Please use find_elements() instead")
구글 검색 결과,
https://stackoverflow.com/questions/69875125/find-element-by-commands-are-deprecated-in-selenium
... the find_element_by_* commands are deprecated in the latest Selenium Python libraries.
그래서, 경고 메시지대로 find_elements_by_* 가 아니라 find_elements()를 사용하여
from selenium.webdriver.common.by import By
ul = driver.find_element(By.CLASS_NAME, 'lst_total')
lis = ul.find_elements(By.CLASS_NAME, 'bx')
이렇게 쓰니 경고가 사라졌다.
참고 사이트의 내용을 좀 요약해서 나열하면,
button = driver.find_element_by_class_name("quiz_button")
button = driver.find_element(By.CLASS_NAME, "quiz_button")
element = driver.find_element_by_id("element_id")
element = driver.find_element(By.ID, "element_id")
element = driver.find_element_by_name("element_name")
element = driver.find_element(By.NAME, "element_name")
element = driver.find_element_by_link_text("element_link_text")
element = driver.find_element(By.LINK_TEXT, "element_link_text")
element = driver.find_element_by_partial_link_text("element_partial_link_text")
element = driver.find_element(By.PARTIAL_LINK_TEXT, "element_partial_link_text")
element = driver.find_element_by_tag_name("element_tag_name")
element = driver.find_element(By.TAG_NAME, "element_tag_name")
element = driver.find_element_by_css_selector("element_css_selector")
element = driver.find_element(By.CSS_SELECTOR, "element_css_selector")
element = driver.find_element_by_xpath("element_xpath")
element = driver.find_element(By.XPATH, "element_xpath")
이렇게 사용하라는 것임
'코딩 연습 > 코딩배우기' 카테고리의 다른 글
웹 브라우저 페이지를 자동으로 스크롤 해보기 (with 파이썬) (0) | 2021.12.28 |
---|---|
블로그 글 내용 저장 중 이모지 '\U0001f970' 에러 발생 (파이썬) (0) | 2021.12.26 |
크롬 웹드라이버 '시스템에 부착된 장치가 작동하지 않습니다.' 메시지 (0) | 2021.12.25 |
네이버 등 웹 페이지의 쿠키(cookie)를 가져와서 저장하기 (with Python) (0) | 2021.12.25 |
파이썬 pytube 오류 메시지 - AttributeError: 'NoneType' object has no attribute 'span' (4) | 2021.12.19 |
댓글