我已经使用python pyinstaller构建了一个可执行文件,需要 当我执行可执行文件时,在可执行文件中保留一些文件 提取其他文件到特定路径,例如安装 特定文件夹中的软件包。
我已经完成了以下
pyinstaller -F --add-data 'installation.zip:installation.zip' --onefile
但是我不知道如何将可执行文件中的zip文件提取到 目的地。
答案 0 :(得分:0)
我已使用以下代码创建了exe
pyinstaller -F --add-data "installation.zip;installation" phpfilescopy_extract.py --console --onefile
我已经使用以下代码提取了zip文件。 sys._MEIPASS-给出我以前用来的临时exe提取路径 找到zip文件并从路径中提取
def excute(self):
global src
#source = src
dst = 'd:/destination'
# sys._MEIPASS - gives the temporary exe extraction path that i used to locate the zip files and extracted from the path
source = sys._MEIPASS + "/installation/installation.zip"
if os.path.exists(dst):
if source.endswith('.zip'):
file_zip = zipfile.ZipFile(source)
file_zip.extractall(dst)
QMessageBox.about(self, "Title", "all file's extracted")
else:
QMessageBox.about(self, "Title", "failed extract file")
else:
QMessageBox.about(self, "Title", "path not vialed ")