python - 如何在存在多个列表的页面上获取每个无序 HTML 列表中的元素计数?
问题描述
我可以计算单个元素的数量,尤其是在我试图抓取<li>
的网页上。
但我希望它计算页面上<li>
每个元素的数量<ul>
。
这就是我试图<li>
在一个页面上计算的所有内容,一个简单的
list = driver.find_elements_by_tag_name("li")
print(len(list))
我有一个页面,上面有很多类似下面的列表,完全相同的类名,除了<li>
标签内的文本外,其他所有内容都相同。
<ul class="tags">
<li class="tag"><a rel="tag" class="term" href="/site1">Flight</a></li>
<li class="tag"><a rel="tag" class="term" href="/site2">Action</a></li>
<li class="tag"><a rel="tag" class="term" href="/site3">Gravity</a></li>
</ul>
我想计算页面上每个标签内的元素数量。
解决方案
试试下面的代码。它会先找到所有<ul>
标签,然后找到链接的<li>
标签
elements=driver.find_elements_by_tag_name('ul')
#print(len(elements))
for ele in elements:
print(len(ele.find_elements_by_xpath("./li")))
输出:
2
3
4
推荐阅读
- r - 交叉验证模型中的误差 y 常数
- python - ValueError: DepthwiseConv2D 要求 stride 属性包含 4 个值,但得到:3
- java - 为什么我的树旋转没有呈现正确的值
- spring-boot - 不稳定的 Primefaces 文件上传监听器调用
- flutter - 错误的图标flutter android素材
- keystonejs - Keystonejs 6 中的静态文件服务
- javascript - 如果条件为真,如何使用 jQuery 禁用复选框?
- amazon-web-services - AWS 基于用户池创建用户存储
- javascript - 检索钩子的父组件引用
- android - 为什么应用程序在 Firebase 项目的项目设置的 App Check (beta) 中未注册?