是否有任何 python 包实质上将呈现的 HTML 结构转换为 JSON/YAML 格式

Is there any python package which essentially converts the presented HTML structure into JSON/YAML format

例如 HTML

中存在一个代码
<p>Example of a paragraph element.</p> 
<ul>
  <li>Coffee</li>
  <li>Tea</li>
  <li>Milk</li>
</ul>

需要表示成(如果是 yaml 格式)或 json 也可以

p: Example of a paragraph element.
ul:
   li:Coffee
   li:Tea
   li:Milk

不确定是否有包,但您可以遍历 html 中的每个标签,然后使用 .name.text 来解决问题,然后写归档:

html = '''<p>Example of a paragraph element.</p> 
<ul>
  <li>Coffee</li>
  <li>Tea</li>
  <li>Milk</li>
</ul>'''


from bs4 import BeautifulSoup

soup = BeautifulSoup(html, 'html.parser')

for tag in soup.find_all():
    print (tag.name + ':' + tag.text)

输出:

p:Example of a paragraph element.
ul:
Coffee
Tea
Milk

li:Coffee
li:Tea
li:Milk