将HTML字符串标记转换为字符串Python



我正在尝试使用Python将HTML字符串标记转换为字符串。

以下是我试图转换的内容:

htmltxt = "<b>Hello World</b>".

结果应该以粗体显示为Hello World。但我越来越像了

<html><body><b>Hello World</b></body></html>

下面的代码片段

from bs4 import BeautifulSoup
htmltxt = "<b>Hello World</b>"
soup = BeautifulSoup(htmltxt, 'lxml')

有人能建议我如何皈依吗?

在这种情况下,您试图从汤对象中找到一个标记。假设这是唯一的一个,并且没有id或类名,您可以使用:

hello_world_tag = soup.find("b")
hello_world_tag_text = hello_world_tag.text
print(hello_world_tag_text) # Output: 'Hello World'

这里的关键是".text"。使用beautiful汤查找特定的标记将返回整个标记,但.text方法只返回该标记中的文本。

编辑以下评论:

我仍然建议使用bs4来解析html。一旦你有了你的文本,如果你想用粗体,你可以用打印

print('33[1m' + text)

注意 您不会得到bold字符串本身,它总是必须通过解释或格式化来完成

使用BeautifulSoup从HTML字符串中提取文本,您可以调用方法textget_text():

from bs4 import BeautifulSoup
htmltxt = "<b>Hello World</b>"
soup = BeautifulSoup(htmltxt, 'lxml')
soup.text

最新更新