gpt4 book ai didi

python - 如何在 python 中抓取分布在多行的 html 标签?

转载 作者:太空宇宙 更新时间:2023-11-04 09:11:14 25 4
gpt4 key购买 nike

我正在尝试用 python 抓取网页。我能够轻松获得单行标签的结果,但对于分布在多行的标签,我的代码无法检索任何内容。

在 HTML 源代码中,单行标签显示为:

<td><span class="facultyName">John Matthew Falletta, MD</span>

并且多行标签呈现为:

<td><span class="label">Division:</span>
&nbsp;&nbsp;
</td><td>Hematology/Oncology</td>

这是我写的:

patFinderFullname = re.compile('<span class="facultyName">(.*)</span>')

fullname = re.findall(patFinderFullname,webpage) #works fine

patFinderDivision = re.compile('<span class="label">Division:</span>&nbsp;&nbsp;</td><td>(.*)</td>')

division = re.findall(patFinderDivision,webpage) #doesn't work

这里我的网页变量包含必须抓取的 url。有人可以指出我遗漏了什么或哪里错了吗?

最佳答案

我强烈建议您使用 BeautifulSoup .它是一个用于解析 HTML 文档的 Python 库。

P.s:如果您想坚持使用自己的代码,请使用\s* 跳过正则表达式中的空格。

patFinderDivision = re.compile('<span class="label">Division:</span>\s*&nbsp;&nbsp;\s*</td><td>(.*)</td>')

关于python - 如何在 python 中抓取分布在多行的 html 标签?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/14888508/

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