블로그 이미지
잡다한 취미 생활 및 일상에 대한 소소한 이야기를 적어나가는 블로그입니다.
붉은kkk

공지사항

최근에 올라온 글

최근에 달린 댓글

글 보관함

calendar

1 2 3 4
5 6 7 8 9 10 11
12 13 14 15 16 17 18
19 20 21 22 23 24 25
26 27 28 29 30 31

파이썬으로 만든 프로그램을 파이썬이 없는 곳에서도 실행하고 싶다면, 단독 실행파일로 만들어 줘야 됩니다.


오늘은 파이썬 응용 프로그램을 .exe 파일 (실행파일) 로 만들어 보겠습니다.


우선 필요한 건 아래와 같은 라이브러리에요.



    Pyinstaller 

  py2exe



구글링으로 찾은 라이브러리인데, py2exe는 python2 버전에서 잘 된다라는 내용들이 적혀 있네요.

전 3.7 버전을 사용하고 있는 관계로 Pyinstaller로 실행파일을 만들어 보겠습니다.


실행 파일로 만들 프로그램은 지난 시간에 만들었던 워드클라우드 파일이어서 따로 코딩은 하지 않겠습니다.



pip으로 라이브러리를 설치하고, (설치는 pip install pyinstaller)

처음에 설치를 잘 못한 게 있었네요. (오타로 인해 pip install pyinstall, 이건 나중에 삭제해야겠네요.)



다 끝나 갑니다.


이제 실행파일을 만들어 봐야겠어요.



pyinstaller --onefile <your_script_name>.py 이렇게 하면 된다고 되어있네요. 지난 시간에 만든 wordcloud1.py에 적용해서 해보니까... 안됩니다 ㅠㅠ (다른방법을 찾아봐야 겠네요) 우선 가볍게 Hello World 소스 부터 실행 파일로 만들어 볼게요. 실행은 pyinstaller ex1.py (ex1.py는 첫시간에 만들어 둔 파일입니다.)

소스로는 고작 1줄인데 뭔가가 엄청...진행 됐어요.

새로운 폴더가 만들어져 있네요. (build와 dist) dist폴더내에 ex1폴더가 있고 그 곳에 실행파일이 만들어져 있는걸 확인했습니다.

윈도우에서 실행하면 console창이 떴다가 사라지네요.

console모드에서는 잘 실행되는걸 확인할 수 있습니다.





이번엔 이렇게 파이썬에서도 실행파일을 만들 수 있다란 것을 알았단 사실에 만족해야 될 것 같네요.

계속 공부하면서 더 간단히 깔끔한 exe 파일 만드는 방법을 새로 찾아보고 새로운게 있다면 다시 포스팅 해 볼게요.





이제 드디어 제가 파이썬을 사용하고자 한 계기가 됐던 워드 클라우드 만들기 입니다.


빅데이터 분석에 대한 책 & 광고 등을 보다 보면 빠지지 않고 등장했었던 것 같아요. 


시각적으로 바로 알기 쉽게 한번 보여드리고~


이렇게 단어의 빈도수 등을 고려해서, 글자의 크기, 색깔 등등이 강조되서 나오는게 워드 클라우드입니다. 


휴... 한글폰트의 사용이 어려워서 고생했던 생각이 잠깐 나네요. (몇시간을 헤맸습니다...)


이제 윈도우환경에서 워드 클라우드를 구현하기 위해 해야될 일들을 하나 하나 알려드릴게요.


1. 네이버 나눔글꼴 설치

https://hangeul.naver.com/2017/nanum

위 링크로 들어가서 네이버 나눔글꼴을 설치해줍시다. (무료 폰트여서 사용하는데 문제가 없답니다.)

- 나눔글꼴의 지적 재산권은 네이버, 네이버문화재단에 있으며,  오픈 라이선스로 자유롭게 수정하고 재배포 하실 수 있습니다



2. 워드클라우드 라이브러리 설치

     pip install wordcloud

     - pip 설치는 지난 시간에 설명을 했기 때문에, 상세 내용은 생략할게요. 

       

     http://nearman.tistory.com/entry/3-그래프출력-파이썬-matplotlib-그래프-출력-한글폰트-사용 

     


3. 워드클라우드로 표현하고 싶은 텍스트 자료 준비

   - 저는 test.txt 파일에 내용을 기입해서 준비를 해볼게요.

     "워드 클라우드 파이썬 단어구름 빅데이터 분석
      Wordcloud python big data analysis 워드클라우드 워드클라우드 워드클라우드 

      python python python python
     워드클라우드 워드클라우드 워드클라우드 워드클라우드 워드클라우드 워드클라우드 워드클라우드 

     워드클라우드
     python python python python python python python python python python python python python   

     python"

   

4. 코딩을 통해 워드클라우드 표현

   - 코드 몇 줄 되지 않습니다. 너무 간단해서 이래도 되나 싶을 정도네요.


1: import matplotlib.pyplot as plt
2: from wordcloud import WordCloud

3: 
4: font_path = 'c:\\windows\\fonts\\NanumGothic.ttf'
5: wordcloud = WordCloud(
6:     font_path = font_path,
7:    width = 800,
8:    height = 800
9:    )
10:
11: text=open('test.txt').read()
12: wordcloud = wordcloud.generate(text)
13: 
14: fig = plt.figure(figsize=(12,12))
15: plt.imshow(wordcloud)
16: plt.axis("off")
17: plt.show()
18: fig.savefig('wordcloud_without_axisoff.png')


코드는 크게 설명드릴 부분이 없을 정도로 직관적으로 이해하실 수 있을 거라 생각되네요.


'라이브러리를 사용할 수 있게 하고

Font 설정을 하고

Text 파일을 읽고

wordcloud를 사용해서 화면에 부려주고

파일로 저장합니다.'




 [최종 실행 화면]

이로써 워드 클라우드 구현을 해보았습니다.


다음엔 더 재밌는 걸로 찾아뵐게요.

이전 1 다음