一、安装pyinstaller
安装命令:pip3 install pyinstaller
二、pyinstaller打包机制
Python脚本的运行无法离开Python解释器,把脚本打包成.exe可执行文件时,pyinstaller会将Python解释器和脚本一起打包,同时,还会把需要用到的第三方库和依赖包一并打包。
三、pyinstaller打包.exe
例子:
from selenium import webdriver
driver = webdriver.Chrome()
driver.implicitly_wait(30)
driver.maximize_window()
url = "https://vd3.bdstatic.com/mda-jjaudj9vd8etbyru/mda-jjaudj9vd8etbyru.mp4?playlist=%5B%22hd%22%2C%22sc%22%5D"
driver.get(url)
pyinstaller [-F/-D] [-w/-c] [-i xxx.ico] xxx.py/xxx.spec
打包命令:pyinstaller -F filename.py
- -F 表示生成单个可执行文件。
- -F参数表示覆盖打包,不管我们打包几次,都是最新的。
- 打开cmd窗口,把路径切换到文件所在路径。
打包命令:pyinstaller -F -w filename.py
- -w:生成不带控制台的。
- -D/–onedir:默认选项,与F/–onefile参数作用相反,将程序打包为一个文件夹,文件夹中包含启动程序的exe文件和其他依赖的资源文件和DLL文件等。
打包命令:pyinstaller -F -i picturename.ico filename.py
- -i/–icon:生成指定图标的。
- build文件夹:运行后会在同路径下生成一个build文件夹,这个文件夹的作用相当于PyInstaller的工作空间,PyInstaller运行相关的文件和日志都在这个文件夹中,打包完成后可以直接删除。
- dist文件夹:运行完成后会在同路径下生成一个dist文件夹,这个文件夹下有一个跟程序同名的文件夹,打包好的exe程序就在这个文件夹下。
四、多py文件:
- 如果命令行中指定的py文件不止一个,比如“pyinstaller xxx1.py xxx2.py”,pyinstaller会依次分析并执行,并把第一个py名称作为spec和dist文件下的文件夹和程序的名称。
最后,取出 dist文件夹 中.exe ,同目录下放 浏览器驱动文件chromedriver.exe
(注意版本),压缩后发给自己朋友,双击执行即可。