查看網(wǎng)頁(yè)頁(yè)面代碼可以使用以下途徑:
Chrome:按F12或者網(wǎng)頁(yè)頁(yè)面右鍵的“檢查”??????????? Firefox:網(wǎng)頁(yè)頁(yè)面右鍵的“審查元素”
1.通過(guò)id屬性來(lái)定位元素(id屬性在html文檔中必須具有唯一性)
?? find_element_by_id()方法
?? 文本輸入框定位:find_element_by_id('kw')
2.通過(guò)name屬性來(lái)定位元素(name屬性在當(dāng)前頁(yè)面中)
?? find_element_by_name()方法
?? 文本輸入框定位:find_element_by_name('wd')
3.通過(guò)class屬性來(lái)定位元素
?? find_element_by_class_name()方法
?? 文本輸入框定位:find_element_by_class_name('s_ipt')
4.通過(guò)tag來(lái)定位元素
?? find_element_by_tag_name()方法???????? 沒(méi)成功!1烀3筛!!略過(guò)....................
5.通過(guò)link元素標(biāo)簽對(duì)之間的文本信息來(lái)定位元素
?? find_element_by_link_text()方法
6.通過(guò)partial link定位元素萍鲸,和link類似闷叉,只不過(guò)是部分文本信息來(lái)進(jìn)行定位
?? find_element_by_partial_link_text()方法
7.find_element_by_xpath()方法
?? 7.1絕對(duì)路徑來(lái)定位:find_element_by_xpath('/html/body/.........')???
?? 文本框:find_element_by_xpath("/html/body/div[2]/div[1]/div/div[1]/div/form/span[1]/input")
?? 7.2通過(guò)屬性定位元素
?? find_element_by_xpath("http://標(biāo)簽名[@屬性=‘屬性值’]")
?? id屬性:find_element_by_xpath("http://input[@id = 'kw']")
?? name屬性:find_element_by_xpath("http://input[@name = 'wd']")
?? 如果不想指定標(biāo)簽名,可以將標(biāo)簽名用 * 代替脊阴,xpath不局限于id握侧、name、class這三個(gè)屬值嘿期, 元素的任意屬性都可以使用品擎,只要它能唯一標(biāo)識(shí)一個(gè)元素
?? 7.3通過(guò)標(biāo)簽定位元素
?? 當(dāng)元素沒(méi)有唯一標(biāo)識(shí)的屬性可以利用時(shí),可以往上層級(jí)進(jìn)行搜索备徐,假如標(biāo)簽中有唯一標(biāo)識(shí)萄传,那 么可以利用標(biāo)簽名來(lái)進(jìn)行定位
?? find_element_by_xpath("http://span[@class = 'bg s_ipt_wr']/input")
?? 7.4通過(guò)多個(gè)屬性組合定位元素
?? 當(dāng)一個(gè)屬性不能唯一區(qū)分一個(gè)元素,可以用邏輯運(yùn)算符and來(lái)連接多個(gè)屬性查找元素
?? find_element_by_xpath("http://input[@id = 'kw' and @name = 'wd']")
8.通過(guò)CSS定位元素
?? 8.1通過(guò)id屬性定位元素
?? 文本框:find_element_by_css_selector("#kw")
?? 按鈕:find_element_by_css_selector("#su")
?? 8.2通過(guò)class屬性定位元素
?? 文本框:find_element_by_css_selector(".s_ipt")
?? 按鈕:find_element_by_css_selector(".bg s_btn")
?? 8.3通過(guò)其他屬性值來(lái)定位元素
?? 文本框:find_element_by_css_selector("[name = 'wd']")
?????????????????? find_element_by_css_selector("[maxlength = 255]")
? ? ? ? ? ? ? ? ?? find_element_by_css_selector("[autocomplete = 'off']")
?? 8.4通過(guò)層級(jí)父子關(guān)系來(lái)定位元素
?? 文本框:find_element_by_css_selector("span > input ")
?? 拓展:find_element_by_css_selector("span > input.s_ipt")