gpt4 book ai didi

python - BeautifulSoup:如何提取
中的
  • 信息
  • 转载 作者:行者123 更新时间:2023-12-01 09:24:20 25 4
    gpt4 key购买 nike

    我正在尝试提取li div内的信息使用 BeautifulSoup。

    这是 div 的示例代码我正在工作:

    <div class="list">
    <a href="/name1" target="_blank" title="name1">
    <img alt="name1" src="https://img.url.com/name1"/>
    <ul>
    <li>name1</li>
    <li>fullname1</li>
    </ul>
    </a>
    <a href="/name2" target="_blank" title="name2">
    <img alt="name2" src="https://img.url.com/name2"/>
    <ul>
    <li>name2</li>
    <li>fullname2</li>
    </ul>
    </a>
    <a href="/name3" target="_blank" title="name3">
    <img alt="name3" src="https://img.url.com/name3"/>
    <ul>
    <li>name3</li>
    <li>fullname3</li>
    </ul>
    </a>
    </div>

    我想做的是从两个 li 中提取“姓名”和“全名”文本。

    我想我需要创建一个 for循环来迭代列表,但我不知道如何做到这一点。 (实际上,该列表不仅仅是三个条目)。

    我遇到的另一个问题是如何让 soup 区分第一个 <li>name<li>第二个 <li>fullname<li>标签。

    我们将非常感谢您的帮助!

    最佳答案

    您可以将嵌套推导式与 BeautifulSoup 结合使用:

    from bs4 import BeautifulSoup as soup
    _div = soup(content, 'html.parser').find('div', {'class':'list'})
    results = [[i.text for i in b.find_all('li')] for b in _div.find_all('ul')]

    输出:

    [['name1', 'fullname1'], ['name2', 'fullname2'], ['name3', 'fullname3']]

    关于python - BeautifulSoup:如何提取 <div> 中的 <li> 信息,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/50557840/

    25 4 0
    Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
    广告合作:1813099741@qq.com 6ren.com