LINUX.ORG.RU

Python и unicode


0

0

День добрый.

Нужна небольшая помощь по Питону, суть проблемы в том, что не могу вывести читабельно кириллический текст полученный от гугла. Локаль UTF-8. Вот скрипт:

#!/usr/bin/env python
# -*- coding: utf-8 -*-

import httplib

dic_domain = "translate.google.ru"
dic_request = "/translate_a/t?client=t&text=%s&sl=%s&tl=%s&pc=1&oc=1"

conn = httplib.HTTPConnection(dic_domain)
conn.request("GET", dic_request % ("table", "en", "ru",))
resp = conn.getresponse()

print resp.status, resp.reason

data = resp.read()
conn.close()

print data.unicode(????)

Вместо ???? пробовал разные кодировки, но все равно выводится нечитабельная лабуда. Как исправить данный изъян?

★★★★★

print unicode(data, 'koi8-r')
vden ★★
()
Ответ на: комментарий от vden

Премного благодарен. Работает.

Просто дело в том что я смотрел firebug'ом и он показывает хедер
Content-Type text/plain; charset=UTF-8
Что за шутки такие...

urxvt ★★★★★
() автор топика
Ответ на: комментарий от urxvt

> Просто дело в том что я смотрел firebug'ом и он показывает хедер
> Content-Type text/plain; charset=UTF-8


а ты в реквесте добавляй хеадер
Accept-Charset: utf-8
и т.п.

pawnhearts ★★★★★
()
Ответ на: комментарий от urxvt

Content-Type может быть установлен как минимум в двух местах - можно в .htaccess прописать Content-Type text/plain; charset=UTF-8, а в теле страниц писать Content-Type text/plain; charset=koi8-r. При таком раскладе бывает лаже )

devinull ★★
()
Ответ на: комментарий от devinull

> При таком раскладе бывает лаже )
думаю в гугле не такие хомячки, да и вряд ли у них апач

pawnhearts ★★★★★
()
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.