반응형
Amazon XML 파일을 읽고 구문 분석하는 중이며 XML 파일에 '가 표시되는 동안 인쇄하려고하면 다음 오류가 발생합니다.
'ascii' codec can't encode character u'\u2019' in position 16: ordinal not in range(128)
지금까지 온라인에서 읽은 내용에서 오류는 XML 파일이 UTF-8로되어 있지만 Python이 ASCII 인코딩 문자로 처리하기를 원한다는 사실에서 발생합니다. 오류를 없애고 프로그램이 읽는대로 XML을 인쇄하도록하는 간단한 방법이 있습니까?
해결 방법
아마도 문제는 당신이 그것을 잘 파싱했고 이제 당신은 XML의 내용을 인쇄하려고하는데 외국 유니 코드 문자가 있기 때문에 인쇄 할 수 없다는 것입니다. 먼저 유니 코드 문자열을 ascii로 인코딩하십시오.
unicodeData.encode('ascii', 'ignore')
'ignore'부분은 해당 문자를 건너 뛰도록 지시합니다. 파이썬 문서에서 :
>>> u = unichr(40960) + u'abcd' + unichr(1972)
>>> u.encode('utf-8')
'\xea\x80\x80abcd\xde\xb4'
>>> u.encode('ascii')
Traceback (most recent call last):
File "<stdin>", line 1, in ?
UnicodeEncodeError: 'ascii' codec can't encode character '\ua000' in position 0: ordinal not in range(128)
>>> u.encode('ascii', 'ignore')
'abcd'
>>> u.encode('ascii', 'replace')
'?abcd?'
>>> u.encode('ascii', 'xmlcharrefreplace')
'ꀀabcd޴'
참조 페이지 https://stackoverflow.com/questions/3224268
반응형
'파이썬' 카테고리의 다른 글
파이썬 Python 2.7 : socket.error 오류 [Errno 111]-연결이 거부되었습니다. (0) | 2020.11.19 |
---|---|
파이썬 Python에서 백색 잡음 프로세스 정의 (0) | 2020.11.19 |
파이썬 Pandas Barplot에서 x 축 눈금 레이블을 회전하는 방법 (0) | 2020.11.19 |
파이썬 iPython 설치 : "ImportError cannot import name path"? (0) | 2020.11.19 |
파이썬 redis로 사전을 저장하고 검색하는 방법 (0) | 2020.11.19 |
댓글