我想从包含内部br标签的td标签中提取文本。
from bs4 import BeautifulSoup
html = "<td class=\"text\">This is <br/>a breakline<br/><br/></td>"
soup = BeautifulSoup(html, 'html.parser')
print(soup.td.string)
实际输出:None
预期输出:This is a breakline
答案 0 :(得分:2)
来自美丽的汤document:
如果标记包含多个内容,则不清楚
.string
应引用的内容,因此.string
定义为无:
如果你想要文字部分(document):
如果您只想要文档或标记的文本部分,则可以使用
get_text()
方法。它返回文档中或标记下的所有文本,作为单个Unicode字符串:
所以你可以使用以下内容:
print(soup.get_text())
针对特定代码soup.td.get_text()
答案 1 :(得分:0)
这将为您提供所需内容:
print(soup.td.text)
这适用于特定的td
代码
否则你也有:
print(soup.text)