2

我正在创建解析器,并且我有以下构造:

quotes = soup.findAll('div',{'class':'text'})

但它剥离了所有 html 标签(如 br)。我怎样才能改变它?

4

2 回答 2

0

如果你想从文本中取出标签,你可以尝试这样的事情:

for item in quotes:
  quote = re.sub(r"\<.*?\>", "", quote)
于 2012-11-15T18:27:33.043 回答
0

findAll它本身会给你一个 HTML 节点列表。

如果要检索其文本内容(不带标签),请使用.get_text().

要获取这些节点的子节点(也作为对象),请使用.contentsor.children

为了将节点的子节点打印为格式良好的字符串,您可以使用.prettify(). 请注意,这不会完全保留原始格式。

另请参阅:
BeautifulSoup innerhtml?

于 2012-11-15T18:38:19.137 回答