开启辅助访问 切换到宽版

精易论坛

 找回密码
 注册

QQ登录

只需一步,快速开始

用微信号发送消息登录论坛

新人指南 邀请好友注册 - 我关注人的新帖 教你赚取精币 - 每日签到


求职/招聘- 论坛接单- 开发者大厅

论坛版规 总版规 - 建议/投诉 - 应聘版主 - 精华帖总集 积分说明 - 禁言标准 - 有奖举报

查看: 36786|回复: 7
收起左侧

[图文教程] 用 pyefun 易函数将任意python文件编译为exe

[复制链接]
发表于 2021-7-10 12:27:45 | 显示全部楼层 |阅读模式   广东省广州市
本帖最后由 易函数 于 2021-7-10 12:34 编辑

用 pyefun 易函数将任意python文件编译为exe

视频讲解

https://www.bilibili.com/video/BV1Hh41167Yt/

易函数编译模块

在易函数视窗编程系统上可以直接一键编译为exe

如果您需要定制编译程序增加或者删除资源的话就往下看吧

你可以学会对任意一个py文件的编译功能

这是编译模块的代码 也是 易函数视窗编程系统所使用的编译功能模块源码

https://github.com/duolabmeng6/pyefun/blob/master/pyefun/compile/compile.py

编译exe

1.准备编译环境

为了保证编译脚本的正常运行

请安装好易函数视窗编程系统的安装 因为里面包含了编译所需要的文件

把文件解压到c盘即可

C:\efun_view_system

下载易函数视窗编程系统

百度网盘 https://pan.baidu.com/s/1Nccbrh23070PBCs7eAl4fA 提取码: p4qb

  • efun_view_system.exe 易函数视窗编程系统安装包

2.安装 pyefun

编译模块在pyefun中

pip install pyefun

如果已经安装 pyefun 升级模块运行

pip install -U pyefun

3.编写编译脚本

在前面的编译环境准备好以后编写编译文件即可

我们先看一下 易函数视窗编程系统的编译脚本长什么样子

import pyefun as efun
import pyefun.compile as compile

if compile.初始化编译环境():
    compile.编译文件(
        r"C:\pyefun\wxview\wxefun_window.py",
        r"C:\pyefun\wxview\o",
        # 不编译=True,
        # 不寻找依赖=True,
    )
    efun.文件更名(r"C:\pyefun\wxview\o\wxefun_window.dist", r"C:\pyefun\wxview\o\efun_view_system")
    efun.复制目录(
        efun.路径优化(r"C:\pyefun\wxview\bulidLib"),
        efun.路径优化(r"C:\pyefun\wxview\o\efun_view_system\bulidLib")
    )

根据上述示例我们编译自己的编译脚本

编写文件 编译脚本.py

例如我们要编译

C:\project\main.py

并且包含 images 图片资源的文件夹 是我们自定义的资源文件夹 需要打包到应用目录中

易函数中默认的资源文件夹是 resources 编译文件目录下会被自动复制到应用目录中

我们只编写以下脚本

编译脚本.py

import pyefun as efun
import pyefun.compile as compile

if compile.初始化编译环境():
    compile.编译文件(
        文件路径=r"C:\project\main.py",
        编译目录=r"C:\project\o",
        # 不编译=True,
        # 不寻找依赖=True,
    )

    # 先删除原来的目录再改名
    efun.删除目录("C:\project\o\mysoft")
    # 修改编译后的文件目录名称
    efun.文件更名(r"C:\project\o\main.dist", r"C:\project\o\mysoft")
    # 将编译后运行所需要的资源复制到编译后的目录
    efun.复制目录(
        efun.路径优化(r"C:\project\images"),
        efun.路径优化(r"C:\project\o\mysoft\images")
    )

运行编译脚本

python 编译脚本.py

等待编译完成

经过一段时间的等待
如果没有出现任何错误的情况下就正常的编译好了

使用易函数一键编译任意python脚本工具

工具下载

百度网盘 https://pan.baidu.com/s/1Nccbrh23070PBCs7eAl4fA提取码: p4qb

  • efun_bulid_view.exe 易函数一键编译任意python脚本工具

用易函数视窗编程系统开发一键编译任意python脚本工具

用易函数视窗编程系统开发一键编译任意python脚本工具



评分

