Selenium 심화

2023. 4. 25. 08:48·python/python_selenium
from selenium import webdriver
from selenium.webdriver.common.by import By
from selenium.webdriver.common.keys import Keys
# webdriverWait을 사용하기 위한 import
from selenium.webdriver.support.ui import WebDriverWait
from selenium.webdriver.support import expected_conditions as EC

import time

browser = webdriver.Chrome()
browser.get("<https://naver.com>")
# 로그인 버튼을 클릭 후 이동
elem = browser.find_element(By.CLASS_NAME,"link_login")
elem.click()

# id, pw 입력 레이아웃으로 이동 후 입력
browser.find_element(By.ID, "id").send_keys("naver_id")
browser.find_element(By.ID, "pw").send_keys("password")

# 로그인 버튼 클릭
browser.find_element(By.ID, "log.login").click()

# 로딩을 위해 잠시 기다림
time.sleep(3)
browser.implicitly_wait(3)
# webDriverWait 을 통해 browser을 최대 10초동안 기다림 (10초가 넘어가면 에러)
# ID가 id 인 element를 찾으면 EC가 True를 리턴함.
WebDriverWait(browser, 10).until(EC.presence_of_element_located((By.ID, "id")))

# 새로운 id/pw입력을 위해 입력창을 초기화함
browser.find_element(By.ID, "id").clear()
browser.find_element(By.ID, "id").send_keys("shop2930")

# html 정보 출력
print(browser.page_source)

browser.quit()
  • browser.find_element(by, value).동작 : 찾은 element의 동작을 진행
  • find_element.clear()을 통해 값을 초기화할 수 있다.
  • 브라우저 작동 시, 가끔 브라우저가 속도를 따라가지 못할 때가 있다.
    • time.sleep(n) : n초만큼 대기.
    • browser.implicitly_wait(n)
      ㄴ n초만큼 대기(시간이 지나면 에러발생)
      ㄴ 로딩 완료 시 남은시간을 무시하고 다음문장 시작
    • WebDriverWait(browser,n).until(EC.presence_of_element_located((by, value)))
      ㄴ n초만큼 대기(시간이 지나면 에러발생)
      ㄴ until 안의 element발견 시, 남은 시간을 무시하고 다음문장 시작.

'python > python_selenium' 카테고리의 다른 글

Selenium 활용2  (0) 2023.04.29
Selenium 활용1  (0) 2023.04.26
Selenium 기본  (0) 2023.04.25
CSV 기본  (0) 2023.04.23
BeautifulSoup4 활용3  (0) 2023.04.23
'python/python_selenium' 카테고리의 다른 글
  • Selenium 활용2
  • Selenium 활용1
  • Selenium 기본
  • CSV 기본
몽자비루
몽자비루
코딩공부 정리용 블로그입니다.
  • 몽자비루
    공부하는 블로그
    몽자비루
  • 전체
    오늘
    어제
    • 분류 전체보기 (174) N
      • python (30)
        • python_selenium (16)
        • python_pygame (3)
      • appium (0)
      • 쿠버네티스 (60)
        • linux (8)
        • shell programming (8)
        • docker (18)
        • cka (23)
      • postman&API (16)
      • QA성장하기 (31) N
        • 개발자에서 아키텍트로 스터디 (6)
        • 소프트웨어 공학 이해도 높이기 (6)
        • 테스팅 전문 지식 쌓기 (18)
        • 제4회 QA conference (1) N
      • 에러일기 (1)
      • Server&load (35)
        • AWS (27)
        • load test (5)
        • CI CD (3)
        • Jmeter (0)
  • 블로그 메뉴

    • 홈
    • 태그
    • 방명록
  • 링크

  • 공지사항

  • 인기 글

  • 태그

    애플리케이션로그
    LOSTARK
    로스트아크
    쿠버네티스
    postman
    e2c
    포스트맨
    테스트 결과보고서
    qa conference
    QAKOREA
    python
    사드웨어리소스
    테스트스크립트
    도커
    앱공존성
    테스트 계획서 만들어보기
    qa
    vi에디터
    k8s
    API
    cka
    스터디
    공존성테스트
    네트워크 테스트
    개발자에서아키텍트로
    로스트아크api
    리눅스
    application log
    linux
    .cpu
  • 최근 댓글

  • 최근 글

  • hELLO· Designed By정상우.v4.10.3
몽자비루
Selenium 심화
상단으로

티스토리툴바

단축키

내 블로그

내 블로그 - 관리자 홈 전환
Q
Q
새 글 쓰기
W
W

블로그 게시글

글 수정 (권한 있는 경우)
E
E
댓글 영역으로 이동
C
C

모든 영역

이 페이지의 URL 복사
S
S
맨 위로 이동
T
T
티스토리 홈 이동
H
H
단축키 안내
Shift + /
⇧ + /

* 단축키는 한글/영문 대소문자로 이용 가능하며, 티스토리 기본 도메인에서만 동작합니다.