2016-01-25 7 views
1

Я очищаю текст с веб-сайта и экспортирую его в документ блокнота. Я пытаюсь отделить абзацы, пробовал все возможные комбинации print + '\ n', но ничего не работает. Интересно, что я делаю неправильно, потому что я получаю только один большой блок текста, импортированный в документ блокнота. Я новичок, так было бы здорово, если бы вы объяснили ошибку, которую я делаю, а не просто предоставить решение. Спасибо! PS- Кроме того, я думал, что я должен использовать «outfile.close()» после операции выжимания, но если я скрипт не работает ...Python 3.5s - Как отделить текст абзаца с новыми строками

from bs4 import BeautifulSoup 
import urllib.request, re 

req = urllib.request.urlopen('https://en.wikipedia.org/wiki/Gautama_Buddha') 
soup = BeautifulSoup(req, 'html.parser') 
req.addheaders = [ ('User-agent', 'Mozilla/5.0') ] 

title = soup.title.text 

body = soup.find_all('p') 
outfile = open("wiki_test.txt","wb") 
for i in body: 
    print(i.text) 
    outfile.write(bytes(i.text+'\n'+"###############", 'UTF-8')) 

ответ

0

Посмотрите в для удобства чтения. Для этого кода, попробуйте

with open("wiki_test.txt","wb") as outfile: 
    for i in body: 
     print(i.text + '\n') 
     outfile.write(bytes(i.text+'\n'+"###############", 'UTF-8')) 
+0

Получаю точный результат с помощью этого кода. Я начинаю сомневаться, что что-то не так с Notepad или Windows 8, но это было бы очень необычно, не так ли? На консоли вывода pycharm я вижу текст, правильно отформатированный с линиями между абзацами, но тогда вывод в файл по-прежнему не имеет новых строк, даже с вашим кодом. – skeitel

+0

скриншот: http://imgur.com/uwwiuUy – skeitel

+0

Может ли быть что-то, что я не знаю о кодировке UTF-8? – skeitel

 Смежные вопросы

  • Нет связанных вопросов^_^