스파르타코딩클럽 이벤트참여 3일차
스파르타코딩클럽 이벤트참여 마지막 수업, 워드클라우드 만들기였다.
모듈은 wordcloud, PIL, numpy 모듈을 사용했고,
카카오톡에서 대화내용 내보내기를 통해 txt파일을 만든 후 그 파일에서 '] [' 를 걸러내서 대화내용만 추려냈다.
그 후 필요없는 내용들은 split과 replace를 통해서 걸러냈고 워드클라우드를 만들었다.
처음에 워드클라우드를 만들 때 계속 한글이 깨져서 검색해봤더니 내가 선택한 폰트가 한글을 지원하는 폰트가 아니어서 깨졌었던 것 같다. 그래서 맑은고딕을 선택해서 한글이 제대로 나왔다.
생각보다 워드클라우드 코딩은 간단했다. 내가 원하는 택스트파일과 원하는 폰트만 지정해준다면 기본 코드에서 벗어나는것이 없었기 때문이다. 여기서 또 뭔가 가공을 하게 된다면 그부분이 어려울 것 같지만 기본적인 코드는 그렇게 어렵지 않았다.
코드는 아래와 같다.
from wordcloud import WordCloud
from PIL import Image
import numpy as np
text=""
with open("KakaoTalk.txt", "r", encoding="utf-8") as f:
lines = f.readlines()
for line in lines[2:]:
if '] [' in line:
text+=line.split('] ')[2].replace('ㅠ','').replace('전','').replace("ㅋ",'').replace('저는','').replace('저도','').replace('ㅎ','').replace('이모티콘\n','').replace('사진\n','')
mask = np.array(Image.open('cloud.png'))
wc = WordCloud(font_path='C:/Windows/Fonts/malgunsl.ttf', background_color="white", mask=mask)
wc.generate(text)
wc.to_file("result_masked.png")
Author And Source
이 문제에 관하여(스파르타코딩클럽 이벤트참여 3일차), 우리는 이곳에서 더 많은 자료를 발견하고 링크를 클릭하여 보았다 https://velog.io/@changchanghwang/스파르타코딩클럽-이벤트참여-3일차저자 귀속: 원작자 정보가 원작자 URL에 포함되어 있으며 저작권은 원작자 소유입니다.
우수한 개발자 콘텐츠 발견에 전념 (Collection and Share based on the CC Protocol.)