Модераторы: Daevaorn
  

Поиск:

Ответ в темуСоздание новой темы Создание опроса
> Очередная проблема с кодировкой 
:(
    Опции темы
Nilm
Дата 11.2.2009, 13:43 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 19
Регистрация: 26.10.2006

Репутация: нет
Всего: 1



Всем привет!
Столкнулся с неразрешимой для меня проблемой - сломал себе весь мозг, гугление тоже ничего не дало :(

Пишу fcgi скрит, который получает через нет xml документ (http://rumetrika.rambler.ru/xml/news.xml).
И через параметр запроса query - поисковый паттерн.

Выделить всёPython
1:
query = cgi.parse_qs(environ.get('QUERY_STRING''')).get('query'[''])[0# Получили квери

...
Выделить всёPython
1:
page = uid.read() # Считали этот xmlник

И дальше самое интересное - с помощью регэкспа пытаюсь по xmklнику искать паттерн:
Выделить всёPython
1:
2:
3:
4:
regexp = re.compile('.*?<title>.*?' + query + '.*?</title>', re.DOTALL|re.IGNORECASE|re.LOCALE)
for article in articles: # articles - список статей распарсенных из xmklника (то, что между тегами <item>)
    if regexp.match(article):
        re_article.append(article)


Теперь сабж:
Оно прекрасно работает для чисел и английских букв, но пасует перед русскими. Чего я только не пробовал. Кодировал и query и page в 'utf-8' (матюкается след образом: page = uid.read().decode('utf-8'): UnicodeDecodeError: 'utf8' codec can't decode bytes in position 87-88: invalid data
или page = uid.read().encode('utf-8'): UnicodeDecodeError: 'ascii' codec can't decode byte 0xcd in position 87: ordinal not in range(128)),
пытался приводить к 'windows-1251', который в xmlнике стоит как default.
Ничего не помогает :( Пожалуйста, спасите мой мозг!  smile 

ЗЫ С вероятностью 90% xml в windows-1251, а я ввожу в utf-8 (если квери декодировать в 1251 то получаю кракозябры - ак)

Это сообщение отредактировал(а) Nilm - 11.2.2009, 14:23
PM MAIL   Вверх
Nilm
Дата 11.2.2009, 18:56 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 19
Регистрация: 26.10.2006

Репутация: нет
Всего: 1



Проблема таки решилась, тему можно удалить.
PM MAIL   Вверх
alex_smirnov
Дата 11.2.2009, 21:02 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Бывалый
*


Профиль
Группа: Участник
Сообщений: 194
Регистрация: 22.6.2007
Где: Санкт-Петербург

Репутация: нет
Всего: 4



Интересно, в чем же была проблема?
PM GTalk Jabber   Вверх
pythonwin
Дата 12.2.2009, 14:41 (ссылка) |    (голосов:1) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
****


Профиль
Группа: Участник
Сообщений: 2529
Регистрация: 18.4.2006
Где: за компом

Репутация: 2
Всего: 36



Цитата(Nilm @  11.2.2009,  16:43 Найти цитируемый пост)
ЗЫ С вероятностью 90% xml в windows-1251, а я ввожу в utf-8 (если квери декодировать в 1251 то получаю кракозябры - ак)

думаю у тебя в кодировке iso-8859-1
питоновский пакет по распознованию кодировки здесь
PM WWW GTalk Jabber   Вверх
  
Ответ в темуСоздание новой темы Создание опроса
1 Пользователей читают эту тему (1 Гостей и 0 Скрытых Пользователей)
0 Пользователей:
« Предыдущая тема | Python: Веб-разработка и фреймворки | Следующая тема »


 




[ Время генерации скрипта: 0.0768 ]   [ Использовано запросов: 21 ]   [ GZIP включён ]


Реклама на сайте     Информационное спонсорство

 
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности     Powered by Invision Power Board(R) 1.3 © 2003  IPS, Inc.