上一篇文章介紹的是一次識別單個元素的方法
?Selenium一次識別多個元素的API
? find_elements_by_id()
? find_elements_by_name()
? find_elements_by_link_text()
? find_elements_by_partial_link_text()
? find_elements_by_tag_name()
? find_elements_by_class_name()
? find_elements_by_xpath()
? find_elements_by_css_selector()
總結(jié)元素定位
1.可以定位什么頁面元素屬性
? ? id,name,class,tag,text(內(nèi)有兩種),css,xpath
2.elements和element的區(qū)別是什么
? ? 有s的返回列表,列表里是多個元素,沒有s的返回一個元素
3.定位元素的準(zhǔn)則是什么
? ? 用哪個api可以快速定位就用那種快速定位,定位不出,換函數(shù)
4.定位元素的步驟是什么
? ? 1.引入selenium模塊中的webdriver類,如果是本地文件還要引入os模塊
? ? 2.獲取瀏覽器
? ? 3.打開頁面
? ? 4.使用函數(shù)獲取頁面元素
? ? 5.關(guān)閉瀏覽器
頁面操作介紹
1.鼠標(biāo)鍵盤
clear(): 清除文本。
send_keys (value): 模擬按鍵輸入脆烟。
click(): 單擊元素经窖。例如按鈕操作健田。
2.獲取元素標(biāo)簽的屬性值
get_attribute(屬性名): 獲得屬性值削祈。
get_property(屬性名):獲得屬性值拾碌。自定義屬性不能獲取
3.獲取元素的屬性信息
? text卦绣。? 獲取元素標(biāo)簽對之間間的文本值,如果是查找的標(biāo)簽是父標(biāo)簽,返回的內(nèi)容是所有子標(biāo)簽中的內(nèi)容
? size姑荷。? 獲取元素的尺寸大小
? id侮攀。? Selenium內(nèi)部的一個元素屬性,用于判斷兩個元素是否是相同的元素厢拭。
? screenshot()方法兰英。
? 給元素一個快照,并保存為PNG格式的圖片供鸠。
4.獲取元素的基本狀態(tài)信息
? is_enabled()方法畦贸。--用于判斷元素的可用性。
? is_selected()方法楞捂。---用于判斷復(fù)選框等元素是否處于選擇狀態(tài)
is_displayed(): 檢查該元素是否用戶可見薄坏。
5.其他操作
submit():用于提交表單。 例如寨闹, 在搜索框輸入關(guān)鍵字之后的“回車” 操作胶坠, 就可以通過該方法模擬。
title:用于獲得當(dāng)前頁面的標(biāo)題繁堡。
current_url:用戶獲得當(dāng)前頁面的URL沈善。
鼠標(biāo)操作
需要引入
from selenium.webdriver.common.action_chains import ActionChains
格式:
ActionChains(瀏覽器).context_click(元素).perform()
1)右鍵單擊:context_click()
2)雙擊:double_click()
3)鼠標(biāo)懸停:move_to_element()
4)拖動:drag_and_drop()