从python中的打印输出中删除空行

时间:2017-10-18 20:02:58

标签: python beautifulsoup

我正在学习python请求和BeautifulSoup。我设法编写了一个登录站点并废弃表格的脚本。这是代码:

soup = BeautifulSoup(req.content, "lxml")
table = soup.find_all('table', attrs={'class': 'griglia_tab', 'id':'data_table'})[2]
print(table.text)

当我运行脚本时,我得到了所需的输出,但值之间有很多空行。我怎样才能删除它们并以正确的方式输出值?

1 个答案:

答案 0 :(得分:1)

如果你试图抓取this页面,这里的代码可能有效。您需要使用re用一个换行符替换多个连续的换行符。

print(re.sub(r'\n\s*\n', '\n', table.text.strip()))

修改

您的代码很少有建议:

id属性将唯一标识页面中的单个表。由于您需要打印的表有一个,因此不需要使用'class': 'griglia_tab'。您也可以取消find_all,并改为使用find

因此,请将代码替换为table,并使用此代码

table = soup.find('table', attrs={'id':'data_table'})