본문 바로가기

업무 자동화

셀레니움(Selenium)을 이용한 네이버 로그인 자동화 구현

반응형

ி Selenium


웹 브라우저를 컨트롤할 수있는 SW로써 웹자원이 모두 로드될 때가지 기다려서
눈에 보이는 컨텐츠라면 모두 가져올 수 있다.



ி 설치



파이썬에 셀레니움 설치
 pip install selenium
[최신 버전 유지 중요]


webdriver
selenium을 통해 디바이스에 설치된 브라우저를 제어한다.

Chrome WebDriver
https://sites.google.com/a/chromium.org/chromedriver/downloads



ி 사용



 from selenium import webdriver
 from time import sleep
  
 # chromedriver의 위치를 지정해준다.
 driver = webdriver.Chrome('/Users/my_user/Downloads/chromedriver')
  
 # url에 접근한다.
 driver.get('https://nid.naver.com/nidlogin.login')
  
 # 아이디/비밀번호 입력
 driver.find_element_by_name('id').send_keys('my_id')
 driver.find_element_by_name('pw').send_keys('mypassword1234')
  
 # 대기
 sleep(0.5) 
  
 # 로그인 버튼 클릭
 driver.find_element_by_xpath('//*[@id="frmNIDLogin"]/fieldset/input').click()




ி API



단일 엘리먼트


 find_element_by_name(‘HTML_name’)
 find_element_by_id(‘HTML_id’)
 find_element_by_xpath(‘/html/body/some/xpath’)


다수 엘리먼트


 find_element_by_css_selector(‘#css > div.selector’)
 find_element_by_class_name(‘some_class_name’)
 find_element_by_tag_name(‘h1’)
 driver.page_source - 현재 렌더링 된 페이지의 Elements를 모두 불러옴.






반응형