我想要得到所有的<a>个标签,它们都是<li>的子级:

<div>
<li class="test">
    <a>link1</a>
    <ul> 
       <li>  
          <a>link2</a> 
       </li>
    </ul>
</li>
</div>

我知道如何查找具有特定类的元素,如下所示:

soup.find("li", { "class" : "test" }) 

但我不知道如何找到所有<a><li class=test>岁的子元素,而不是其他子元素.

就像我想 Select 的那样:

<a>link1</a>

推荐答案

试试这个

li = soup.find('li', {'class': 'text'})
children = li.findChildren("a" , recursive=False)
for child in children:
    print(child)

Html相关问答推荐

srcset和大小总是下载最大的

如何防止SVG图标出现断行?

有没有可能设置div的边框宽度相对于其父宽度和高度?'

自动字间距以适应行CSS

UseEffect()从不调用preact

更改垫子输入的涟漪 colored颜色

如何创建带有粘性列和标题的网格?

风格规则应该适用于响应图像的哪些方面?哪种规则适用于<;图片和gt;,哪种规则适用于<;img>;?

现代网络浏览器可以并行下载哪些类型的网络资源?还有,什么东西不能并行下载?

在弹性框布局中的第n个元素后强制换行

Div 容器不会遵守边距、填充或间隙

如何实现与内嵌图像对齐的自动换行?

悬停时宽度从 0 过渡到自动

并排对齐两个文本区域列

CSS:第一个类型的伪类没有按预期工作

如何制作一个空的网格模板行来填充剩余空间?

将 div 放在图片旁边而不是下方

如何使用 html 和 css 为卡片创建此背景框架

在部分而不是正文中定义页面宽度

尽管设置了 width:100% left:0,但居中对齐的 CSS 动画并不对称