在美丽的汤中保存

时间:2012-11-15 17:59:49

标签: python html-parsing beautifulsoup

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

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

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

2 个答案:

答案 0 :(得分:0)

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

for item in quotes:
  quote = re.sub(r"\<.*?\>", "", quote)

答案 1 :(得分:0)

findAll本身将为您提供HTML节点列表。

如果您想要检索其文字内容(不含标签),请使用.get_text()

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

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

另见:
 BeautifulSoup innerhtml?