pyinstaller怎么打包既有cmd命令又有gui的py文件

pyinstaller怎么打包既有cmd命令又有gui的py文件,第1张

1、下载pyinstaller

目前pyinstaller支持的python版本为23-27,可以到官网下载。

2、安装

下载完成后,解压即可。

3、pyinstaller使用方法

使用也非常的简单,cmd下进入解压出来的目录,执行如下命令

python pyinstallerpy [opts] yourprogrampy

主要选项包括:

-F, –onefile 打包成一个exe文件

-D, –onedir 创建一个目录,包含exe文件,但会依赖很多文件(默认选项)。

-c, –console, –nowindowed 使用控制台,无界面(默认)

-w, –windowed, –noconsole 使用窗口,无控制台

文件构成

使用pyinstaller打包的时候,仅打包py文件,其余依赖项只需在打包完成后,拷入打包生成的根目录即可。

多文件打包

命令格式如下,下命令为一条命令,为方便显示做了分行处理:

pyinstaller [主文件] -p [其他文件1] -p [其他文件2]

--hidden-import [自建模块1]

--hidden-import [自建模块2]

# 以上为一整条命令

以上文图中结构为例,在根目录打开命令窗口,输入命令:

pyinstaller mainpy -p mysqlpy -p otherpy --hidden-import mysql --hidden-import other

在目录结构:“程序根目录\dist\main\” 下可以找到生成的mainexe。将其他依赖文件拷贝进入“程序根目录\dist\main\” 下,即可运行。

1、下载并安装py2exe,可下载最新版本。

2、编写安装脚本,比较简单,不过多解释,如下:

Screenshot_setuppy

#!/usr/bin/env python

# -- coding: utf-8 --

from distutilscore import setup

import py2exe

includes = ["encodings", "encodings"]

data_files = ['CameraDlldll']

options = {"py2exe":

{ "compressed": 1,

"optimize": 2,

"bundle_files": 1,

"includes": includes

}

}

setup(

version = "10",

description = "Screenshot Tool",

name = "Screenshot Tool",

options = options,

zipfile=None,

data_files = data_files,

console=[{"script": "Screenshotpy", "icon_resources": [(1, "Screenshotico")] }]

)

各参数含义见第5小节或执行python命令行下执行help(py2exe)查看。

3、打包程序:

a、将要找包的程序、文件和打包脚本放在同一目录下,如下:

E:\tmp\pyexe_tmp>tree /F

文件夹 PATH 列表

卷序列号码为 0007F240 101F:F68D

E:

CameraDlldll

screenshotico

Screenshotpy

screenshot_setuppy

没有子文件夹

E:\tmp\pyexe_tmp>

b、执行打包脚本:

E:\tmp\pyexe_tmp>python screenshot_setuppy py2exe

python screenshot_setuppy py2exe

running py2exe

creating E:\tmp\pyexe_tmp\build

creating E:\tmp\pyexe_tmp\build\bdistwin32

creating E:\tmp\pyexe_tmp\build\bdistwin32\winexe

creating E:\tmp\pyexe_tmp\build\bdistwin32\winexe\collect-26

creating E:\tmp\pyexe_tmp\build\bdistwin32\winexe\bundle-26

creating E:\tmp\pyexe_tmp\build\bdistwin32\winexe\temp

creating E:\tmp\pyexe_tmp\dist

searching for required modules

parsing results

finding dlls needed

create binaries

byte compile python files

writing byte-compilation script 'e:\tmp\tmp1ecbcwpy'

最近写了一个小小的程序,需要进行封装exe,为了简单,就直接用了pyinstaller这个模块,对于python36版本的童鞋来说,简直方便的不要。下面就给大家介绍一下如何用pyinstaller去封装程序为exe程序。

首先,需要安装一下pip这个应用,这个已经在前面的文章中说过了,windows和linux都有请借鉴windows和linux。

第二步,安装好pip之后,在cmd命令窗口中输入pip install pyinstaller即能安装上pyinstaller,那么接下来要介绍一下关于pyinstaller几个指令了:

-w指令

直接发布的exe应用带命令行调试窗口,在指令内加入-w命令可以屏蔽;

-F指令

注意指令区分大小写。这里是大写。使用-F指令可以把应用打包成一个独立的exe文件,否则是一个带各种dll和依赖文件的文件夹;

-p指令

这个指令后面可以增加pyinstaller搜索模块的路径。因为应用打包涉及的模块很多。这里可以自己添加路径。不过经过笔者测试,site-packages目录下都是可以被识别的,不需要再手动添加。

那么通常是使用-F指令,使用的语法是:pyinstaller -F (python程序名称)py

1、安装py2app库

2、终端执行命令:py2applet --make-setup xxpy

若执行失败,则先找到py2app库的地址: 终端执行:sudo find / -name 'py2applet' -type f      ——  该命令也可以用来查找其他

a、终端执行:/System/Library/Frameworks/Pythonframework/Versions/27/Extras/bin/py2applet --make-setup /Users/wangzai/PycharmProjects/test/testpy

出现wrote setuppy 表示成功

b、终端执行:

python39 setuppy py2app

出现以下界面表示成功!

生成的app文件在dist里

复制app地址在终端执行,执行成功!

/Users/wangzai/Library/Python/39/lib/python/site-packages/dist/testapp/Contents/MacOS/test

以上就是关于pyinstaller怎么打包既有cmd命令又有gui的py文件全部的内容,包括:pyinstaller怎么打包既有cmd命令又有gui的py文件、Python项目文件(多个子文件,.py文件等)如何用pyinstaller打包为可执行exe文件、如何将一整个python工程打包等相关内容解答,如果想了解更多相关内容,可以关注我们,你们的支持是我们更新的动力!

欢迎分享,转载请注明来源:内存溢出

原文地址:https://54852.com/zz/9835000.html

(0)
打赏 微信扫一扫微信扫一扫 支付宝扫一扫支付宝扫一扫
上一篇 2023-05-02
下一篇2023-05-02

发表评论

登录后才能评论

评论列表(0条)

    保存