1

Тема: Python+MySQL і кирилиця

Власне зайшов на віддалену MySQL з-під Python, не читається кирилиця, виводить:

(u'\u0412\u0430\u0448\u0438\u043d\u0433\u0442\u043e\u043d \u0438 \u0413\u0430\u0432\u0430\u043d\u0430 \u0434\u043e\u0433\u043e\u0432\u043e\u0440\u0438\u043b\u0438\u0441\u044c \u043e\u0431 \u043e\u0442\u043a\u0440\u044b\u0442\u0438\u0438 \u043f\u043e\u0441\u043e\u043b\u044c\u0441\u0442\u0432',)

сам код:

db=MySQLdb.connect(host="x.x.x.x", user="name", passwd="xxxx", db="nam", charset='utf8')
db.set_character_set('utf8')
db.query("""SELECT news_new.title FROM news_new""")
r=db.store_result()
vec = r.fetch_row(100)
print vec[5]

2

Re: Python+MySQL і кирилиця

# -*- coding: utf-8 -*-

а тепер?

3 Востаннє редагувалося dialectstat (20.10.2015 16:30:06)

Re: Python+MySQL і кирилиця

koala написав:
# -*- coding: utf-8 -*-

а тепер?

В мене воно є, ось вся шапка

# -*- coding: utf-8 -*-
import string
import nltk
import scipy
import pandas as pd
import zipfile
import numpy as np
import matplotlib.pyplot as plt
import matplotlib.lines as lines
from scipy.stats import poisson
import math
import matplotlib.cm as cm
from nltk.tokenize import RegexpTokenizer
from stop_words import get_stop_words
from nltk.stem.porter import PorterStemmer
from gensim import corpora, models
import gensim
import codecs
import glob   
import sys
reload(sys)
sys.setdefaultencoding('utf-8')
import MySQLdb

4

Re: Python+MySQL і кирилиця

Все читається, спробуйте encode('utf-8')

Оте, що ви показали, "перекладається" так:

Прихований текст
Вашингтон и Гавана договорились об открытии посольств
Мій блог про ОС сімейства *nix - http://nixtravelling.blogspot.com/

5

Re: Python+MySQL і кирилиця

Master_Sergius написав:

Все читається, спробуйте encode('utf-8')

Оте, що ви показали, "перекладається" так:

Прихований текст
Вашингтон и Гавана договорились об открытии посольств

Куди вставити encode('utf-8') ?

6

Re: Python+MySQL і кирилиця

Master_Sergius написав:

Все читається, спробуйте encode('utf-8')

Це не працює.
А якщо просто прінтнути - все чудово

a = u'\u0412\u0430\u0448\u0438\u043d\u0433\u0442\u043e\u043d \u0438 \u0413\u0430\u0432\u0430\u043d\u0430 \u0434\u043e\u0433\u043e\u0432\u043e\u0440\u0438\u043b\u0438\u0441\u044c \u043e\u0431 \u043e\u0442\u043a\u0440\u044b\u0442\u0438\u0438 \u043f\u043e\u0441\u043e\u043b\u044c\u0441\u0442\u0432'

>>> print (a)
Вашингтон и Гавана договорились об открытии посольств
Навчаюсь вчитись, щоб навчатись.

7

Re: Python+MySQL і кирилиця

тепер через

print(repr(vec[5]).decode("unicode_escape"))

Виводиться

(u'Вашингтон и Гавана договорились об открытии посольств',)

Як отримати чистий вивід без (u'  ',) ?

8

Re: Python+MySQL і кирилиця

http://stackoverflow.com/questions/4855 … ar-strings

Навчаюсь вчитись, щоб навчатись.
Подякували: leofun01, dialectstat2