如何提取用逗号分隔的段落?

时间:2017-12-05 21:48:46

标签: python-3.x web-scraping beautifulsoup tags

这是我试图获取数据的一段代码。

$tableAID = 1;

TableC::whereHas('tableB', function($q) use ($tableAID) {
    $q->whereHas('tableA', function($q) use ($tableAID) {
        $q->where('id', $tableAID);
    });
})->get();

我是这样做的:

<p>ul. Niecała 10</p>
<p>05-800 Pruszków</p>

</div>

不幸的是,结果并不能让我满意。段落中的文字被粘在一起。我希望这些段落用逗号分隔。

现在:

address = result.find('div', attrs={'class': 'section address'}).get_text()

我希望它是:

ul. Niecała 1005-800 Pruszków

我该怎么做?你有什么建议吗?

2 个答案:

答案 0 :(得分:1)

使用stripped_strings生成器并按', '加入(如果需要字符串),例如:

address = ', '.join(result.find('div', class_='section address').stripped_strings)

答案 1 :(得分:1)

有一种比.stripped_strings更简单的方法 - 只需使用逗号作为separator直接使用.get_text()

address = soup.find('div', attrs={'class': 'section address'})
print(address.get_text(", ", strip=True))

打印:

ul. Niecała 10, 05-800 Pruszków