Python + selenium 元素定位(四),By方法查找元素----driver.find_elementS(By.XXX, “selector”)

By方法查找元素

from  selenium.webdriver.common.by  import  By

driver.find_elementS(By.XXX, “selector”)
返回的是一个列表,如果匹配不到会怎么样?
如果匹配不到,则返回一个空列表。

1、id 通过元素的id属性来定位元素

id 通过 id属性来定位元素

eles = driver.find_elements(By.ID, 'IamID')  # 返回一个列表
print (type(eles))
print (eles)
print (len(eles))
eles[1].send_keys("通过 id属性来定位元素")

2、name 通过元素的name属性来定位元素

name 通过name属性来定位元素

driver.find_elements(By.NAME, 'first')[1].send_keys("通过name属性来定位元素")

3、class name 通过class属性来定位元素

如果class属性的值有空格,可以截取部分属性值来定位元素。
class name 通过class属性来定位元素
如果class属性的值有空格,可以截取部分属性值来定位元素。

driver.find_elements(By.CLASS_NAME, 'Chamber')[0].send_keys("满把晴光护玉栏")

4、tag_name 根据标签的标签名来定位元素

tag_name 根据标签的标签名来定位于素

driver.find_elements(By.TAG_NAME, 'input')[3].send_keys("人间万姓仰头看")

5、link_text 根据 超链接标签中的文本内容来定位元素

link_text 根据 超链接标签 中的文本内容来定位元素

print (driver.find_elements(By.LINK_TEXT, '曹雪芹')[0].get_attribute("value"))

6、partial_link_text 根据 超链接标签中的部分文本内容来定位元素

partial_link_text

print (driver.find_elements(By.PARTIAL_LINK_TEXT, '白')[2].text)

7、css selector 根据css选择器来定位元素

css selector 根据css选择器 来定位元素

print (driver.find_elements(By.CSS_SELECTOR, '#form > span > a:nth-child(4)')[0].text)

8、xpath 根据xpath表达式来定位元素

xpath 根据xpath表达式来定位元素

print (driver.find_elements(By.XPATH, '//*[@id="form"]/br')[0].tag_name)

Python + selenium 元素定位系列
Python + selenium 元素定位(五)-----css selector 的高级用法

你可能感兴趣的:(selenium,Python,python,selenium,开发语言)