从HTML中的一个节点获取所有链接

问题描述 投票:0回答:1

我正在尝试获取链接到一个节点的所有链接,其结构如下:

<li class="" data-vc-node-id="10"><span><i></i></span>
    <a href="A" ><i></i><span></span></a>
    <div>
        <ul>
            <li>
                <div>
                    <ul>
                        <li>
                            <a href="B"></a>

                        </li>                   
                        <li>
                            <a href "C"></a>
                        </li>
                        <li>
                            <a href="D"></a>
                        </li>
                    </ul>
                </div>
            </li>       
        </ul>
    </div>
</li>

我想要“data-vc-node-id =”10“”的所有链接,我想让他们做类似的事情:

for tag in soup.findAll('data-vc-node-id="10"',href=True):
   print tag    

但当然,我从中得不到任何东西:/

我怎么能得到它们?

谢谢!

python html beautifulsoup href
1个回答
1
投票

使用BeautifulSoup.select()方法:

...
for el in soup.select('li[data-vc-node-id="10"] a'):
    print(el)

输出:

<a href="A"><i></i><span></span></a>
<a href="B"></a>
<a href="C"></a>
<a href="D"></a>
© www.soinside.com 2019 - 2024. All rights reserved.