Selenium 页面元素定位方法
在Selenium3中, WebDriver 提供8种不同的find_element_by定位方法来定位单个元素
方法 | 描述 | 参数 | 示例 |
---|---|---|---|
ID | 通过ID的属性值去定位查找单个元素 | id: 需要被查找的元素的ID | find_element_by_id('search') |
Name | 通过Name的属性值去定位查找单个元素 | name: 需要被查找的元素的名称 | find_element_by_name('q') |
Class_Name | 通过class的名称值去定位查找单个元素 | class_name: 需要被查找的元素的类名 | find_element_by_class_name('input-text') |
Tag_Name | 通过tag的名称值去定位查找单个元素 | tag: 需要被查找的元素的标签名称 | find_element_by_tag_name('input') |
Link_Text | 通过链接文字去定位查找单个元素 | link_text: 需要被查找的元素的链接文字 | find_element_by_link_text('Log In') |
Partial_Link_Text | 通过部分链接文字去定位查找单个元素 | link_text: 需要被查找的元素的部分链接文字 | find_element_by_partial_link_text('Long') |
XPath | 通过XPath的值去定位查找单个元素 | xpath: 需要被查找的元素的xpath | find_element_by_xpath('//*[@id="xx"]/a') |
Css_Selector | 通过CSS选择器去定位查找单个元素 | css_selector: 需要被查找的元素的ID | find_element_by_css_selector('#search') |
也提供了同样的find_elements_by的方式去定位多个元素,这些方法依据匹配的具体标准返回一系列的元素。
方法 | 描述 | 参数 | 示例 |
---|---|---|---|
id | 通过ID的属性值去定位查找多个元素 | id: 需要被查找的元素的ID | find_elements_by_id('search') |
name | 通过name的属性值去定位查找多个元素 | name: 需要被查找的元素的名称 | find_elements_by_name('q') |
class name | 通过class的名称值去定位查找多个元素 | class_name: 需要被查找的元素的类名 | find_elements_by_class_name('input-text') |
tag_name | 通过tag的名称值去定位查找多个元素 | tag: 需要被查找的元素的标签名称 | find_elements_by_tag_name('input') |
link_text | 通过链接文字去定位查找多个元素 | link_text: 需要被查找的元素的链接文字 | find_elements_by_link_text('Log In') |
partial_link_text | 通过部分链接文字去定位查找多个元素 | link_text: 需要被查找的元素的部分链接文字 | find_elements_by_partial_link_text('Long') |
xpath | 通过XPath的值去定位查找多个元素 | xpath: 需要被查找的元素的xpath | find_elements_by_xpath('//*[@id="xx"]/a') |
css_selector | 通过CSS选择器去定位查找多个元素 | css_selector: 需要被查找的元素的ID | find_elements_by_css_selector('#search') |