ブラウザコントロールノート

2942 ワード

1、ブラウザ制御--サイズ設定driver.set_window_size()--前進後退driver.back() driver.forward()--ウィンドウdriverをリフレッシュします.refresh()
2、簡単な要素操作--element.clear()テキストをクリア--element.send_keys(「xxx」)アナログキー入力--element.クリック--element.サブミット()コミット--element.サイズを返しますtextは要素テキスト--elementを返します.get_attribute(name)は要素属性値--elementを取得する.is_displayed()戻り要素が表示されるかどうか
3、マウスイベント--from selenium.webdriver.common.action_Chains import ActionChainsは、ActionChainsに格納動作であるActionChains(driver)を実行するために、perform()を導入する.context_click(element).perform()右クリック--ActionChains(driver).double_click(element).perform()ダブルクリック--ActionChains(driver).drag_and_ drop(sourc, target).perform()ソース要素をターゲット要素であるActionChains(driver)にドラッグします.move_to_element(element).perform()マウスサスペンション
4、キーボードイベント--from selenium.webdriver.common.keys import Keys導入--element.send_keys(Keys.SPACE)スペース--elementを入力します.send_keys(Keys.CONTROL,'c')コンビネーションctrl+cレプリケーション
5、情報を取得する--driver.タイトルの現在のページタイトル--driver.current_url現在のページURL
6、要素待機--待機from seleniumを表示します.webdriver.common.by import By from selenium.webdriver.support.ui import WebDriverWait from selenium.webdriver.support.by import expected_conditions as EC element = WebDriverWait(driver, 5, 0.5).until( EC.presence_of_element_located((By.ID, "kw")) ) element.send_keys("xxx")
  0.5s,   5s ,   NoSuchElementException  , presence_of_element_located  

--  
driver.implicitly_wait(10)

 , , 。 。

7、エレメントのセットを配置するfind_elements_by_id()
find_elements_by_name()
find_elements_by_class_name()
find_elements_by_tag_name()
find_elements_by_link_text()
find_elements_by_partial_link_text()
find_elements_by_xpath()
find_elements_by_css_selector()

inputs = find_elements_by_tag_name("input") 
for i in inputs:
    if i.get_attribute("type") == "checkbox" :
        ......

 :
boxs = find_elements_by_xpath("//input[@type = 'checkbox']") 
for box in boxs:
    box.click()

// 
box.pop().click()  //pop()   pop(-1)  , pop(n)   n+1  ,   0

8、マルチフォーム切替driver.switch_to.frame(id or name or element)は、フォームのidまたはname属性をデフォルトで伝えることができます.
9、マルチウィンドウ切替driver.current_window_handle現在のウィンドウdriver.window_handlesが現在開いているすべてのウィンドウ
driver.switch_to.window(handle)   handle  

10、警告ボックス処理alert=driver.switch_to_alert()JavaScriptによって生成されたalert、confirm、prompt--alert.textは警告ボックスの文字情報--alert.を返します.accept()既存の警告ボックス--alert.を受け入れるdismiss()既存の警告ボックスを解散する--alert.send_keys(msg)警告ボックスにテキストを送信
11、Cookie driverを操作する.get_Cookies()はすべてのcookie情報driverを取得する.get_cookie(name)逆辞書keyがnameであるcookie情報driver.add_クッキー(dic)クッキーを追加,{'name':“aa”,'value':'bb'}driver.delete_Cookie(name,optionstr)削除cookie,optionstr:パス/ドメインdriver.delete_all_クッキー()すべてのクッキー情報を削除
12、javaScript js="window.scrollTo(100,200)"driverを呼び出す.execute_script(js)
13、ウィンドウdriverを閉じる.close()現在のウィンドウdriverを閉じる.quit()すべてのウィンドウを閉じる