我有一段包含段落的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'))