八大定位元素:
#HTML例子: < input type = "text"class ="s_ipt" name="wd" id="kw" maxlength="100" autocomplete="off" >
driver.find_element_by_id("kw") 根据id定位(较常用)
driver.find_element_by_name("wd") 根据name定位(较常用)
driver.find_element_by_class_name("s_ipt") 根据class定位(较常用)
driver.find_element_by_xpath("//*[@id='kw']") 根据xpash定位(较常用)
driver.find_element_by_css_selector("#kw") 根据css定位(较常用)
driver.find_element_by_tag_name("input") 根据标签名称定位(不建议用,会重复)
#<a href="/intl/en/about.html">About Google</a>
driver.find_element_by_link_text("About Google") 根据文本链接上的文字定位
driver.find_element_by_partial_link_text("About") 根据模糊匹配文本链接的文字定位
总结:
1. 当页面元素有id属性时,最好尽量用id来定位。
2. xpath很强悍,但定位性能不是很好,所以还是尽量少用。如果确实少数元素不好定位,可以选择xpath或cssSelector。
3. 当要定位一组元素相同元素时,可以考虑用tagName或name。
4. 当有链接需要定位时,可以考虑linkText或partialLinkText方式。