py2exe使用方法

合集下载

解包和打包exe文件的方法

解包和打包exe文件的方法

解包和打包exe文件的方法1.引言1.1 概述概述:在软件开发过程中,我们经常会遇到需要解包和打包exe文件的情况。

解包exe文件是指将经过编译的可执行文件进行还原,以获取其中的源代码、资源文件等内容。

而打包exe文件则是将源代码和相关资源文件重新打包成可执行文件。

这两个操作在软件开发、软件逆向工程和软件调试等领域中都有广泛的应用。

解包exe文件的方法可以分为使用解包工具和手动解包两种方式。

使用解包工具是指使用专门的软件工具来进行解包操作,它能够自动分析可执行文件的结构并提取其中的内容。

手动解包则是通过一些常见的手段,如二进制文件编辑器或调试器,以手动的方式逆向还原可执行文件中的内容。

打包exe文件的方法也可以分为使用打包工具和手动打包两种方式。

使用打包工具可以方便地将源代码和相关资源文件打包成可执行文件,它提供了简单易用的图形界面和各种打包选项。

手动打包则需要开发人员手动进行文件的整理和编译操作,相对来说比较繁琐。

总结起来,解包和打包exe文件是软件开发中常见的操作,通过解包我们可以获取到可执行文件中的源代码和资源文件,有助于我们理解和调试软件;而打包exe文件则可以将我们的源代码和资源文件重新打包成可执行文件,方便我们发布和分发软件。

在进行解包和打包操作时,可以根据需要选择使用相应的工具或手动操作的方式,以达到我们的目的。

1.2 文章结构文章结构负责为读者介绍本文的组织和内容安排。

本文主要围绕解包和打包exe文件的方法展开讨论。

在本文中,我们将首先提供一个引言部分,概述本文的背景和目的。

接下来,将详细介绍解包exe文件的方法,包括使用解包工具和手动解包。

然后,我们将探讨打包exe文件的方法,包括使用打包工具和手动打包。

最后,我们将通过总结解包和打包exe文件的方法,提供一些结论和建议。

通过本文的阅读,读者将能够全面了解解包和打包exe文件的技术和方法,并且可以根据自己的需求选择适合的方式进行操作。

python学习教程之使用py2exe打包

python学习教程之使用py2exe打包

python学习教程之使⽤py2exe打包前⾔本⽂主要给⼤家介绍了关于python使⽤py2exe打包的相关内容,分享出来供⼤家参考学习,下⾯话不多说了,来⼀起看看详细的介绍吧。

遇坑之前经过折腾,pyinstaller打包⽂件可以在别的windows7上运⾏。

但是,mfk, 客户说是xp系统。

崩溃使⽤pyinstaller各种折腾,打包出来的依然是不是有效的win32程序,各种报错。

