일부 필요한 라이브러리 :
셀레늄 가져 오기 webdriver # webdriver 가져 오기 라이브러리 드라이브 브라우저에서
selenium.webdriver.common.keys가 키 # 라이브러리 호출 키보드를 가져올에서
수입 시간 # 수면 用
selenium.webdriver.support.ui에서 가져 오기가 명시 적 기다리고, # 대기 루프를 WebDriverWait
에서 selenium.webdriver.support. 조건에 대한 책임 EC 번호 모듈 등의 수입 expected_condition
브라우저 :
드라이버 = webdriver.Chrome () # 브라우저를 대신 드라이버를 구글 브라우저를 열고
# 웹 사이트를 엽니 다 ( '') driver.get
브라우저 driver.quit () # 가까이
요소의 위치를 :
driver.find_element_id ( '') # 요소 위치 (id 속성)
driver.find_element_xpath ( '')는 # (XPath는 속성에 의해) 요소를 찾아 복사 XPath는 [] [] 절대 위치
기타 :
- find_element_by_id
- find_element_by_name
- find_element_by_xpath
- find_element_by_link_text
- find_element_by_partial_link_text
- find_element_by_tag_name
- find_element_by_class_name
- find_element_by_css_selector
간단하게 위치 될 수있는 요소의 요소에 대한 복수의 소자를 배치하면 (목록을 반환)
위치 결정 요소의 작동 :
xx.send_keys ( '') XX에 # 무엇을 모방 키보드 입력 (입력 중국이 언제 U를 추가하는)
xx.click () # 모방 클릭 XX
xx.clear ()는 일반적으로 입력 상자에 사용 #은 상자의 내용을 삭제
xx.get_attibute ( '는 TextContent') # 가져 오기 모든 태그는 <> 요소 내에서 텍스트를 다음과 반환 값의 str을
HTML 내에서 xx.get_attribute ( 'innerHTML을') # 가져 오기 모든 요소
xx.get_attribute ( 'outerHTML에') # 취득 HTML 즉 선택된 원소를 함유하는은 함유 HTML 요소 내에 모두 HTML 층을 포함
xx.get_attribute ( 'label 속성') # 소자 태그> 값 <속성을 얻기
브라우저 창
driver.window_handles # 브라우저 핸들 모든 창 [] (목록)를 가져옵니다
# 스위치 창 (핸들을 조작하려는) driver.swich_to.window
driver.close () # 가까운 현재 핸들 / 창 (빈 오프 후 드라이버)
명시 대기 :
time.sleep (들) 몇 초 # 지연 (시간 라이브러리)
타임 아웃 TimeoutException 예외를 발생한다 찾을 경우 .until WebDriverwait (()) 위치 결정 요소 # 대기가 존재하며
element = WebDriverWait(driver, 10).until(
EC.presence_of_element_located((By.ID, "myDynamicElement"))
) # 10秒内不断加载页面,直到找到有这个id的元素或超时,并且定位这个元素为element
EC.하기 Xxx 번호 판사와 들어오는 제목의 타이틀을 획득 한
XXX로 다음과 같습니다 :
- 정확히 동일한 title_is 번호
- # 취득 title_contains 들어오는 포함
- # 요소가 성공적으로로드되어 있는지 확인합니다
- presence_of_element_located (By.xxx "속성의 요소")
- presence_of_all_elements_located
- # 판사 요소를 볼 수 있습니다
- invisibility_of_element_located
- visibility_of_element_located
- visibility_of
- # 텍스트 요소 내부에 표시할지 여부를 결정합니다
- text_to_be_present_in_element ((By.xxx "속성의 요소"), "텍스트")
- text_to_be_present_in_element_value
- # 판사 프레임이 절단 될 수 있는지 여부
- frame_to_be_available_and_switch_to_it
- # 판사 클릭 할 수있는 요소가 있는지 여부
- element_to_be_clickable ((By.xxx "속성의 요소"))
- # 판사는 DOM 아직 아니다
- staleness_of
- 요소가 선택됩니다 # 판사 여부
- element_to_be_selected
- element_located_to_be_selected
- element_selection_state_to_be
- element_located_selection_state_to_be
- 팝업이 있는지 여부를 # 결정
- alert_is_present
다음으로 수.이 많은 (현재는 존재가 터치에 대한 [])
- 신분증
- 이름
- XPATH
- LINK_TEXT
- PARTIAL_LINK_TEXT
- TAG_NAME
- CLASS_NAME
- CSS_SELECTER
쿠키를 가져 오기 :
driver.get_cookies () # GET 쿠키 (하지 않도록)
출력 페이지 소스 :
driver.page_source
xx.text :
요소 XX의 내용을 반환
셀레늄 공식 문서 : https://selenium-python.readthedocs.io/