参与人数 2好评 +2 精币 +3 收起 理由
淑名夏凛月 + 1 pyinstaller 不好用嘛 = =
1185384801 + 1 + 3 新技能已get√

查看全部评分

签到天数: 5 天

发表于 2022-2-7 16:05:01 | 显示全部楼层   湖南省长沙市
2022-02-07 16:03:48 FATAL: Only this specific gcc is supported with Nuitka.
2022-02-07 16:03:49 编译完成 nuitka --standalone --mingw64 --show-memory --show-progress --nofollow-imports --follow-import-to=need --output-dir=C:\Users\Administrator.PC-20210402BUPB\PycharmProjects\pythonProject\o C:\Users\Administrator.PC-20210402BUPB\PycharmProjects\pythonProject\main.py
2022-02-07 16:03:49 复制资源文件夹C:\Users\Administrator.PC-20210402BUPB\PycharmProjects\pythonProject\resources -> C:\Users\Administrator.PC-20210402BUPB\PycharmProjects\pythonProject\o\main.dist\resources
2022-02-07 16:03:49 C:\efun_view_system\resources\cmdrt.exe C:\Users\Administrator.PC-20210402BUPB\PycharmProjects\pythonProject\o\main.dist\main.exe
2022-02-07 16:03:49 缺少模块
2022-02-07 16:03:49 缺少模块
2022-02-07 16:03:49 运行结果

2022-02-07 16:03:49 编译完成请检查程序是否运行正常 C:\Users\Administrator.PC-20210402BUPB\PycharmProjects\pythonProject\o\main.dist\main.exe



编译好后,找不到main.exe
回复 支持 反对

使用道具 举报

结帖率:33% (2/6)

签到天数: 17 天

发表于 2022-1-20 17:57:35 | 显示全部楼层   广东省湛江市
可不可以做一个教程呢
回复 支持 反对

使用道具 举报

结帖率:100% (1/1)

签到天数: 19 天

发表于 2022-1-20 13:21:12 | 显示全部楼层   山东省枣庄市
xyts022618 发表于 2021-12-17 21:04
编译的EXE是二进制么?还是和pyinstaller一样是带解释器

好像不行,一个文件好几兆。
回复 支持 反对

使用道具 举报

结帖率:100% (1/1)

签到天数: 19 天

发表于 2022-1-20 13:18:10 | 显示全部楼层   山东省枣庄市
xyts022618 发表于 2021-12-17 21:04
编译的EXE是二进制么?还是和pyinstaller一样是带解释器

看大小把,玩会游戏,一会试试,带解释器肯定小不了。
回复 支持 反对

使用道具 举报

结帖率:88% (7/8)

签到天数: 2 天

发表于 2021-12-17 21:04:58 | 显示全部楼层   四川省阿坝藏族羌族自治州
编译的EXE是二进制么?还是和pyinstaller一样是带解释器
回复 支持 反对

使用道具 举报

结帖率:100% (12/12)

签到天数: 22 天

发表于 2021-7-10 13:30:23 | 显示全部楼层   山东省济宁市
这个有用
回复 支持 反对

使用道具 举报

结帖率:68% (17/25)

签到天数: 7 天

发表于 2021-7-10 12:49:13 | 显示全部楼层   四川省绵阳市
支持支持支持支持支持支持支持支持支持支持支持支持支持支持支持支持支持支持
回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 登录 | 注册

本版积分规则 致发广告者

发布主题 收藏帖子 返回列表

sitemap| 易语言源码| 易语言教程| 易语言论坛| 易语言模块| 手机版| 广告投放| 精易论坛
拒绝任何人以任何形式在本论坛发表与中华人民共和国法律相抵触的言论,本站内容均为会员发表,并不代表精易立场!
论坛帖子内容仅用于技术交流学习和研究的目的,严禁用于非法目的,否则造成一切后果自负!如帖子内容侵害到你的权益,请联系我们!
防范网络诈骗,远离网络犯罪 违法和不良信息举报电话0663-3422125,QQ: 793400750,邮箱:wp@125.la
Powered by Discuz! X3.4 揭阳市揭东区精易科技有限公司 ( 粤ICP备12094385号-1) 粤公网安备 44522102000125 增值电信业务经营许可证 粤B2-20192173

快速回复 返回顶部 返回列表