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)
|