Selenium 基本函式操作

2021-09-23 01:45:09 字數 3484 閱讀 6697

from selenium import webdriver

from selenium.webdriver.common.keys import keys #鍵盤輸入

from selenium.webdriver.common.action_chains import actionchains #滑鼠操作

from selenium.common.exceptions import timeoutexception

from selenium.webdriver.common.by import by

from selenium.webdriver.support.wait import webdriverwait

from selenium.webdriver.support import expected_conditions as ec

-視窗、頁面操作

-警告窗操作

警告框處理:switch_to_alert()

text:獲取警告窗文字

accept():接受現有警告框

dismiss():解散現有警告框

send_keys(keystosend):傳送文字至警告

-cookie處理:
1.get_cookies():獲得所有cookie資訊

2.get_cookie(name):返回字典的key為「name」的cookie資訊

3.add_cookie(cookie_dict):新增cookie。「cookie_dict」指字典物件,必須有name和value值

3.delete_cookie(name,optionsstring):刪除cookie資訊。「name」是要刪除的cookie的名稱,「optionsstring」是該cookie的選項,目前支援的選項包括「路徑」,「域」

4.delete_all_cookies():刪除所有cookie資訊

-元素定位:
1.id定位:find_element_by_id()

2.name定位:find_element_by_name()

3.class定位:find_element_by_class_name()

4.tag定位:find_element_by_tag_name()

5.link定位:find_element_by_link_text()

6.partial link 定位: find_element_by_partial_link_text()

7.css定位:find_element_by_css_selector()

8.xpath定位:

絕對路徑:find_element_by_xpath("/html/body/div[x]/div[x]/div/div/dl[x]/dt/a")

元素屬性:find_element_by_xpath("//unput[@id=『kw』]")

層級與屬性結合:find_element_by_xpath("//form[@id=『loginform』]/ul/input[1]")

邏輯運算子:find_element_by_xpath("//input[@id=『kw』 and@class=『s_ipt』]")

-判斷元素狀態

is_selected():判斷元素是否被選中

is_displayed():判斷元素是否顯示

is_enabled():判斷元素是否被使用

size:返回元素的大小

text:獲取元素的文字

tag_name:返回元素的tagname

-滑鼠操作
定位元素:elemengt_click = driver.find_element_by_xpath(「xpath」)

單擊:actionchains(driver). click(elemengt_click) .perform()

雙擊:actionchains(driver). double_click(elemengt_click) .perform()

右擊:actionchains(driver). context_click(elemengt_click) .perform()

拖放:actionchains(driver). drag_and_drop(elemengt_click) .perform()

懸停:actionchains(driver). move_to_element(elemengt_click).perform()

按下:actionchains(driver). click_and_hold(elemengt_click) .perform()

移動指定位置:actionchains(driver). move_by_offset(x,y) .perform()

移動指定元素位置: actionchains(driver).move_to_element_with_offset(to_element, xoffset, yoffset).perform()

-鍵盤操作
1.清除文字:clear()

2.提交表單(相當於"回車"):submit()

3.模擬按鍵輸入:send_keys(*value)

send_keys(keystosend):傳送文字至警告框

send_keys(keys.back_space) = backspace

send_keys(keys.space) = space

send_keys(keys.tab) = tab

send_keys(keys.escape) = esc

send_keys(keys.enter) = enter

send_keys(keys.control,『v』) = control + v

send_keys(keys.control,『a』) = ctrl+a

send_keys(keys.f1) = 鍵盤f1

-滾動條設定

使用scrolltop滑動到底部

js = 「var action=document.documentelement.scrolltop=10000」

driver.execute_script(js)

使用scrolltop滑動到頂部

js = 「var action=document.documentelement.scrolltop=0」

driver.execute_script(js)

使用scrollto設定位置

driver.set_window_size(600, 600)

js = 「window.scrollto(100,450);」

driver.execute_script(js)

selenium 基本操作

from selenium import webdriver import time 啟動與瀏覽器的會話 driver webdriver.chrome 瀏覽器操作 driver.get 瀏覽器最大化 driver.maximize window 重新整理 driver.refresh 後退 到上乙...

爬蟲selenium基本操作

from selenium import webdriver import time from lxml import etree driver webdriver.chrome 需要把chromedriver放到python根目錄。driver.get time.sleep 3 等待頁面開啟 ht...

selenium基本使用

coding utf 8 author wang selenium 是乙個用於對web網頁進行自動測試的工具,可以通過它提供的一些方法自動操作 瀏覽器,可以完全模擬人的操作 seleniumpython爬蟲中的應用 1.獲取動態網頁中的資料,一些動態的資料在我們獲取的原始碼中並沒有顯示的這一類動態載...