🔦 在结果列表中筛选
本节介绍在元素列表中按需要进行筛选,获取指定元素。
eles()
、nexts()
等能够获取多个元素的方法,返回的列表可进行进一步筛选,以获取指定的元素。
说明
浏览器页面对象和SessionPage
产生的元素列表均有此功能,前者筛选功能比后者多。
示例1,筛选并返回元素列表:
from DrissionPage import Chromium
tab = Chromium().latest_tab
tab.get('https://www.baidu.com')
eles = tab('#s-top-left').eles('t:a') # 获取左上角导航栏内所有<a>元素
for ele in eles.filter.displayed(): # 筛选出显示的元素列表并逐个打印文本
print(ele.text, end=' ')
输出:
新闻 hao123 地图 贴吧 视频 图片 网盘 文库 更多
示例2,筛选并返回第一个元素:
from DrissionPage import Chromium
tab = Chromium().latest_tab
tab.get('https://www.baidu.com')
eles = tab('#s-top-left').eles('t:a') # 获取左上角导航栏内所有<a>元素
print(eles.filter_one.displayed().text) # 筛选出显示的元素并返回第一个
输出:
新闻