파이썬/Basic

셀레니움 Element 텍스트 값 가져오기

코샵 2022. 3. 28. 20:28
반응형

selenium에서 특정 Element의 텍스트 값을 가져오는 방법입니다. (크롬 드라이버 기준)

 

text


기본적으로 특정 Element의 텍스트 값을 읽을 때는 text 함수를 호출한다. text 함수는 엘리먼트의 text property를 읽는다.

text = driver.find_element_by_css_selector('div').text

print(text)

div 안에 포함된 텍스트 값을 가져옵니다.

 

get_attribute()


get_attribute 함수는 매개변수로 지정된 element의 속성을 읽는다. 이 중 엘리먼트 내 문자열에 해당하는 속성은 innerText 정도인 것 같다. get_attribute로는 텍스트뿐만 아니라 href, src 등의 속성도 얻을 수 있다.

text = driver.find_element_by_xpath('').get_attribute('innerText')
text = driver.find_element_by_xpath('').get_attribute('innerHTML')

text 보다는 get_attribute('innerText')가 일반적으로 모든 경우를 처리한다고 한다.

 

 

예제


from selenium import webdriver

driver = webdriver.Chrome()

url = "https://www.naver.com/"
driver.get(url)

print(driver.find_element_by_xpath('//*[@id="NM_FAVORITE"]/div[1]/ul[1]').text)
print(driver.find_element_by_xpath('//*[@id="NM_FAVORITE"]/div[1]/ul[1]').get_attribute('href'))