<p><code>soup.text</code>给出带有原始<code>\n</code>的文本,您可以使用<code>split('\n')</code>来拆分它,但有许多<code>\n</code>,它可能给出空元素</p>
<p>但是<code>BeautifulSoup</code>还有方法<code>get_text()</code>,它可以得到参数<code>separator=</code>和<code>strip=</code>,它们可以这样使用</p>
<pre><code>text = soup.get_text(separator='|', strip=True)
</code></pre>
<p>这就给了弦</p>
<pre><code>"1447 Acres Council, Adams County, ID"|"1,190,000"
</code></pre>
<p>现在您可以使用<code>strip('|')</code>将其拆分为列表</p>
<pre><code>['"1447 Acres \xa0 Council, Adams County, ID"', '"1,190,000"']
</code></pre>
<p>我还要添加<code>replace()</code>以删除<code>"</code></p>
<pre><code>from bs4 import BeautifulSoup as BS
text = '''<a>
"1447 Acres &nbsp; Council, Adams County, ID"
<br>
"1,190,000"
</a>'''
soup = BS(text, 'html.parser')
text = soup.get_text(separator='|', strip=True)
text = text.replace('"', '')
data = text.split('|')
print(data)
</code></pre>
<p>结果</p>
<pre><code>['1447 Acres \xa0 Council, Adams County, ID', '1,190,000']
</code></pre>
<p>它还需要一些函数(可能在<code>urllib</code>)来将像<code>&nbsp;</code>这样的实体转换为正确的字符,或者您可以使用<code>replace('\xa0', '')</code>删除它</p>