python selenium2源碼 - webdriver常用方法

完整路徑

????????? C:\Python27\Lib\site-packages\selenium\webdriver\remote\webdriver.py
注:筆者python安裝在C:\Python27

webdriver.py初步印象

webdriver.py

常用方法分類

一、全局操作類

start_session? ? 使用指定的desired capabilities創(chuàng)建一個(gè)會(huì)話(session)

start_client? ? ? ? 新建一個(gè)webdriver會(huì)話session前調(diào)用,可以自定義初始化的動(dòng)作

stop_client? ? ? ? 停止webdriver會(huì)話session后調(diào)用,可以自定義一些清理動(dòng)作

create_web_element? ? 創(chuàng)建一個(gè)html元素

get? ? ? ? ? ? ? ? ? ? 在當(dāng)前瀏覽器會(huì)話頁(yè)打開指定的的url網(wǎng)頁(yè)

close? ? ? ? ? ? ? ? ? 關(guān)閉當(dāng)前瀏覽器窗口

quit? ? ? ? ? ? ? ? ? ? 關(guān)閉webdirver會(huì)話,并把所有與該會(huì)話關(guān)聯(lián)的瀏覽器窗口一起關(guān)閉

forward/back? ? ? 瀏覽器歷史瀏覽上一次/下一次操作? ? ? ? ? ? ? ?

refresh? ? ? ? ? ? ? ? 刷新瀏覽器

set_script_timeout? ? ? ? ? ? ? 設(shè)置腳本執(zhí)行超時(shí)時(shí)間

set_page_load_timeout? ? ? 設(shè)置頁(yè)面加載超時(shí)時(shí)間

get_screenshot_as_file? ? ? 截圖并保存為文件

get_screenshot_as_png? ? 截圖并保存為png格式文件

get_screenshot_as_base64? ? 截圖成base64串

get_cookies/delete_all_cookies??????? 獲取/刪除所有cookie

get_cookie/delete_cookie???????????????? 獲取/刪除指定的cookie

二、元素定位類

find_element_by_id? /? find_elements_by_id??????? 通過(guò)id查找一個(gè)或多個(gè)元素

find_element_by_xpath? /? find_elements_by_xpath?????? 通過(guò)xpath查找一個(gè)或多個(gè)元素

find_element_by_link_text? /? find_elements_by_link_text???????? 通過(guò)鏈接文本查找一個(gè)或多個(gè)元素(全匹配模式)

find_element_by_partial_link_text? /? find_elements_by_partial_link_text????????? 通過(guò)部分鏈接文本查找一個(gè)或多個(gè)元素(部分匹配模式)

find_element_by_name? /? find_elements_by_name?? ? ?? 通過(guò)元素名查找一個(gè)或多個(gè)元素

find_element_by_tag_name?? /?? find_elements_by_tag_name??????? 通過(guò)html標(biāo)記名查找一個(gè)或多個(gè)元素

find_element_by_class_name?? /?? find_elements_by_class_name?????? 通過(guò)class name查找一個(gè)或多個(gè)元素

find_element_by_css_selector?? /??? find_elements_by_css_selector???????? 通過(guò)css選擇器查找一個(gè)或多個(gè)元素

三、js執(zhí)行類

execute_script????????????????? 同步模式執(zhí)行js(等待js的執(zhí)行完成,才進(jìn)入下一步)

execute_async_script?????? 異步模式執(zhí)行js(不需要等待js的執(zhí)行結(jié)果,直接進(jìn)行下一步)

四、窗口、元素操作類

current_window_handle?????? 獲取當(dāng)前窗口的handle

handlewindow_handles? ? ? ? 獲取當(dāng)前webdriver session所有窗口的

maximize_window???? ? ? ? ? ?? 最大化窗口?
set_window_size????????????????? 設(shè)置窗口大小
get_window_size????????????????? 獲取窗口大小
set_window_position??????????? 設(shè)置窗口位置
get_window_position??????????? 獲取窗口位置
switch_to_window??????????????? 切換至指定窗口
switch_to_default_content?? 切換至默認(rèn)的frame
switch_to_frame?????????????????? 切換至指定的frame?
switch_to_alert???????????????????? 切換至標(biāo)準(zhǔn)的alert窗口
switch_to_active_element??? 切換至當(dāng)前激活的元素

五、基本信息讀取類

desired_capabilities? ? ? ? ? ? 獲取當(dāng)前會(huì)話的desired_capabilities信息

current_url? ? ? ? ? ? ? ? ? ? ? ? ? 獲取當(dāng)前頁(yè)面的url

page_source? ? ? ? ? ? ? ? ? ? ? 獲取當(dāng)前頁(yè)面的源碼

title???????????????????????????????????? 獲取當(dāng)前頁(yè)面的標(biāo)題

注: 這里不會(huì)把所有的方法都列舉出來(lái),只會(huì)將常用的列舉,有興趣的朋友可以深入看看代碼,更有利于掌握webdriver。


最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請(qǐng)聯(lián)系作者
平臺(tái)聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點(diǎn),簡(jiǎn)書系信息發(fā)布平臺(tái),僅提供信息存儲(chǔ)服務(wù)。

推薦閱讀更多精彩內(nèi)容