后来尝试使⽤ py2exe 打包使⽤1、安装不废话,下载exe版,傻⽠式安装2、使⽤编写类似⼀个 setup.py ⽂件,写各种配置(下边有)调⽤命令python setup.py py2exe或者在setup.py下添加如下语句,点击⽂件⾃动运⾏sys.argv.append('py2exe')问题1、不是有效的win32程序换32位的python,其他模块都重装,包括pyqt52、py2exe UnicodeDecodeError: 'gbk' codec can't decodepy2exe 的runtime.py ⾥打开⽂件制定为utf-8with open(target.script, "U",encoding="UTF-8") as script_file:3、编译PyQt5 异常把⼀句 Exception, e 该为 Exception as e 就好了4、could not find or load the Qt platform plugin "windows"把 C:\Python34\Lib\site-packages\PyQt5\plugins 下的 platforms 拷贝到打包⽬录下的platforms搞定5、找不到 msvc**100.dll 问题把system32 ⽬录下的 msvc**.dll 的三个dll⽂件拷贝到打包⽬录下分享⼀下完成的打包脚本from distutils.core import setupimport py2exeimport sysimport osimport globimport shutilimport msvcrt#this allows to run it with a simple double click.sys.argv.append('py2exe')PYTHON_HOME = os.getenv('PYTHON_HOME')TARGET_DIR = '../build2'# 删除原来⽣成的路径if os.path.exists(TARGET_DIR):print("是否删除⽂件夹(y/n)\t" + os.path.abspath(TARGET_DIR))d = msvcrt.getch()if d == b'y':shutil.rmtree(TARGET_DIR)print(os.path.abspath(TARGET_DIR)+' 被删除')def find_data_files(dlist,source,target,patterns):# 是否有特殊符号if glob.has_magic(source) or glob.has_magic(target):raise ValueError("Magic not allowed in src, target")ret = dlistfor pattern in patterns:# 给pattern 上添加⽬录pattern = os.path.join(source,pattern)# 通过pattern寻找满⾜条件的⽂件for filename in glob.glob(pattern):# 判断⽂件是否存在if os.path.isfile(filename):# 获取相对source 的相对路径relP = os.path.relpath(filename,source)# 设置为⽬标路径targetpath = os.path.join(target,relP)# 获取⽬标⽂件的⽂件夹path = os.path.dirname(targetpath)ret.setdefault(path,[]).append(filename)print('-------------------')print('资源拷贝')data_files = {}# 拷贝xp需要的msvc**100.dllfind_data_files(data_files,'C:/Windows/System32/','',['msvc*100.dll'])# 拷贝pyqt5⾥依赖的dllfind_data_files(data_files, PYTHON_HOME+'/Lib/site-packages/PyQt5/plugins/platforms','platforms',['*.dll']) # 把当前⽬录下ui⽂件夹内容拷贝到⽬标⽂件夹的ui⽂件夹下find_data_files(data_files,'ui','ui',['*.*'])# 拷贝配置⽂件find_data_files(data_files,'config/','config/',['*.*'])# 转成键值对集合data_files = data_files.items()print(data_files)print('--------------------------')OPTIONS = {'py2exe': {"includes": ["sip"],# 导⼊依赖 sip# "dll_excludes": ["MSVCP90.dll","MSVCR100.dll"],# 是否压缩 1 压缩。

Python完全新手教程

Python完全新手教程

Python完全新手教程作者:taowen, billriceLesson 1 准备好学习Python的环境下载的地址是:为了大家的方便,我在校内作了copy:http://10.1.204.2/tool/compiler&IDE/Python-2.3.2-1.exelinux版本的我就不说了,因为如果你能够使用linux并安装好说明你可以一切自己搞定的。

运行环境可以是linux或者是windows:1、linuxredhat的linux安装上去之后一定会有python的(必须的组件),在命令行中输入python 回车。

这样就可以进入一个>>>的提示符2、windows安装好了python之后,在开始菜单里面找到Python2.3->IDLE,运行也会进入一个有>>>提示符的窗口开始尝试Python1、输入:welcome = "Hello!"回车然后又回到了>>>2、输入:print welcome回车然后就可以看到你自己输入的问候了。

Lesson 2 搞定环境之后的前行Python有一个交互式的命令行,大家已经看到了吧。

所以可以比较方便的学习和尝试,不用“新建-存档-编译-调试”,非常适合快速的尝试。

一开始从变量开始(其实说变量,更准确的是对象,Python中什么都可以理解为对象)。

变量welcome = "hello!"welcome就是变量名,字符串就是变量的类型,hello!就是变量的内容,""表示这个变量是字符串,""中间的是字符串的内容。

熟悉其他语言的人,特别是编译类型的语言,觉得没有变量的声明很奇怪。

在python中用赋值来表示我要这么一个变量,即使你不知道要放什么内容,只是要先弄一个地方来放你的东西,也要这么写:store = ""不过这个还是说明了store是字符串,因为""的缘故。

PY2EXE使用方法(WINDOWS环境)

PY2EXE使用方法(WINDOWS环境)

py2exe使用方法(windows环境)
1、安装python2.7和py2exe软件;
2、设置环境变量(目的DOS环境下可以运行python):
计算机>>属性>>更改设置>>高级>>环境变量>>系统变量
双击path,弹出编辑系统变量文本框;
将python的安装路径复制到变量值文本框的最后边(如:我安装路径为:C:\Python27,则将;C:\Python27复制到变量值文本框的最后面)
3、编写脚本HelloWorld.py:
打开IDLE(Python GUI)>>File>>New Window新建窗口
输入语句print("Hello World!")
保存到F:\python目录下;
4、编写脚本SetUp.py,并保存到HelloWorld.py相同目录内;:
输入语句:
#setup.py
from distutils.core import setup
import py2exe
#----HelloWorld.py为生成可执行文件的脚本---------#
setup(console=['HelloWorld.py'])
5、进入DOS环境下:开始>>cmd打开DOS编辑框;
进入F:\python目录:
f:
cd python
6、输入命令python SetUp.py py2exe生成HellWorld.py的可执行文件HelloWorld.exe,并存放在F:\python\dist目录下;。

