드디어 자잘자잘한 오류를 수정하고, 수정하고, 수정하는 늪에서 벗어나 최종 단계인 실행파일 만들기
에 도달했다!!!
실행파일을 만들면,
이전에 파이썬 챗봇 실행에 필요한 모든 코드 파일을 다운 받아서, 파이썬 IDE에서 실행시키는 과정 없이, 해당 실행 파일만 실행하면 된다!
우리가 만든 파이썬 챗봇을 다른 플레이데이터 교육 수강생분들께 배포하기 위해서 최종 단계로 실행파일을 만들기로 했다.
데이터베이스 연결 문제로 실행파일은 두 종류이다.
1. 오라클 클라우드 데이터베이스에 연결한 cloud.ver
2. 로컬 데이터베이스에 연결한 local.ver
당연히! 클라우드 데이터베이스만 연결하면되지 뭣하러 로컬 버전을 만들었냐고 물으신다면..클라우드 데이터베이스와 연동하려면 해당 클라우드 데이터베이스의 전자지갑과 oracle instant client 파일이 필요하다.
클라우드 버전은 여러 플레이어의 데이터를 모을 수 있다는 장점이 있지만
실행 파일을 만드는 과정에서 몇몇 에러 상황을 만나ㅜ 로컬 버전도 만들어두기로 했다.
(깃헙 main
에는 cloud.ver, local_db_ver
에는 local.ver가 push 되어있다.)
컴퓨터 상태에 따라 실행파일을 만드는 과정에서 정말 다양한 오류가 생겼는데..정리한 바로는 아래 <절차>대로 진행하고, 오류가 생겼을 때 아래 <확인사항>들을 확인해보면 좋을 것 같다.
코드박스 괄호 안의 내용은 괄호 없이 각자 자기 프로그램에 맞는 내용을 적어주면 된다.
pip install pyinstaller
로 pyinstaller 설치 (설치되어있다면 패스)pip install pyqt5
로 PyQt5 설치 (설치되어있다면 패스)cd (실행파일로 만들고 싶은 파이썬 파일이 있는 디렉토리)
로 디렉토리 이동pyinstaller --onefile (파이썬 파일명.py)
로 실행파일 생성--onefile
을 하면 용량을 조금 더 커지지만 하나의 파일로 샥 정리해서 만들어준다!--icon=(디렉토리\파일명.ico)
를 하면 실행파일 아이콘을 지정할 수 있다!pyinstaller
, pyqt5
가 제대로 설치되어있는지부터 확인pyinstaller --version
, conda list pyqt5
로 버전 확인.spec파일
, build폴더
, dist폴더
삭제 후 재시도*클라우드 버전은 위에서 언급한대로 연결된 클라우드 디비의 전자지갑과 oracle client 파일이 필요하다.
*우리팀의 파이썬 챗봇의 경우 해당 oracle instant client 파일 안에 전자지갑과 실행 파일을 포함해서 배포할 예정이기 때문에, 이런 상황을 가정하고 실행 방법을 설명하겠다.
[플레e봇 실행파일 다운로드 링크(구글 드라이브) ▶ '플레e봇(1.2)_cloud.zip' 다운로드]
플레e봇(1.2)_cloud.zip
다운로드 및 압축 해제oracle 폴더
를 C드라이브로 이동 (경로를 다음과 같이 설정 C:\oracle\instantclient_19_11
)C:\oracle\instantclient_19_11
로 변경플레e봇
입력📍 파일을 읽어오는데 시간이 조금 걸립니다.
📍 실행 시 cmd를 사용하지 않고, 플레e봇.exe
를 클릭하여 실행 가능합니다.
*로컬 버전의 경우 개인 컴퓨터에 연결된 오라클 로컬 데이터베이스에 파이썬이 연동된다.(개인 컴퓨터에 오라클 로컬 데이터베이스가 연결되어있지 않다면 로컬 버전 작동 불가.., 데이터베이스 연동 기능을 추가해서 어쩔 수가 없다ㅜ)
[플레e봇 실행파일 다운로드 링크(구글 드라이브) ▶ '플레e봇(1.2)_local.exe' 다운로드]
📍 실행 컴퓨터에 오라클 로컬 데이터베이스가 생성되어 있지 않다면 작동이 불가합니다.