我正在尝试使用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字符串中提取文本,您可以调用方法text
或get_text()
:
from bs4 import BeautifulSoup
htmltxt = "<b>Hello World</b>"
soup = BeautifulSoup(htmltxt, 'lxml')
soup.text