检测Tag是否是块级元素?

问题描述 投票:0回答:1

如何检查 BeautifulSoup 标签是否是块级元素(例如

<p>
<div>
<h2>
)或“短语内容”元素(如
<span>
<strong>
)?

基本上我想要一个函数,根据 HTML 规范,对于

<p>
标签内允许的任何标签返回 True,对于
<p>
标签内不允许的任何标签返回 false。

我问这个问题是因为我不想自己对允许的标签列表进行硬编码,但我无法从

bs4
html
文档中找到有关判断标签是否在表达内容的任何内容。

BeautifulSoup 已经知道哪些元素可以在

<p>
内使用,哪些元素不允许:

>>> BeautifulSoup('<p><h2>')
<html><body><p></p><h2></h2></body></html>
>>> BeautifulSoup('<p><em>')
<html><body><p><em></em></p></body></html>

如果Python的

html
模块能给我答案的话,我也很乐意使用。

python html beautifulsoup
1个回答
0
投票

我不确定美丽汤知道你在说什么。 它更像是使用某种引擎来解析和修复 HTML。 有这个方法

soup.get_text()
它返回 HTML 中的所有文本。 也许您正在寻找这个。 如果没有,那么它将有助于理解为什么你需要这样的功能。

© www.soinside.com 2019 - 2024. All rights reserved.