元素名称 |
描述 |
Webdriver API |
id |
id属性 |
driver.find_element(By.ID, "id属性值") |
name |
name属性 |
driver.find_element(By.NAME, "name属性值") |
class_name |
class属性 |
driver.find_element(By.CLASS_NAME, "class_name属性值") |
tag_name |
标签名 |
driver.find_element(By.TAG_NAME, "标签名") |
link_text |
a元素的文本内容-精准匹配 |
driver.find_element(By.LINK_TEXT, "超链接全部文本值") |
partial_link_text |
a元素的文本内容-模糊匹配 |
driver.find_element(By.PARTIAL_LINK_TEXT, "超链接部分文本值") |
注意:当页面内有多个元素的特征值是相同的时候,定位元素的方法执行时,默认只会获取第一个符合要求的特征对应的元素。
因此,定位元素时需要尽量保证使用的特征值能够代表目标元素在当前页面的唯一性。
比如:class="panel-body has-table scrollbar-hover",只能使用其中一个值panel-body或者has-table或者scrollbar-hover,中间的空格代表间隔符,表示class有多个属性。
基本值(Atomic Value)指的是不能再分解的单个值,XML中的一些基本值包括:
基本值就是XML文档中的终端节点,不再包含子元素。
例如:
John
30
上述XML中:
基本值有以下特点:
每个元素以及属性都有一个父。
在下面的例子中,book 元素是 title、author、year 以及 price 元素的父:
Harry Potter
J K. Rowling
2005
29.99
元素节点可有零个、一个或多个子。
在下面的例子中,title、author、year 以及 price 元素都是 book 元素的子:
Harry Potter
J K. Rowling
2005
29.99
拥有相同的父的节点
在下面的例子中,title、author、year 以及 price 元素都是同胞:
Harry Potter
J K. Rowling
2005
29.99
某节点的父、父的父,等等。
在下面的例子中,title 元素的先辈是 book 元素和 bookstore 元素:
Harry Potter
J K. Rowling
2005
29.99
某个节点的子,子的子,等等。
在下面的例子中,bookstore 的后代是 book、title、author、year 以及 price 元素:
Harry Potter
J K. Rowling
2005
29.99
基本介绍:
附带捎上一份selenium相关总结脑图