By方法查找元素
from selenium.webdriver.common.by import By
2类8种
driver.find_element(By.XXX, “selector”)
如果匹配到多个,则返回匹配到的第一个。
如果匹配不到,则抛出NoSuchElementException异常(报错)。
1、id 通过元素的id属性来定位元素
id 通过元素中的id属性来定位元素
ele = driver.find_element(By.ID, "IamID") # 类型为 WebElement 类
ele.clear()
ele.send_keys("By方法查找元素,ID---通过元素中的id属性来定位元素")
2、name 通过元素的name属性来定位元素
name 通过元素的name属性来定位元素
driver.find_element(By.NAME, "first").send_keys("通过元素的name属性来定位元素")
3、class name 通过元素的class属性来定位元素
class name 通过元素的class属性来定位元素
driver.find_element(By.CLASS_NAME, 'poem').send_keys("通过元素的class属性来定位元素")
4、tag_name 通过标签的标签名来定位元素
tag_name 通过标签的表掐你名来定位元素
print (driver.find_element(By.TAG_NAME, 'form').get_attribute("id"))
print (driver.find_element(By.TAG_NAME, 'form').text)
5、link-text 根据 超链接标签 中的文本内容来定位元素
link_text 根据 超链接标签 中的文本内容来定位元素
print (driver.find_element(By.LINK_TEXT, '抬头看明月,').text)
6、partial_link_text 根据 超链接标签 中的 部分文本内容来定位元素
partial_link_text 根据 超链接标签 中的 部分文本内容来定位元素
print (driver.find_element(By.PARTIAL_LINK_TEXT, "明月").text)
7、css selector 根据css选择器来定位元素
css selector 根据 css选取器来定位元素
print (driver.find_element(By.CSS_SELECTOR, '#menyue').text)
8、xpath 根据xpath表达式来定位元素
xpath 根据xpath表达式来定位元素
print (driver.find_element(By.XPATH, '//*[@id="menyue"]').text)