웹 스크래핑이란, 웹사이트에서 원하는 데이터를 수집하고 가공하는 행위입니다.

Selenium은 웹 테스트 자동화 도구로, 파이썬(또는 자바) 라이브러리로 사용합니다. Selenium은 브라우저를 제어하는 기능이 있어 웹 스크래핑에 용이합니다.

기본

실행 환경:

from selenium import webdriver

driver = webdriver.Firefox() # 실행 브라우저
driver.get('<https://news.naver.com>')
...
driver.close()

태그로, class로, id로 찾기:

//태그로 요소
e = driver.find_element_by_tag_name('p') //elements 도 가능
print(e.text)
//태그로 요소 내 요소
e = driver.find_element_by_tag_name('div') \\
    .find_element_by_tag_name('p')
    
print(e.text)
//클래스로 요소
e = driver.find_element_by_class_name('bold') //elements 도 가능
print(e.text)
//id로 요소
e = driver.find_element_by_id('kor-p') //elements 도 가능
print(e.text)
//요소의 속성값 추출!
print(e.get_attribute('src'))
//다 같이 쓰기도 가능!

XPath

Untitled

Untitled

Untitled

Untitled

Untitled

• ****를 사용할 경우, 검색된 노드둘 중 해당 속성과 속성값이 완벽히 일치하는 노드를 반환

• **[@attr="value"]**를 사용할 경우, 검색된 노드둘 중 해당 속성과 속성값이 완벽히 일치하는 노드를 반환

XPath로 요소

Untitled

심화

브라우저 제어

로그인 자동화

드랍다운 버튼 클릭