可执行文件上的Python文件提取器

可执行文件上的Python文件提取器,python,exe,pyinstaller,Python,Exe,Pyinstaller,我已经用PythonPyInstaller构建了一个可执行文件,需要 当我执行可执行文件时,在可执行文件中保留一些文件 将其他文件解压缩到特定路径,如安装 特定文件夹中的包 我已经做了以下工作 pyinstaller -F --add-data 'installation.zip:installation.zip' --onefile 但我不知道如何将可执行文件中的zip文件解压缩到 目标。我使用以下代码创建了exe pyinstaller -F --add-data "installat

我已经用PythonPyInstaller构建了一个可执行文件,需要 当我执行可执行文件时,在可执行文件中保留一些文件 将其他文件解压缩到特定路径,如安装 特定文件夹中的包

我已经做了以下工作

  pyinstaller -F --add-data 'installation.zip:installation.zip' --onefile
但我不知道如何将可执行文件中的zip文件解压缩到
目标。

我使用以下代码创建了
exe

pyinstaller -F --add-data "installation.zip;installation" phpfilescopy_extract.py --console --onefile
我已经使用以下代码提取了zip文件。 sys.\u MEIPASS-提供我使用的临时exe提取路径 找到zip文件并从路径中提取


使用
sys.\u MEIPASS
在运行时访问提取的文件。@JonathonReinhart这确实有帮助,谢谢兄弟。我已经分享了我的成果
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 ")