完整路徑
????????? C:\Python27\Lib\site-packages\selenium\webdriver\remote\webdriver.py
注:筆者python安裝在C:\Python27
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è)打開(kāi)指定的的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锤躁。