1、elements返回的是一个元素列表
"""
匹配元素列表有一个小应用:
匹配单个元素的时候,如果找不到就会抛出异常;
匹配元素列表的时候,如果找不到就会返回空列表;
根据这一特性,当我们想判断某元素是否存在的时候,就可以匹配元素列表,然后判断列表是否为空,如果列表为空,代表元素不存在,反之元素存在。
"""
from selenium import webdriver
# 创建浏览器驱动对象
driver = webdriver.Chrome(r"D:\chromedriver\chromedriver_win32-V103.0.5060.53\chromedriver.exe")
driver.implicitly_wait(3) # 智能等待_隐性等待
# 访问网址
driver.get("http://127.0.0.1:8088/")
# 输入用户名
driver.find_element_by_name("username").send_keys("libai")
# 输入密码
driver.find_element_by_name("password").send_keys("opmsopms123")
# 点击登录按钮
driver.find_element_by_tag_name("button").click()
# 匹配每一个菜单栏, 用elements
r_list = driver.find_elements_by_css_selector("body > section > div.left-side.sticky-left-side > div.left-side-inner > ul > li")
2、返回的是一个列表
print(type(r_list))
print(r_list)
# 输出:
# <class 'list'>
# [
# <selenium.webdriver.remote.webelement.WebElement (session="7949da2a2e27bd4", element="a3104b6f")>,
# <selenium.webdriver.remote.webelement.WebElement (session="7949da2a2e27bd4", element="07ee6ebd")>]
3、返回元素列表的文本值
for r_one in r_list:
print(r_one.text)
# 输出:
# 文本值1
# 文本值2