Python:将HTML片段分隔为段落

我有一段包含段落的HTML代码. (我的意思是p标签.)我想把字符串分成不同的段落.例如:

'''
<p class="my_class">Hello!</p>
<p>What's up?</p>
<p style="whatever: whatever;">Goodbye!</p>
'''

应该成为:

['<p class="my_class">Hello!</p>',
 '<p>What's up?</p>'
 '<p style="whatever: whatever;">Goodbye!</p>']

什么是一个很好的方法来解决这个问题?

解决方法:

如果你的字符串只包含段落,你可以使用精心设计的正则表达式和re.split().但是,如果您的字符串是更复杂的HTML,或者并不总是有效的HTML,您可能需要查看BeautifulSoup包.

用法如下:

from BeautifulSoup import BeautifulSoup 

soup = BeautifulSoup(some_html)

paragraphs = list(unicode(x) for x in soup.findAll('p'))
上一篇:python中的beautifulsoup和xpath有什么异同点


下一篇:python – 使用lxml和xpath解析Html