为了账号安全,请及时绑定邮箱和手机立即绑定

如何使用 python 解析多个类或标头名称中的 HTML

如何使用 python 解析多个类或标头名称中的 HTML

森栏 2023-08-08 16:34:14
我正在使用.find()BeautifulSoup 来尝试访问 html 中的文本和值,但它似乎嵌入在第二层中,而不是仅仅位于单个“类”下。这是我的目标:<h6 class="var1">     <span class="var2">number</span>     <span class="var3">text1</span>     <span class="var4">text2</span>     </h6>我想检索数字、文本1 和文本2。对于我尝试使用的号码:number=card.find('h6', {'class': 'var1'}).find('span', {'class': 'var2'}).text但这没有任何结果。任何帮助表示赞赏!
查看完整描述

1 回答

?
偶然的你

TA贡献1841条经验 获得超3个赞

如果我将 html 传递到代码中,它会产生正确的结果。因此,我假设传递的 HTML 不包含您期望的 HTML 标记。您可以通过运行来检查这一点print(card.prettify())


这表明您的代码有效:


from bs4 import BeautifulSoup


html = """<h6 class="var1">

    <span class="var2">number</span>

    <span class="var3">text1</span>

    <span class="var4">text2</span>

</h6>"""


card = BeautifulSoup(html)

print(card.prettify()) # Have a look to see if your html contains the relavant html elements

number=card.find('h6', {'class': 'var1'}).find('span', {'class': 'var2'}).text

print(number)


查看完整回答
反对 回复 2023-08-08
  • 1 回答
  • 0 关注
  • 45 浏览
慕课专栏
更多

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信