Найти - Пользователи
Полная версия: Опять уникод будь он не ладен! GAE + beautifulsoup
Начало » Python для новичков » Опять уникод будь он не ладен! GAE + beautifulsoup
1
mrtwister
Драсти все! Не могу получить из парсера.
получаю из парсера текст таким образом:
link_topic.contents или link_topic.contents.string соответственно тип у получаемого значения ‘bs4.element.NavigableString’ а вот сделать из него unicode строку не выходит понятно, что contents.encode('utf-8') делает просто строку, а как мне получить просто unicode? парсер хранит и так в уникоде все но дотянуться не могу. Помогите пожайлуста
mrtwister
пока писал вопрос понял ответ используй unicode() идиот!
odnochlen
content.decode()

Логика такая: дефолт - внутреннее представление питона (юникод). Из него кодируют и в него декодируют. Кодированное представление - это уже сериализованная байтовая строка в какой-то кодировке (cp1251, utf8, даже ucs-16), которую можно писать в файл/передавать по сети итд.
cpu
mrtwister
пока писал вопрос понял ответ используй unicode() идиот!
не используй unicode() :

cpu@home-main:~$ python
Python 2.7.1+ (r271:86832, Apr 11 2011, 18:05:24) 
[GCC 4.5.2] on linux2
Type "help", "copyright", "credits" or "license" for more information.
>>> a = 'Привет, мир'
>>> unicode(a)
Traceback (most recent call last):
  File "<stdin>", line 1, in <module>
UnicodeDecodeError: 'ascii' codec can't decode byte 0xd0 in position 0: ordinal not in range(128)
unicode не жретъ кириллицу. Немецкие умляуты и прочие там диакритические символы, впрочем, тоже не жретъ. Используй силу .encode(), .decode(), Люк.
PooH
cpu
mrtwister
пока писал вопрос понял ответ используй unicode() идиот!
не используй unicode()
unicode не жретъ кириллицу. Немецкие умляуты и прочие там диакритические символы, впрочем, тоже не жретъ. Используй силу .encode(), .decode(), Люк.
Угу, а еще два параметра у unicode видимо для красоты.
unicode([object[, encoding[, errors]]])
This is a "lo-fi" version of our main content. To view the full version with more information, formatting and images, please click here.
Powered by DjangoBB