我能在不添加额外标签的情况下美化一下吗?

2024-09-29 23:24:58 发布

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

这是我的密码:

from bs4 import BeautifulSoup as bs
html = "<div><span>I am Spantacus</div></span>"
pretty = bs(html).prettify()
print("after:\n", pretty)

我想要的:

html的一种缩进良好的换行-d表示,没有添加任何内容,即

<div>
  <span>
    I am Spantacus
  </span>
</div>

取而代之的是:

<html>
 <body>
  <div>
   <span>
    I am Spantacus
   </span>
  </div>
 </body>
</html>

从进入prettify()开始,似乎htmlbody标记是通过汤的__init__添加的,而不是通过修饰。是否有一些关键字或选项来禁用此添加


Tags: fromimportdiv密码bshtmlaspretty
2条回答

试试这个

from bs4 import BeautifulSoup

html = "<div><span>I am Spantacus</div></span>"
soup1 = BeautifulSoup(html, "html.parser")
# you can also use lxml for parse

pretty = soup1.prettify()
print("after:\n", pretty)

有关详细信息here

使用以下命令遍历到正文并打印输出:

for c in soup.html.body.contents: 
    print(c.prettify())

根据您的需要进行修改

相关问题 更多 >

    热门问题