콘솔워크

[Python] pyinstaller 사용 시 chromedriver.exe와 같은 실행파일(exe)추가 본문

프로그래밍/python

[Python] pyinstaller 사용 시 chromedriver.exe와 같은 실행파일(exe)추가

콘솔워크 2021. 2. 14. 09:19
반응형

uipath.tistory.com/68

 

[Python pyinstaller] exe 윈도우 실행 파일 만들기

1. pyinstaller 설치 pip 명령오로 pyinstaller를 설치한다. pip install pyinstaller 2. 명령어실행 설치후에 윈도우 실행파일을 만들고자하는 파일명을 입력한다. pyinstaller -w -F [파일명] pyinstaller -w -..

uipath.tistory.com

pyinstaller 사용법에 대해서는 위에 포스팅 참조해보세요.

 

 

코드 내에 chromedriver가 사용되는 경우, 실행파일이 제대로 실행되지 않는 문제가 발생합니다.

이는 실행에 필요한 chromedriver가 실행파일에 포함되지 않아 발생하는 문제입니다. 

 

 

1. 이를 해결하기 위해서는 먼저 파이썬 코드에 이 내용을 복사해서 붙여넣습니다. 

from selenium 
import webdriver import sys, os 
if getattr(sys, 'frozen', False):   
   chromedriver_path = os.path.join(sys._MEIPASS, "chromedriver.exe")   
   driver = webdriver.Chrome(chromedriver_path) 
 else:    
    driver = webdriver.Chrome()

os 라이브러리를 이용해 크롬드라이버의 위치를 직접 지정합니다. 

저 코드는 파이썬 파일과 크롬드라이버가 같은 폴더에 위치할 때의 경우입니다. 

다른 위치에 크롬드라이버가 있는 경우, 이 부분을 수정하시면 됩니다. 

 -  chromedriver_path = os.path.join(sys._MEIPASS, "크롬드라이버위치")

 -  chromedriver_path = os.path.join(sys._MEIPASS, "크롬드라이버위치")

 

 

2. 그리고 pyinstaller로 실행파일을 생성 시, 크롬드라이버를 추가합니다. 

pyinstaller --add-binary "chromedriver.exe";"." yourfile.py

pyinstaller --add-binary "chromedriver.exe";"." yourfile.py

ex)

pyinstaller -n kin-answer -w -F --add-binary "chromedriver.exe";"." main.py

 

3. exe 파일 실행 시 cmd 창이 뜨는걸 막고 싶으시면 

--noconsole 또는 -w을 추가합니다.

 

pyinstaller --onefile --noconsole -n 아이템스카우트_v4 main.py

pyinstaller -f -w -n 아이템스카우트_v4 main.py

 

반응형