人生襍多

파이썬 Selenium 패키지 본문

프로그래밍

파이썬 Selenium 패키지

이혁진 2019. 12. 9. 19:08

요즘 자주 사용하는 Selenium

주요 사용하는 메소스는 다음과 같습니다. 

 

 

1. Selenium으로 DOM요소 찾기

 - elements를 찾지 못하면 NoSuchElementException 발생

 - find_element 하면 최초 1개만 / find_elements 하면 List로 반환 

 

이   름

설   명

find_element_by_id(id)

id 속성으로 요소를 하나 추출

find_element_by_name(name)

name 속성으로 요소를 하나 추출

find_element_by_css_selector(query)

css 선택자로 요소를 하나 추출

find_element_xpath(query)

xpath를 지정해 요소를 하나 추출

find_element_by_tag_name(name)

태그 이름이 name에 해당하는 요소를 하나 추출

find_element_by_link_text(text)

링크 텍스트로 요소를 추출

find_element_by_partial_link_text(text)

링크의 자식 요소에 포함되 있는 텍스트로 요소를 하나 추출

find_element_by_class_name(name)

클래스 이름이 name에 해당하는 요소를 하나 추출

2. Selenium으로 elements 조작하기

메서드/ 속성

설명

clear()

글자를 지운다

click()

요소를 클릭

get_attribute(name)

요소 속성중 name에 해당하는 속성 값을 추출

is_displayed()

요소가 화면에 출력되는지 확인

is_enabled()

요소가 활성화돼 있는지 확인

is_selected()

체크박스 등의 요소가 선택된 상태인지 확인

screenshot(filename)

스크린샷

send_keys(value)

키를 입력

submit()

입력 양식을 전송

value_of_css_property(name)

name에 해당하는 css속성 값을 추출

id

id

location

요소의 위치

parent

부모요소

rect

크기와 위치 정보를 가진 사전자료형 리턴

screenshot_as_base64

스크린샷을 base64로 추출

screenshot_as_png

스크린샷을 png형식의 바이너리로 추출

size

요소의 크리

tag_name

태그 이름

text

요소의 내부 글자

3. send_key()에서 주요 특수 키

 

from selenium.Webdriver.common.keys import Keys

Keys.ARROW_DOWN / ARROW_LEFT / ARROW_RIGHT / ARROW_UP
BACKSPACE / DELETE / HOME / END /INSERT /
ALT / COMMAND / CONTROL / SHIFT
ENTER / ESCAPE /SPACE / TAB
F1 / F2 / F3 ............./ F12

 

4. Selenium 드라이버 조작

add_cookie( cookie_dict)

쿠키값을 사전 형식으로 지정

back() / forward()

이전 페이지/ 다음페이지

close()

브라우저 닫기

current_url

현재 url

delete_all_cookies()

모든 쿠키 제거

delete_cookie(name)

name에 해당하는 쿠키 제거

execute( command, params)

브라우저 고유의 명령어 실행

execute_async_script( script, *args)

비동기 처리하는 자바스크립트를 실행

execute_script( script, *args)

동기 처리하는 자바스크립트를 실행

get(url)

웹 페이지를 읽어들임

get_cookie( name)

특정 쿠키 값을 추출

get_cookies()

모든 쿠키값을 사전 형식으로 추출

get_log(type)

로그를 추출(type: browser/driver/client/server)

get_screenshot_as_base64()

base64형식으로 스크린샷을 추출

get_screenshot_as_file(filename)

스크린샷을 파일로 저장

get_screenshot_as_png()

png형식으로 스키란샷의 바이너리를 추출

get_window_position(windowHandle='current')

브라우저의 위치를 추출

get_window_size( windowHandle='current')

브라우저의 크기를 추출

implicitly_wait(sec)

최대 대기 시간을 초 단위로 지정해서 처리가 끈날때 까지 대기

quit()

드라이버를 종료 시켜 브라우저 닫기

save_screenshot(filename)

스크린샷 저장

set_page_load_timeout( time_to_wait)

페이지르르 읽는 타임아웃 시간을 지정

set_script_timeout(time_to_wait)

스크립트의 타임아웃 시간을 지정

set_window_position(x,y,windowHandle='current')

브라우저 위치를 지정

set_window_size(width, height, windowHandle='current')

브라우저 크기를 지정

title

현재 타이틀을 추출


 

 
Comments