#python-3.x #html-parsing
#python-3.x #html-синтаксический анализ
Вопрос:
Здравствуйте, я использую Python3 для создания приложения, которое из заданного URL возвращает текст веб-сайта без тегов HTML, просто чистый и простой текст.
Вот мой код, который должен работать, но не работает:
import urllib, formatter, sys
from urllib.request import urlopen
from html.parser import HTMLParser
website = urlopen("http://www.google.com")
data = website.read()
website.close()
format = formatter.AbstractFormatter(formatter.DumbWriter(sys.stdout))
ptext = HTMLParser(format)
ptext.feed(data)
ptext.close()
Ошибка:
File "app.py", line 11, in <module>
ptext.feed(data)
File "/Library/Frameworks/Python.framework/Versions/3.3/lib/python3.3/html/parser.py", line 144, in feed
self.rawdata = self.rawdata data
TypeError: Can't convert 'bytes' object to str implicitly
Я нахожу решение, которое устраняет ошибку, но я не получаю соответствующего результата. Решением было изменить следующую строку:
ptext.feed(данные)
Для:
ptext.feed(data.decode(«utf-8»))
Проблема сейчас в том, что нет результата для терминала, программа запущена, но результата нет, код протестирован в учебнике, который я видел, и он работает.
Спасибо.