from selenium.webdriver.common.by import By
driver.find_elementS(By.XXX, “selector”)
返回的是一个列表,如果匹配不到会怎么样?
如果匹配不到,则返回一个空列表。
id 通过 id属性来定位元素
eles = driver.find_elements(By.ID, 'IamID') # 返回一个列表
print (type(eles))
print (eles)
print (len(eles))
eles[1].send_keys("通过 id属性来定位元素")
name 通过name属性来定位元素
driver.find_elements(By.NAME, 'first')[1].send_keys("通过name属性来定位元素")
如果class属性的值有空格,可以截取部分属性值来定位元素。
class name 通过class属性来定位元素
如果class属性的值有空格,可以截取部分属性值来定位元素。
driver.find_elements(By.CLASS_NAME, 'Chamber')[0].send_keys("满把晴光护玉栏")
tag_name 根据标签的标签名来定位于素
driver.find_elements(By.TAG_NAME, 'input')[3].send_keys("人间万姓仰头看")
link_text 根据 超链接标签 中的文本内容来定位元素
print (driver.find_elements(By.LINK_TEXT, '曹雪芹')[0].get_attribute("value"))
partial_link_text
print (driver.find_elements(By.PARTIAL_LINK_TEXT, '白')[2].text)
css selector 根据css选择器 来定位元素
print (driver.find_elements(By.CSS_SELECTOR, '#form > span > a:nth-child(4)')[0].text)
xpath 根据xpath表达式来定位元素
print (driver.find_elements(By.XPATH, '//*[@id="form"]/br')[0].tag_name)
Python + selenium 元素定位系列
Python + selenium 元素定位(五)-----css selector 的高级用法