如何从一个美丽汤对象中获取HTML。

96

我有以下的bs4对象列表:

>>> listing
<div class="listingHeader">
<h2>
....


>>> type(listing)
<class 'bs4.element.Tag'>

我想将原始HTML作为字符串提取出来。我尝试过:

>>> a = listing.contents
>>> type(a)
<type 'list'>

所以这样行不通。我该怎么做?

1个回答

176

只需获取字符串表示:

html_content = str(listing)

这是一个未经美化的版本。

如果您想要一个美化过的版本,请使用prettify()方法:

html_content = listing.prettify()

1
有没有办法将它转换为Unicode字符串?我遇到了一个错误:“WebDriverException: Message: u'missing ; before statement'” - user1592380
4
我遇到了像umlaut ä,ö,ü这样的特殊字符。你可以使用soup.prettify( formatter="html" )来美化输出 - 参考https://www.crummy.com/software/BeautifulSoup/bs4/doc/#output-formatters - gr4nt3d
当我将标签对象强制转换为字符串时,我会得到 \n\t\r。 - raviraj

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接