codecamp

selenium2 元素定位

"我们有许多方法对页面的元素进行定位,你可以根据自己的需要选择最合适的一种。Selenium提供了下面的方法进行元素定位:

find_element_by_id

find_element_by_name

find_element_by_xpath

find_element_by_link_text 

find_element_by_partial_link_text 

find_element_by_tag_name

find_element_by_class_name 

find_element_by_css_selector

寻找多个元素(下列方法会返回一个​list​,其余使用方式相同): 

find_elements_by_name 

find_elements_by_xpath 

find_elements_by_link_text​ 

find_elements_by_partial_link_text 

find_elements_by_tag_name 

find_elements_by_class_name*​ 

find_elements_by_css_selector

除了上面这些公有的方法,我们还有2个私有的方法来帮助页页面对象的定位。这两个方法就是​find_element​和​find_elements​:

from selenium.webdriver.common.by import By

driver.find_element(By.XPATH,'//button[text()="Some Text"]')
driver.find_elements(By.XPATH,'//button')

By​类的可用属性如下:

 ID
"id" 
XPATH  "xpath"
LINK_TEXT "link text" 
PARTIAL_LINK_TEXT  "partial link text"
NAME  "name"
TAG_NAME  "tag_name"
CLASS_NAME "class name" 
 CSS_SELECTOR "css selector"


selenium2 使用Cookies
selenium2 根据id定位
温馨提示
下载编程狮App,免费阅读超1000+编程语言教程
取消
确定
目录

关闭

MIP.setData({ 'pageTheme' : getCookie('pageTheme') || {'day':true, 'night':false}, 'pageFontSize' : getCookie('pageFontSize') || 20 }); MIP.watch('pageTheme', function(newValue){ setCookie('pageTheme', JSON.stringify(newValue)) }); MIP.watch('pageFontSize', function(newValue){ setCookie('pageFontSize', newValue) }); function setCookie(name, value){ var days = 1; var exp = new Date(); exp.setTime(exp.getTime() + days*24*60*60*1000); document.cookie = name + '=' + value + ';expires=' + exp.toUTCString(); } function getCookie(name){ var reg = new RegExp('(^| )' + name + '=([^;]*)(;|$)'); return document.cookie.match(reg) ? JSON.parse(document.cookie.match(reg)[2]) : null; }