BeautifulSoup

怎么使用BeautifulSoup处理嵌套列表

小亿
115
2024-05-14 12:56:15
栏目: 编程语言

要处理嵌套列表,可以使用BeautifulSoup的find_all方法来查找所有符合条件的标签,然后使用递归的方式处理嵌套列表。以下是一个示例代码:

from bs4 import BeautifulSoup

html = "<ul><li>Item 1</li><li>Item 2<ul><li>Subitem 1</li><li>Subitem 2</li></ul></li><li>Item 3</li></ul>"
soup = BeautifulSoup(html, 'html.parser')

def process_list(tag):
    for item in tag.find_all('li'):
        print(item.text)
        if item.ul:
            process_list(item.ul)

process_list(soup.ul)

在这个示例中,我们首先创建了一个包含嵌套列表的HTML字符串,然后使用BeautifulSoup解析这个HTML。接着定义了一个处理列表的函数process_list,该函数递归地处理每个li标签,并打印出其文本内容。如果li标签下有ul标签,则递归调用process_list函数处理嵌套的列表。

当我们运行这段代码时,将输出如下内容:

Item 1
Item 2
Subitem 1
Subitem 2
Item 3

这样就可以使用BeautifulSoup处理嵌套列表了。希望对你有帮助!

0
看了该问题的人还看了