Pyinstaller打包附带DLL、图标和压缩EXE方法

 
 
转载: https://blog.csdn.net/xinyingzai/article/details/80282856
 

目的:

用Pyinstaller工具将python脚本打包成一个exe文件

原理:

利用spec配置文件实现

步骤:

1、提前用命令安装打包工具: pip install pyinstaller (已安装的略过);

2、先生成spec文件。用命令  pyinstaller -F test.py  生成test.spec文件,如下图:

3、编辑spec文件添加第三方DLL。例如cx_Oracle模块用到的DLL,按如下格式编辑test.spec文件的datas=[]参数;

datas=[('oci.dll','.'),('oraociei11.dll','.')]

4、编辑spec文件添加图标文件。提前准备图标文件,例如:sm.ico,在exe = EXE()中添加 icon='sm.ico' 参数,如下:

exe = EXE(pyz,
          a.scripts,
          a.binaries,
          a.zipfiles,
          a.datas,
          name='test',
          debug=False,
          strip=False,
          upx=True,
          runtime_tmpdir=None,

console=True , icon='sm.ico')

5、利用upx命令压缩exe。下载对应版本的upx工具包解压到任意目录下,执行命令

pyinstaller -F test.spec --upx upx路径

如下图:

UPX下载地址

6、spec文件配置好后,每次修改代码只需执行如下编译命令即可完成上述步骤,无需再去修改:

pyinstaller  -F  test.spec

最后打包好的exe文件:

Pyinstaller打包附带DLL、图标和压缩EXE方法的更多相关文章

  1. 用pyinstaller打包时的图标问题

    前言 因为昨天重新研究了下python的打包方法,今天一番准备把之前写的一个pdf合并软件重新整理一下,打包出来. 但在打包的过程中仍然遇到了一些问题,半年前一番做打包的时候也遇到了一些问题,现在来看 ...

  2. pyinstaller打包exe文件闪退的解决办法

    pyinstaller是python下目前能打包py文件为windows下的exe文件的一个非常友好易用的库!但是,小爬每次用pyinstaller打包时也总是遇到一些难题,有时网上搜了一圈,也没看到 ...

  3. Pyinstaller打包Pytorch框架所遇到的问题

    目录 前言 基本流程 一.安装Pyinstaller 和 测试Hello World 二.打包整个项目,在本机上调试生成exe 三.在新电脑上测试 参考资料 前言   第一次尝试用Pyinstalle ...

  4. Pyinstaller打包exe,丢失图标等问题

    Pyinstaller打包exe,丢失图标等问题 一.原因 exe运行时会解压一个名为'_MEI*'的资源文件夹到电脑的临时目录,程序结束时删除. 程序里使用'\图标.png'这样的路径,exe运行时 ...

  5. “failed to excute script xxx” PyInstaller 打包python程序为exe文件过程错误

    在使用PyInstaller打包python程序,打包命令为: pyinstaller -F -w -i manage.ico yourpyfile.py 顺便说一下几个参数的作用 -F:是直接生成单 ...

  6. PyInstaller打包成exe可执行文件

    PyInstaller 安装pyinstaller 对于那些网络比较稳定,能够流畅使用pip源地址的用户,直接下面的命令就可以搞定: pip install pyinstaller 通常我们会下载源码 ...

  7. pyinstaller打包python文件成exe(原理.安装.问题)

    py文件打包成exe文件的方式一共有三种:py2exe.PyInstaller和cx_Freeze 本文分四个步骤来详讲如何用PyInstaller将py文件打包成exe文件 1. PyInstall ...

  8. PyInstaller打包Python源文件为可执行程序exe

    1. 安装PyInstaller 使用命令:pip install PyInstaller时可能会由于网络的问题出现以下问题: pip._vendor.urllib3.exceptions.ReadT ...

  9. 【Python】 如何用pyinstaller打包python程序成exe

    [pyinstaller] pyinstaller在他们的官方网站上下载:http://www.pyinstaller.org/ 下载完pyinstaller之后还要安装一个支持包pywin32. 这 ...

随机推荐

  1. Oracle设置某张表为只读

    Oracle 11g开始支持设置某张表为只读,这样可以防范对某些表的修改,起到一定的安全性. 设置如下: --设置表为只读权限(加锁) ALTER TABLE tab_name READ ONLY ; ...

  2. Mac下压力测试工具siege

    安装: brew install siege 用法: siege -c 并发数 -t 运行测试时间 URL 如: siege -c 1000 -t 5S URL 这里要注意的是-t后面的时间要带单位, ...

  3. 【centos】 error: command 'gcc' failed with exit status 1

    原文连接http://blog.csdn.net/fenglifeng1987/article/details/38057193 用安装Python模块出现error: command 'gcc' f ...

  4. Shiro的三种授权(十二)

    前提就是在Realm的授权方法中查询出权限并返回List<String>形式 @Override protected AuthorizationInfo doGetAuthorizatio ...

  5. 【windows核心编程】注入DLL时BUG排除与调试

    DLL注入排除bug的思路步骤. 1.在VS中监视输入err,hr检查DLL是否注入成功 2.OD断点loadlibraryW,loadlibraryA是否已经注入成功,eax是否有值. 3.检查路径 ...

  6. MySQL— 基础

    目录 一.MySQL概述 二.下载安装 三.数据库操作 四.数据表操作 五.表内容操作 一.MySQL概述 MySQL是一个关系型数据库管理系统,由瑞典MySQL AB 公司开发,目前属于 Oracl ...

  7. 查看Windows版本号

    1.Win+R,在运行中输入:msinfo32 2.在cmd中输入:ver 3.注册表(regedit)中:HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows ...

  8. linux内核capable源代码分析【转】

    转自:https://blog.csdn.net/sanwenyublog/article/details/50856849 linux内核里对于进程的权限管理有一个很重要的函数capable,以前看 ...

  9. Linux设备驱动之Ioctl控制【转】

    转自:http://www.cnblogs.com/geneil/archive/2011/12/04/2275372.html 大部分驱动除了需要具备读写设备的能力之外,还需要具备对硬件控制的能力. ...

  10. jq常用功能操作

    //表示所有选中的商品 var $goods=$(".goods:checked"); var arr=[]; for(i=0;i<$goods.length;i++){ a ...