1. DOM 내부에 있는 여러개의 요소들 중에서 처음 찾아지는 요소를 추출하는 메소드
find_element_by_id(id) id 속성으로 요소를 하나 추출한다. find_element_by_name(name) name속성으로 요소를 하나 추출한다. find_element_by_css_selector(query) CSS 선택자로 요소를 하나 추출한다. find_element_by_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. DOM 내부에 있는 여러개의 요소들을 모두 추출하는 메소드 find_elements_by_css_selector(query) find_elements_by_xpath(query) find_elements_by_tag_name(name) find_elements_by_class_name(name) find_elements_by_partial_link_text(text) 위의 메소드를 이용해서 어떠한 요소도 찾지 못하는 경우에 발생하는 예외는 NoSuchElementException 3. DOM 요소에 적용할 수 있는 메소드 clear() : 글자를 입력할 수 있는 요소의 글자를 지운다. click() : 요소를 클릭한다. get_attribute(name) : 요소의 속성 중에 name에 해당되는 속성의 값을 추출한다. is_displayed() : 요소가 화면에 출력되는지 확인한다. is_enabled() : 요소가 활성화 되었는지 확인한다. is_selected() : 체크박스 등의 요소가 선택 상태인지 확인한다. screenshot(filename) : 화면을 캡처해서 filename으로 저장한다. send_keys(value) : 키를 입력한다. 일반적으로 text 데이터를 보낸다. >> value가 텍스트 데이터가 아닌 경우 (특수키:방향키, 펑션키(f1, f2, f3 .... f12), Enter, Tab, Control,...) 즉, 특수키를 사용해야 하는 경우에는 별도의 모듈을 사용해야한다. from selenium.Webdriver.common.keys import 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 / F4 ..... / F12 submit() : 입력 양식을 전송한다. value_of_css_property(name) : name에 해당하는 CSS 속성 값을 추출한다. 4. DOM 요소에 적용할 수 있는 속성 id : 요소의 id 속성 location : 요소의 위치 parent : 부모 요소 rect : 크기와 위치정보를 가진 딕셔너리 자료형을 리턴한다. screenshot_as_base64 : 스크린샷을 base64형태로 추출한다. screenshot_as_png : 스크린샷을 PNG형식의 바이너리로 추출한다. size : 요소의 크기 tag_name : 태그이름 text : 요소내부의 글자 ////////// PhantomJS 용 메서드와 속성 /////////////// add_cookie(cookie_dict) 쿠키 값을 딕셔너리 형식으로 지정 >> driver.add_cookie({'name':'kim', 'value':'test'}) driver.add_cookie({'name':'kim', 'value':'test', 'path':'/')} driver.add_cookie({'name':'kim', 'value':'test', 'path':'/', 'secure':True}) back() /forward() : 이전 페이지 또는 다음 페이지로 이동 close() : 브라우저를 닫다 current_url : 현재 url 을 추출한다. delete_all_cookies() : 모든 쿠키를 제거한다. delete_cookie(name) : 특정 쿠키를 제거한다. get_cookie(name) : 특정 쿠키를 읽는다. get_cookies() : 모든 쿠키 값을 추출한다. execute(command, params) : 브라우저의 고유 명령어를 실행 get(url) : 웹 페이지를 읽어들인다. get_screenshot_as_file(filename) : 스크린샷을 파일로 저장 get_screenshot_as_png : PNG형식으로 스크린샷의 바이너리 추출 save_screenshot(filename) : 스크린샷을 저장 implicitly_wait(sec) : 최대 대기시간을 초 단위로 지정해서 처리가 끝날 때 까지 대기 quit() : 드라이버를 종료시켜서 브라우저를 닫는다. title : 현재 페이지의 타이틀을 추출
|
|||||||||||