python导出_Python脚本导出为exe程序
三.开始打包PY文件为EXE文件
cmd(或Power shell)进入py程序项目目录,执行命令:pyinstaller -F -w --icon=xxx.ico main.py --noconsole。其中,-F表示生成单exe可执行文件,-w表示窗体程序,
--icon是设置exe的显示图标,'main.py'是程序的入口,--noconsole 表示不展示cmd窗口,反过来想看cmd窗口就改成--console。
编译:pyinstaller -F -w game.py (-F表示打包单个文件,-w是为了打开exe时候不弹出黑框)
设置exe的图标:pyinstaller -F -w -i bitbug_favicon.ico game.py (-i用来设置编译成exe文件的图标,后面跟.ico格式的图片文件)
一阵刷屏之后,终于打出成功的提示:
程序目录下多了几个文件夹:一个spec文件,build文件夹,一个dist文件夹,其中的dist文件夹内就是我们生成的exe应用程序:
打开目录dist我们会看到我们想要的EXE程序文件,双击运行它。是不是我们的程序呢?
至此我们的 “Python脚本导出为exe程序” 成功结束
四、Pyinstaller打包多个.py文件
一、多文件打包为单一文件时,即pyinstaller 命令中加入了-F,也可能会导致错误。尽量不要使用-F。
二、尽量把打包后的文件放在英文目录下。
多个.py文件打包命令格式如下:
pyinstaller [主文件] -p [其他文件1] -p [其他文件2] --hidden-import [自建模块1] --hidden-import [自建模块2]
三、使用pyinstaller打包的时候,仅打包.py文件,其余依赖项只需在打包完成后,拷入打包生成的根目录即可。
四、举例说明:
我的文件构成
其中VIPCracker.py是主程序入口文件,其他.py文件是自建模块,需要在主文件中使用,zh_CN.qm和JygoxigmJ.db文件是程序中需要用到的额外文件(将它们放在打包后生成的.exe文件的同一个目录下即可)
以上文图中结构为例,在根目录打开命令窗口并进入根目录下,输入命令:
pyinstaller -F -i crack.ico -w VIPCracker.py -p CholenSql.py -p ImgICon.py -p VIPGUI.py
--hidden-import CholenSql --hidden-import ImgICon --hidden-import VIPGUI
拓展知识:pyinstaller 中的-i crack.ico 可以设置生成.exe文件的图标。
多文件打包:
命令格式如下,下命令为一条命令,为方便显示做了分行处理:
pyinstaller [主文件] -p [其他文件1] -p [其他文件2]
--hidden-import [自建模块1]
--hidden-import [自建模块2]
# 以上为一整条命令
pyinstaller main.py -p mysql.py -p other.py --hidden-import mysql --hidden-import other
在目录结构:“程序根目录\dist\main\” 下可以找到生成的main.exe。将其他依赖文件拷贝进入“程序根目录\dist\main\” 下,即可运行
项目XXX举例,main和ico文件要放一起 -p 文件夹,因为项目下我创建了case、autodriver、data、page文件夹,文件夹里面放的*.py文件通过--hiddent-import指向,代码如下:
pyinstaller -F -i t.ico -w main.py -p case -p autodriver -p data -p page -p page --hidden-import workday.py --hidden-import auto_driver.py --hidden-import login.csv --hidden-import base_page.py --hiddent-import sub_page.py
注意:--hiddent-import是连在一起的,dist文件夹里面要把需要的问卷copy进来,然后整个dist文件夹就可以任意移动到其他位置,到时候运行*.exe文件就可以执行程序了
参考文献:
1、如何把Python脚本导出为exe程序: https://www.cnblogs.com/robinunix/p/8426832.html
2、Python编译成exe: https://blog.csdn.net/hxy199421/article/details/86609219
3、Python学习笔记(15)-Python代码转换为exe可执行程序详解:https://blog.csdn.net/woshisangsang/article/details/73230433
4、python文件封装成*.exe文件(单文件和多文件): https://www.cnblogs.com/jackzz/p/9431923.html
5、Pyinstaller打包多个.py文件: https://blog.csdn.net/CholenMine/article/details/80964272
python导出_Python脚本导出为exe程序相关推荐
- Python学习之道-打包成exe程序
Python学习之道-打包成exe程序 一.打包成exe程序 Pyinstaller安装 作用 使用 Pyinstaller相关参数 Pyinstaller使用总结 尽量用from.....impor ...
- python代码变成运行程序_python脚本转化单个exe执行程序
操作系统平台: Windows Server 2003 R2 Enterprise SP2 X86简体中文版 1.ActivePython-2.7.5.6-win32-x86.msi 2.setupt ...
- python封装exe如何返回上一步_如何将python脚本封装成exe程序?
我们在编写代码时候,,有没有想过怎么去运行这个代码,绝非是在编程软件里的预览哦.而是让用户去使用,绝对要成一个安装包,如果刚刚入门的小伙伴,肯定没有想过这些,因为大部分人,还处于在搭建代码的状态下,但 ...
- python程序封装成exe_如何将python脚本封装成exe程序?
我们在编写代码时候,,有没有想过怎么去运行这个代码,绝非是在编程软件里的预览哦.而是让用户去使用,绝对要成一个安装包,如果刚刚入门的小伙伴,肯定没有想过这些,因为大部分人,还处于在搭建代码的状态下,但 ...
- python输入输出拓展: 制作简单的exe程序(温度转换器)
制作简单的exe程序 为了防止代码被盗,需要对代码进行打包.这里,就需要制作exe程序. 准备工作: 1. 安装第三方模块 pyinstaller 2. . 阿里巴巴矢量图标库(www.iconfon ...
- Python 技术篇-解决转化后的exe程序被360误杀问题实例演示,python生成的exe被360识别为勒索病毒原因及解决方法
我用 python 做了两个功能相似的程序,A 程序没问题,B 程序有问题,被 360 误杀,对比后发现 B 程序引用了 os 库,替换成了别的库实现 os 库的功能,新的程序不再有问题.罪魁祸首就是 ...
- python 参数_python脚本命令行参数解析
前言 在python命令行参数的解析模块中,我们常用的就是sys内置模块,但该模块的功能过于原始单一,很多具体的逻辑功能还得靠我们自己手动实现,实在较为麻烦.在这里向大家推荐一个好用的参数解析的模块a ...
- python中断响应_Python手动中断(Ctrl-C)多线程程序
引 灵感来源依旧是爬虫框架项目pycrawler,爬虫作为子线程运行时不受键盘中断信号影响,Ctrl-C无法终止整个爬虫运行.另外的一个场景是多线程压力测试,需要提前终止的情况下,Ctrl-C依旧不能 ...
- 网页爬虫python代码_Python 爬虫web网页版程序代码
一:网页结构分析 二:代码实战#! /usr/bin/env python2 # encoding=utf-8 #BeautifulSoup需要安装 MySQLdb import sys,os,re, ...
最新文章
- 代码体积减少80%!Taro H5转换与优化升级
- java中解决Launch configuration TimezoneDump references non-existing project问题
- Java黑皮书课后题第8章:*8.16(对二维数组排序)编写一个方法,使用下面的方法头对二维数组排序。这个方法首先按行排序,然后按列排序
- opencvsharp中resize图像
- 查询oracle表上重复的数据库,如何确定Oracle数据库表重复的记录
- windows server 2003R2\2008R2\2012\2016 安装【故障转移群集】cluster
- 原创 TypeScript入门教程 之 迭代器
- 对Repository模式误用的反思和纠正
- Java Web提交任务到Spark Spark通过Java Web提交任务
- 自动刷新wu2198股市直播内容
- ZooKeeper 客户端: GUI+命令行两大类(史上最全,值得收藏)
- MSMS探针卡市场现状及未来发展趋势
- 子div在父div垂直居中的最好方法
- 有道智云实时语音翻译服务全新上线,86+语言实时翻译!
- Latex \TexStudio 设置数学符号
- 树莓派外接显示器黑屏_树莓派4B连接显示器黑屏或者提示input not supported
- 瑞典皇家理工学院计算机,瑞典皇家理工学院
- 2022.03全国青少年软件编程(图形化)等级考试试卷(二级)
- 生成webservice客户端以及解决SSL异常
- UI设计师需要掌握的移动APP设计技巧