WebAdriver API 自动化元素定位
百度搜索框和搜索按钮
id定位:
find_element_by_id("kw")
find_element_by_id("su")
neme定位:
find_element_by_name("wd")
class定位:
find_element_by_class_name("s_ipt")
tag定位(元素的标签名):
find_element_by_tag_name("input")
link(文本链接)定位:
find_element_by_link_text(“新闻”)
partial link定位:
假设:<a href="http://news.baidu.com" target="_blank" class="mnav c-font-normal c-color-t">你们好随机啦啦啦啦</a>
find_element_by_partial_link_text("你们好“)
find_element_by_partial_link_text("啦啦啦”)
XPath定位:
>xpath-绝对定位:
find_element_by_xpath("/html/body/div/div[2]/div/div/div/from/span/input")
>xpath元素属性定位:
find_element_by_xpath("//input[@id='kw']")
find_element_by_name("//*[@class='wd']")
ps:标签名可以用*代替,元素可使用任意唯一标识
>xpath层级与属性结合:
find_element_by_xpath("//span[@class='bg_s_ipt']/span/input")
find_element_by_xpath("//span[@class='bg_s_ipt']/from/span[2]/input")
ps:父子关系
>多元素定位(单一元素非唯一标识情况下):
find_element_by_xpath("//input[@id='kw' and @class='s_ipt']")
>contains方法定位:匹配属性中包含的字符串
find_element_by_xpath("//span[cntains(@class,'s_ipt_wr')]/input")
>匹配文本信息定位:
find_element_by_xpath("//a[text(),'新闻‘)]")
find_element_by_xpath("//a[contains(text(),'啦啦啦’)]")
PS:elements 就是复数了