靓汤解析

2024-05-17 05:43:58 发布

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

我想解析一个如下所示的html代码:

<div>
<span>Current Status</span>FINAL DECISION </div>
<div>
<span>Applicant</span>GC Planning Partnership Ltd </div>
<div>
<span>Agent</span>GC Planning Partnership Ltd </div>
<div>
<span>Wards</span>Springfield Ward </div>
<div>
<span>Location Co ordinates</span>Easting 534379 Northing 187690 </div>
<div>
<span>Parishes</span> </div>
<div>
<span>OS Mapsheet</span>  </div>
<div>

现在,我不想得到在<span>标记之间的文本,而是它后面的信息。从上面的示例中,我想提取“Final Decision”、“Springfield Ward”或类似的值。我对解析html非常陌生,我不知道如何到达那里。你知道吗

我会很高兴有任何提示或想法!你知道吗

非常感谢!你知道吗


Tags: 代码divhtmlstatuscurrentgcfinalspan
1条回答
网友
1楼 · 发布于 2024-05-17 05:43:58

如果您希望在span元素后面的文本具有特定的文本-您可以先按文本查找span元素,然后获取^{}

soup.find("span", text="Current Status").next_sibling

如果要循环所有span元素,并为每个span元素获取下一个文本同级:

from bs4 import BeautifulSoup, NavigableString

for span in soup.find_all("span"):
    next_text = span.next_sibling
    if isinstance(next_text, NavigableString):
        print(next_text)

相关问题 更多 >