이모지로 인한 유니코드 오류
2021. 4. 7. 01:03ㆍ오류
kkomoran 형태소 분석기를 이용하던 중 아래와 같은 오류가 발생했습니다. 데이터를 보니 🦚 과 같은 이모지가 들어있더라고요. 이모지는 utf-8 언어셋을 사용하는 형태소 분석기에서 매핑되지 않아 오류가 나타나게 된 것입니다.
아래를 참고하여 해결하였습니다.
import re
emoji_pattern = re.compile("["
u"\U0001F600-\U0001F64F" # emoticons
u"\U0001F300-\U0001F5FF" # symbols & pictographs
u"\U0001F680-\U0001F6FF" # transport & map symbols
u"\U0001F1E0-\U0001F1FF" # flags (iOS)
"]+", flags=re.UNICODE)
print(emoji_pattern.sub(r'', content))
re.compile을 이용하여 이모지에 관한 정규식 객체를 컴파일하고 컴파일 된 객체를 이용하여 객체가 가지고 있는 메서드를 통해 작업하는 방법입니다.
okt 형태소 분석기를 사용했을 때는 오류가 나지 않았는데 komoran 형태소 분석기를 사용하니 에러가 나더라구요. okt 형태소 분석기는 트위터와 같이 인터넷 용어에 적합한 형태소 분석기라서 그런지 이모지를 Foreign으로 처리하더라고요!
하지만 저는 텍스트 데이터의 특성상 인터넷 용어가 많은 데이터가 아니기 때문에 이모지를 제거하고 사용할 것입니다!
728x90
'오류' 카테고리의 다른 글
[Tensorflow] ValueError: ~ kernel already exist (0) | 2020.12.06 |
---|---|
[Keras] callbacks 함수 ValueError (0) | 2020.12.06 |
[git] 파일명 수정하기 (0) | 2020.11.13 |
[git] git branch 확인이 안될 때 (0) | 2020.11.04 |
history 유지하며 여러 git repo 합치기 (0) | 2020.10.28 |