可以通过使用get_text()方法替代.text属性来解决缺少换行符的问题。示例代码如下:
from bs4 import BeautifulSoup
html = """
Hello
World
"""
soup = BeautifulSoup(html, 'html.parser')
# 使用get_text()方法获取文本并手动添加换行符
text = ['\n' + p.get_text() for p in soup.find_all('p')]
result = ''.join(text)
print(result)
输出结果:
Hello
World
在这个例子中,我们使用find_all()方法来获取文档中所有的
标签,然后使用get_text()方法获取其中的文本并手动添加换行符。最后使用join()方法将文本列表连接成一个字符串输出。这样可以确保每个文本段落之间都有换行符,从而避免了.text属性缺少换行符的问题。