一尘不染

如何使用BeautifulSoup查找节点的子节点

python

我想获取所有<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>而不是其他孩子。

就像我想选择:

<a>link1</a>

阅读 311

收藏
2020-12-20

共1个答案

一尘不染

尝试这个

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