在Beautifulsoup中获取无标签元素

2024-09-29 21:44:05 发布

您现在位置:Python中文网/ 问答频道 /正文

给出以下html片段:

<div class="mapCopy">
    <b>
        <a href="someurl.com">
          URL Text
        </a>
    </b>
    <br/>
       Address Line 1
    <br/>
       Address Line 2
    <br/>
       City, State, Zip
    <p>
        Phone: (123) 456-7890
    <br/>
        Fax: (123) 456-7890
    </p>
</div>

如何仅提取地址行1、地址行2、城市、州和邮政编码?我相信我应该能够迭代div并排除任何带有<b>标记的元素,但我不确定必要的语法


Tags: textbrdivcomurlcityaddress地址
1条回答
网友
1楼 · 发布于 2024-09-29 21:44:05

您可以提取<div>中不包含标记的所有子级:

>>> S = BeautifulSoup("<div...")
>>> [child.strip() for child in S.find('div').children
...      if "<" not in str(child)
...      and len(child) > 1
... ]
['Address Line 1', 'Address Line 2', 'City, State, Zip']

相关问题 更多 >

    热门问题