반응형
마리아DB / Python의 이모티콘 문제
나는 에 연줄이 있다x['foo']
, 때론 평범한 문자열이고, 때론 이모티콘이나 텍스트 아트입니다.
그래서 내용을 데이터베이스로 전송하려고 하면 이 오류가 발생합니다.
경고:잘못된 문자열 값: 1행의 'description' 열에 대한 '\xE4\xB8\xBA Co...'
사용하는 경우x['foo'].decode("utf-8")
다음의 에러가 표시됩니다.
UnicodeEncodeError: 'ascii' 코덱이 위치 0의 문자 u'\u4e3a를 인코딩할 수 없습니다: 서수가 범위 내에 없습니다(128).
내가 노력하면encode('ascii', 'ignore').decode('ascii')
그러면 이 에러가 발생합니다.
x['foo'].(asciii', 'foo')decode('ascii') AttributError: 'NoneType' 개체에 'encode' 특성이 없습니다.
MariaDB 5.5.44와 Python 2.7.5를 사용하고 있습니다.
데이터베이스를 초기화하는 중입니다.
conn = MySQLdb.connect("localhost","root","","")
conn.set_character_set('utf8')
cursor = conn.cursor()
cursor.execute('SET NAMES utf8;')
cursor.execute('SET CHARACTER SET utf8;')
cursor.execute('SET character_set_connection=utf8;')
언급URL : https://stackoverflow.com/questions/32994772/mariadb-python-issues-with-emoji-characters
반응형
'sourcecode' 카테고리의 다른 글
Safe String to BigDecimal 변환 (0) | 2022.11.16 |
---|---|
Python 문자열에서 특정 문자 제거 (0) | 2022.11.16 |
PDO 사용 여부/필수:null 값을 바인딩할 때 PARAM_NULL? (0) | 2022.11.16 |
jQuery를 사용한 addClass/removeClass 애니메이션 생성 (0) | 2022.11.16 |
Content Security Policy(CSP; 콘텐츠보안정책)의 구조 (0) | 2022.11.16 |