<p>为什么您需要<code>regex</code>而beautifulsoup能够完全处理任何类型的html—最好尝试<a href="http://www.crummy.com/software/BeautifulSoup/bs4/doc/#css-selectors" rel="nofollow"><strong>css selectors</strong></a>这里<code>div.Mother div.Son ul li</code>的意思是选择所有<code>divs</code>的类名<code>Mother</code>,然后在里面选择所有<code>divs</code>的类名<code>Son</code>,然后选择里面的<code>ul</code>,最后选择里面的所有<code>li</code>。你知道吗</p>
<pre><code>from bs4 import BeautifulSoup as bs
data = """
<body>
<div class="Mother" >
<div class="Son" >
<p><strong><strong> </strong></strong>It can be hard to admit that rebranding is necessary. Companies can often be attached to their brand, even if it is hurting their sales. Consider rebranding if:</p>
<ul>
<li>You are experiencing a decrease in sales and customers</li>
<li>If your brand design does not reflect what you deliver</li>
<li>If you want to attract a new target audience</li>
<li>Management change</li>
<li><a href="http://www.risingabovethenoise.com/how-to-rebrand-19-questions-ask-before-you-start/" onclick="__gaTracker('send', 'event', 'outbound-article', 'http://www.risingabovethenoise.com/how-to-rebrand-19-questions-ask-before-you-start/', '19 Questions to Ask Yourself Before You Start Rebranding');">19 Questions to Ask Yourself Before You Start Rebranding</a></li>
</ul>
</div>
</div>
</body>
"""
soup = bs(data,'lxml')
#To grab all inside the ul
for item in soup.select('div.Mother div.Son'):
print item.text.strip()
print "="*100
#Just to grab all li
for li in soup.select('div.Mother div.Son ul li'):
print li.text.strip()
</code></pre>
<p>输出-</p>
<pre><code>It can be hard to admit that rebranding is necessary. Companies can often be attached to their brand, even if it is hurting their sales. Consider rebranding if:
You are experiencing a decrease in sales and customers
If your brand design does not reflect what you deliver
If you want to attract a new target audience
Management change
19 Questions to Ask Yourself Before You Start Rebranding
====================================================================================================
You are experiencing a decrease in sales and customers
If your brand design does not reflect what you deliver
If you want to attract a new target audience
Management change
19 Questions to Ask Yourself Before You Start Rebranding
</code></pre>