본문 바로가기
파이썬코드공유

파이썬 셀레니움 네이버 로그인 코드 공유

by 하이어시스템 2023. 7. 29.
반응형

네이버 로그인 화면

안녕하세요. 하이어시스템입니다.

하이어시스템 소개

 

하이어시스템 소개 feat.김프로

소개 안녕하세요, 저는 하이어시스템의 김프로입니다. 여러분들이 어려움을 겪고 계신 일상 업무를 저의 안정적이고 빠른 소프트웨어로 자동화하는 것, 그것이 저의 목표입니다. '하이어시스템

wise-office-worker.tistory.com

 

이미 많은 블로그들을 통해 공개된 바 있는 파이썬으로 작성된 셀레니움 네이버 로그인 코드를 공유하도록 하겠습니다. 몇가지 항목들을 추가해 드리니 자동화 프로그램 개발간 참고하시기 바랍니다.

1. 로그인

# 로그인창 - ID 입력
element_id = driver.find_element(By.ID, "id")
element_id.click()
time.sleep(1)

pyperclip.copy(user_id) # ID
element_id.send_keys(Keys.CONTROL, 'v')
time.sleep(1)

# 로그인창 - Password 입력
element_id = driver.find_element(By.ID, "pw")
element_id.click()
time.sleep(1)

pyperclip.copy(user_password) # Password
element_id.send_keys(Keys.CONTROL, 'v')
time.sleep(1)

# 로그인버튼 클릭
driver.find_element(By.ID, 'log.login').click()
time.sleep(1)

2. 로그인 상태 유지

if driver.find_element(By.ID, 'keep').get_attribute('value') == 'off':
    driver.find_element(By.XPATH, '//*[@id="login_keep_wrap"]/div[1]/label').click()
    time.sleep(1)

3. 보안 IP 해제

if driver.find_element(By.ID, 'switch_blind').text == 'on':
    driver.find_element(By.XPATH, '//*[@id="login_keep_wrap"]/div[2]/span/label').click()
    time.sleep(1)

4. 새로운기기 등록

try:
    driver.find_element(By.ID, 'new.dontsave').click()
    time.sleep(1) 
except:
    pass

단 새로운 기기 등록의 경우처럼 나타날 경우와 안나타날 경우가 있는 케이스는 implicitly_wait 을 적절하게 처리할 필요가 있습니다.

반응형