get_text()在文本内管理标签问题

时间:2019-12-15 11:31:37

标签: python beautifulsoup

我正在尝试从html表中提取数据,显然我正在使用BeatifulSoup

我设法选择了相关标签并将数据整理到pandas df中。 我有一个小问题需要解决。

例如,假设我有一个变量column,它是bs4.element.Tag的实例,其值等于:

<td>Valore di inizio<br/>esercizio</td>

当我致电column.get_text()时,它将返回:

Valore di inizioesercizio

我想回来

Valore di inizio esercizio

即标记br应该被剥离并用空格代替。

谢谢

1 个答案:

答案 0 :(得分:2)

您可以使用get_text(),但要使用separator=参数:

data = '''<td>Valore di inizio<br/>esercizio</td>'''

from bs4 import BeautifulSoup

soup = BeautifulSoup(data, 'html.parser')

print(soup.td.get_text(separator=' '))  # for more control, you can add strip=True parameter

打印:

Valore di inizio esercizio