优先参考官方文档:https://selenium-python.readthedocs.io/locating-elements.html
中文官方文档:https://selenium-python-zh.readthedocs.io/en/latest/locating-elements.html
转自https://www.cnblogs.com/yanyongfu/articles/17600408.html
python web Selenium 中find_element用法
from selenium.webdriver.common.by import By
By.XPATH, "//input[@name='username']"
By.大写, "外面加引号"
find_element() 方法用于在页面上查找单个元素。它接受两个参数:
1. By:它是一个定位元素的方法,比如ID,name,class name,tag name,link text,partial link text,xpath等。
2. Value:它是某个定位元素的值,比如ID的值,name的值,class name的值,tag name的值,link text的值,partial link text的值,xpath的值等。
例如:
# 查找ID为“username”的元素
element = driver.find_element(By.ID, "username")
# 查找name为“password”的元素
element = driver.find_element(By.NAME, "password")
# 查找class name为“login-btn”的元素
element = driver.find_element(By.CLASS_NAME, "login-btn")
# 查找tag name为“input”的元素
element = driver.find_element(By.TAG_NAME, "input")
# 查找link text为“Forgot Password?”的元素
element = driver.find_element(By.LINK_TEXT, "Forgot Password?")
# 查找partial link text为“Forgot”的元素
element = driver.find_element(By.PARTIAL_LINK_TEXT, "Forgot")
# 查找xpath为“//input[@name='username']”的元素
element = driver.find_element(By.XPATH, "//input[@name='username']")
# 使用 XPath 定位包含 "按钮" 文本的任何元素
element = driver.find_element(By.XPATH, "//*[contains(text(),'按钮')]")
# 使用 XPath 定位 <span> 元素
span_element = driver.find_element(By.XPATH, "//span[text()='按钮']")