Вы можете textwrap
из стандартной библиотеки, чтобы указать длину каждой строки и добавить две пустые строки в качестве разделителя для каждого абзаца p
from urllib.request import urlopen
from bs4 import BeautifulSoup
import textwrap
article = ''
line_size = 75
for i in content.findAll('p'):
w = textwrap.TextWrapper(width=line_size,break_long_words=False,replace_whitespace=False)
body = '\n'.join(w.wrap(i.text))
article += body+"\n\n"
print(article)
Вы можете сделать это с помощью циклов, но я рекомендовал бы использовать textwrap
лучше, так как он обрабатывает разрывные слова, и намного проще, в любом случае базовый c способ сделать это вручную будет выглядеть примерно так:
article = ''
for i in content.findAll('p'):
text = i.text.strip()
for n in range(len(text)):
if n % line_size != 0 and i!=0:
article += text[n]
else:
article += "\n" + text[n]
article+="\n\n"
print(article)