python使用的步骤

python使用的步骤

python使用的步骤Python使用的步骤可以分为以下几个主要阶段:安装Python、编写代码、调试运行、测试和优化、部署和维护。

下面将详细介绍每个步骤。

第一步:安装Python1. 在Python官方网站(2. 运行安装包,按照安装向导的提示进行安装。

3. 安装完成后,可以在命令行输入python命令,验证Python是否成功安装。

第二步:编写代码1. 打开文本编辑器(如记事本、Sublime Text等),新建一个空白文件。

2. 在文件中编写Python代码,可以使用文本编辑器提供的代码补全、自动缩进等功能来提高编码效率。

3. Python代码的基本语法和特点:Python是一种解释型脚本语言,使用缩进来表示代码块;Python支持面向对象编程、函数式编程和结构化编程等多种编程范式。

第三步:调试运行1. 在完成代码编写后,保存文件并确定文件名以.py结尾,表示Python 源代码文件。

2. 在命令行中切换到Python源代码文件所在的目录。

3. 输入python 文件名.py命令,运行Python源代码文件。

4. 如果代码中有错误,Python解释器会输出错误信息,根据错误信息来修复代码。

5. 可以使用print语句输出程序中的变量值,以便调试代码。

第四步:测试和优化1. 编写测试代码,对已编写的代码进行测试验证。

2. 使用Python的单元测试框架(如unittest、pytest等)编写和执行单元测试。

3. 分析测试结果,修复代码中的错误和缺陷。

4. 使用Python的性能分析工具(如cProfile、line_profiler等)来分析代码的性能瓶颈。

5. 优化代码,采用更高效的算法或数据结构,减少资源的消耗,提高代码执行速度和效率。

第五步:部署和维护1. 将完成测试和优化的代码部署到目标环境中。

2. 部署Python代码的方法有多种,包括将代码打包成可执行文件、发布到PyPI(Python Package Index)供其他人使用等。

python 打包后执行方法

python 打包后执行方法

python 打包后执行方法【原创版3篇】篇1 目录1.Python 打包可执行文件的背景和需求2.Python 打包可执行文件的两个常用工具:PyInstaller 和 py2exe3.PyInstaller 的使用方法和注意事项4.py2exe 的使用方法和注意事项5.使用 Enigma Virtual Box 让打包后的文件更完美6.总结篇1正文Python 打包可执行文件的方法Python 作为一门广泛应用于各种领域的编程语言,其可移植性和跨平台性深受开发者喜爱。

然而,在使用 Python 编写程序时,我们可能会遇到需要在没有安装 Python 的环境下运行程序的需求。

为了满足这一需求,我们需要将 Python 程序打包成可执行文件,以便在其他计算机上直接运行。

本文将介绍两种常用的 Python 打包工具:PyInstaller 和py2exe,以及它们的使用方法和注意事项。

一、Python 打包可执行文件的背景和需求Python 程序通常需要依赖本机安装的 Python 库。

当我们需要在没有安装 Python 的机器上运行程序时,就需要将 Python 程序及其依赖库打包成一个可执行文件。

这样,接收者无需安装 Python 环境,即可直接运行我们打包好的程序。

二、Python 打包可执行文件的两个常用工具:PyInstaller 和py2exe目前,有两个比较好用的 Python 打包工具:PyInstaller 和 py2exe。

它们分别适用于不同的平台。

1.PyInstaller:这是一个跨平台的 Python 打包工具,可以应用在Windows、Linux 以及 Mac OS X 上。

2.py2exe:这是一个主要用于 Windows 平台的 Python 打包工具。

三、PyInstaller 的使用方法和注意事项1.使用 PyInstaller 的步骤:首先,需要使用 pip 安装 PyInstaller。

py2exe使用方法超详细解析(有截图)

py2exe使用方法超详细解析(有截图)

py2exe使用方法详解最近有很多朋友对网上的py2exe使用教程看不懂,我在这里发布图文详解。

平台:python2.51py2exe:0.69 for python2.5这里以打包e://hello.py为例第一步:在e盘新建hello.py:helo.py代码如下:--------------------print "hello"raw_input()--------------------图片:第二步:可以在任何路径任何位置新建一个名为setup.py的文件,这里把setup.py建在e盘根目录e:\setup.py:代码如下:from distutils.core import setupimport py2exesetup(console=[r’e:/hello.py’])#这里是要打包的py文件的路径。

第三步:打开命令提示符(cmd)。

注意:不是python解析器,看到网上很多人都把其理解为python 解析器,注意:python解析器!!!是cmd然后切换到你的python25目录,这里我的python25目录为d:\python25然后在cmd下输入:python e:\setup.py py2exe注:e:\setup.py是你的setup.py位置(此位置可自行替换)然后按Enter继续,看见一大堆输出信息。

搞定!现在去d:\python25目录看看是否生成了名为dist 的文件夹进入文件夹dist,点击helo.exe就可以运行你打包的程序了。

而dist文件夹就是你打包好的程序文件夹,记住,发布的时候要把里面的所有文件都一同发布!!!运行结果:如果你要打包*.pyw文件,只要把setup.py里的console改成windows即可如果还不懂,可以试试这个图形化打包的软件:点击这里查看。

再不懂可以留言问我!py2exe是一种python发布工具,可以用来将 python 脚本转换成 windows 下的可执行程序,而且不需要安装 python 环境便可运行。

Python打包exe文件方法汇总【4种】

Python打包exe文件方法汇总【4种】

Python打包exe⽂件⽅法汇总【4种】Python作为解释型语⾔,发布即公开源码,虽然是提倡开源但是有些时候就是忍不住想打包成exe,不仅仅是为了对代码进⾏加密,⽽是为了跨平台。

防⽌有些没有安装py环境的电脑⽆法运⾏软件。

⽬录对python代码打包成exe的⽅式有4种,py2exe,pyinstaller,cx_Freeze,nuitka,分别对以上4种⽅法介绍,欢迎纠错和提供新的办法。

py2exe介绍py2exe是⼀个将python脚本转换成windows上的可独⽴执⾏的可执⾏程序(*.exe)的⼯具,这样,你就可以不⽤装python⽽在windows系统上运⾏这个可执⾏程序。

优点:可以把python打包成exe缺点:打包好的 exe只能在相同的系统下运⾏,⽐如你在XP系统⽤py2exe打包好的exe只能在XP上运⾏,在win7上肯定有问题,⽽且也是存在在别的XP机⼦上也可能不能运⾏,因为⼀些别的机⼦可能会缺少dll⽂件什么的,作者我当时之所以抛弃py2exe 也是因为这个原因;打包的⽂件也需要打包同exe下的dll,和⼀些库的压缩包,不然exe根本跑不起来打包时候报始终报RuntimeError: BeginUpdateResource错误,就需要拷贝dll⽂件。

C:\WINDOWS\system32\python27.dll复制到dist⽬录总之⽑病⼀⼤堆,基本上已经舍弃了使⽤安装好后,准备进⾏打包准备⼀个⽂件x.py,这个x.py就是想要打包成exe。

然后这x.py同⽬录下新建⼀个setup.py,内容如下:#coding=utf-8from distutils.core import setupimport py2exeincludes = ["encodings", "encodings.*"]#要包含的其它库⽂件options = {"py2exe":{"compressed": 1, #压缩"optimize": 2,"ascii": 1,"includes": includes,"bundle_files": 1 #所有⽂件打包成⼀个exe⽂件}}setup (options = options,zipfile=None, #不⽣成library.zip⽂件console=[{"script": "x.py", "icon_resources": [(1, "Q.ico")] }]#源⽂件,程序图标)然后这cmd窗⼝下运⾏:python setup.py py2exepyinstallerPyInstaller除了win32平台外还⽀持Linux,Unix平台.py2exe的⽤法在前⾯的博⽂⾥已经有了,现在看看PyInstaller,pyinstaller是⽬前应⽤最多的python打包⼯具,也是我最常⽤的。

  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

py2exe使用方法
一、简介
py2exe是一个将python脚本转换成windows上的可独立执行的可执行程序(*.exe)的工具,这样,你就可以不用装python而在windows系统上运行这个可执行程序。

py2exe已经被用于创建wxPython,Tkinter,Pmw,PyGTK,pygame,win32com client和server,和其它的独立程序。

py2exe是发布在开源许可证下的。

二、安装py2exe
从/py2exe下载并运行与你所安装的Python对应的py2exe 版本的installer,这将安装py2exe和相应的例子;这些例子被安装在lib\site-packages\py2exe\samples目录下。

三、py2exe的用法
如果你有一个名为helloworld.py的python脚本,你想把它转换为运行在windows上的可执行程序,并运行在没有安装python的windows系统上,那么首先你应写一个用于发布程序的设置脚本例如mysetup.py,在其中的setup函数前插入语句import py2exe 。

mysetup.py示例如下:
# mysetup.py
from distutils.core import setup
import py2exe
setup(console=["helloworld.py"])
然后按下面的方法运行mysetup.py:
python mysetup.py py2exe
上面的命令执行后将产生一个名为dist的子目录,其中包含了helloworld.exe,python24.dll,library.zip这些文件。

如果你的helloworld.py脚本中用了已编译的C扩展模块,那么这些模块也会被拷贝在个子目录中,同样,所有的dll文件在运行时都是需要的,除了系统的dll文件。

dist子目录中的文件包含了你的程序所必须的东西,你应将这个子目录中的所有内容一起发布。

默认情况下,py2exe在目录dist下创建以下这些必须的文件:
1、一个或多个exe文件。

2、python##.dll。

3、几个.pyd文件,它们是已编译的扩展名,它们是exe文件所需要的;加上其它的.dll文件,这些.dll是.pyd所需要的。

4、一个library.zip文件,它包含了已编译的纯的python模块如.pyc或.pyo
上面的mysetup.py创建了一个控制台的helloword.exe程序,如果你要创建一个图形用户界的程序,那么你只需要将mysetup.py中的console=["helloworld.py"]替换为windows=["myscript.py"]既可。

py2exe一次能够创建多个exe文件,你需要将这些脚本文件的列表传递给console或windows 的关键字参数。

如果你有几个相关联的脚本,那么这是很有用的。

运行下面个命令,将显示py2exe命令的所有命令行标记。

python mysetup.py py2exe --help
四、指定额外的文件
一些应用程序在运行时需要额外的文件,诸如配置文件、字体、位图。

如果在安装脚本中用data_files可选项指定了那些额外的文件,那么py2exe能将这些文件拷贝到dist子目录中。

data_files应包含一个元组(target-dir, files)列表,其中的files是这些额外的文件的列表。

示例如下:
# mysetup.py
from distutils.core import setup
import glob
import py2exe
setup(console=["helloworld.py"],
data_files=[("bitmaps",
["bm/large.gif", "bm/small.gif"]),
("fonts",
glob.glob("fonts\\*.fnt"))],
)
说明:data_files选项将创建一个子目录dist\bitmaps,其中包含两个.gif文件;一个子目录dist\fonts,其中包含了所有的.fnt文件。

五、Windows NT services
你可以通过传递一个service关键字参数给setup函数来建造Windows NT services
,这个service参数的值必须是一个Python模块名(包含一service类)的列表。

示例如下:
# mysetup.py
from distutils.core import setup
import py2exe
setup(service=["MyService"])
所建造的可执行的service是可以通过在其后跟一定的命令行参数标记来自行安装和卸载的。

你可以通过在这个可执行的service(exe)后跟一-help参数来得到更多的帮助。

六、COM servers
你可以通过传递一个com_server 关键字参数给setup函数来建造Windows NT services
,这个service参数的值必须是一个Python模块名(包含一个或多个COM server 类)的列表。

示例如下:
# mysetup.py
from distutils.core import setup
import py2exe
setup(com_server=["win32com.server.interp"])
默认情况下,DLL和EXE servers被建造,你不需要它们的话你可以简单的删除它们。

相关文档
最新文档