python文件转exe
.py文件转exe文件
1.软件说明:
用python写一个视频处理软件,用到的库是moviepy
2.所用软件:
Python 3.6.5 32位
pycharm 专门的python编辑ide,推荐使用
pyinstaller
imageMagick.exe (记住他的安装路径,后面会用到)
注意事项:切记安装32位的python,因为32位python在64位系统上打包出来的exe文件可以在32和64位系统运行,反之不可以。我就是先装的64位,然后依赖都装完了才发现需要32位,又全部卸掉重新装,心好累
3.安装所需依赖:
安装moviepy:pip install moviepy
装了imagemagic后可能还是会报错,找不到那个错的截图了,执行下面的命令即可解决:pip install python-magic-bin==0.4.14
安装requests:pip install requests
安装eyed3:pip install eyed3(我是用到了这个依赖,不用的可以不装)
安装打包工具pyinstaller:pip install pyinstaller
打包命令: pyinstaller –F –p moviepy; demo1.py
参数说明:-F 打包成一个文件
-p 把moviepy文件夹打包进去
4.遇到的问题
4.1 windows下面python不能自动识别出imagemagick的安装目录,必须手动修改,
修改python lib/site-packages/moviepy/config_defaults.py 到imagemagic的安装目录
IMAGEMAGICK_BINARY = r"C:\Program Files\ImageMagick-6.7.3-Q16\convert.exe"
4.2用pyinstaller打包后报错:moviepy.audio.fx.all has no attribute of audio_fadein
解决方案:将python/lib/sitepackages/moviepy文件夹拷贝到demo1.py所在的目录,修改moviepy/audio/fx/all 下的__init__.py文件
将exec这句注释掉,然后具体列出引入的包,因为pyinstaller不认exec这种方式,
改成如图1的方式,然后打包的时候加上-p moviepy;即可解决问题

图1
4.3报错:libmagic not found.明明安装了magic依赖,可是Pyinstaller打包的时候打不进去,必须在.py文件夹下放置C:\python32\Lib\site-packages\magic下的libmagic文件夹和magic.py文件,打包好的exe文件也要有这两个东西,即如图2所示。要修改magic.py的156行,bin_dist_path = os.path.join(os.path.dirname(__file__), 'libmagic')
修改为bin_dist_path = os.path.join(os.path.dirname(sys.executable), 'libmagic')

图2
这些全都搞定之后,打包的exe文件就可以在windows32位和64位系统上运行了
写在最后的话:笔者为了解决4.2的问题在网上整整找了3天,参考了https://github.com/Zulko/moviepy/issues/263下pratikone的回答才解决,所以请珍惜劳动成果,转载请注明出处
python文件转exe的更多相关文章
- Python文件打包exe教程——Pyinstaller(亲测有效)
今天将要解决一个问题,如何打包Pyhon文件 众所周知,Python文件的后缀名为“.py” 所以执行Python文件的要求之一便是具有python环境. 偶尔特殊情况,或者运行一些比较简单的工具,但 ...
- 关于python文件转为exe文件
一.简介 py2exe是一个将python脚本转换成windows上的可独立执行的可执行程序(*.exe)的工具,这样,你就可以不用装python而在windows系统上运行这个可执行程序. py2e ...
- 打包python文件为exe文件(PyInstaller工具使用方法)
最近做的新浪微博爬虫程序,打算打包成.exe软件以方便使用,网上找到一个很好的打包工具pyinstaller,这里记录一下打包的方法. 一.下载pyinstaller 我使用的版本为PyInstall ...
- pyinstaller打包python文件成exe(原理.安装.问题)
py文件打包成exe文件的方式一共有三种:py2exe.PyInstaller和cx_Freeze 本文分四个步骤来详讲如何用PyInstaller将py文件打包成exe文件 1. PyInstall ...
- 打包Python文件为exe
pip install pyinstaller 然后就在终端里执行命令 cd 到目标文件的目录下 执行 pyinstaller -F ***.py 即可生成exe
- python文件导出exe可执行程序
开门见山的说: 1.安装pyinstaller.(windows 用pip3 Mac 用pip)在cmd中输入:pip3 install pyinstaller 2.找到你要打包的文件的目录的上一个目 ...
- 用于Python文件转换.exe文件的pyinstaller工具安装
安装方法: 注:python环境一定要配置好. 1.第一步:下载 官方网站:http://www.pyinstaller.org/downloads.html 此处下载版本为稳定版. 2.第二步:下载 ...
- 反编译python打包的exe文件
目录 1.前言 2.使用环境 3.还原过程 4.号外 5.exe文件和所用到的反编译工具 6.参考 7.去签名(补漏) 前言 拿到了利用驱动人生进行传播的病毒样本,发现是python打包成的exe文件 ...
- python打包成exe文件
在cmd命令提示符窗口中输入pip install pyinstaller(在python3的环境下,假如不能安装的话,用pip3 install pyinstaller指令) 使用指令pyinsta ...
随机推荐
- C 函数指针与回调函数
函数指针是指向函数的指针变量. 通常我们说的指针变量是指向一个整型.字符型或数组等变量,而函数指针是指向函数. 函数指针可以像一般函数一样,用于调用函数.传递参数. 函数指针变量的声明: #inclu ...
- 用‘+=’拼接字符串,打印时总会出现一个undefined
var str; for(var i = 0; i < 5; i++){ str += String(i); } console.log(str); 他喵的,打印的结果竟然是"unde ...
- xftp上传文件失败,执行程序发现磁盘满了:No space left on device
参考链接 No space left on device 解决Linux系统磁盘空间满的办法http://www.cnblogs.com/aspirant/p/3604801.html如何解决linu ...
- 利用JavaScript去掉数组中重复项
利用JavaScript的object的特性,我们可以非常容易的实现将一个数组的重复项去掉. object的特性是:key一定是唯一的. 把数组重复项去掉: 1 将数组转换成一个object对象,数组 ...
- MYSQL之库操作
一.系统数据库 information_schema :虚拟库,不占用磁盘空间,存储的是数据库启动后的一些参数,如用户表信息.列信息.权限信息.字符信息等 mysql:核心数据库,里面包含用户.权限. ...
- 我做的python常用的小技巧
在python编码过程中,总会遇到各种各样的小问题,我想着记录下来,以备查用,总结过去,是为了更好的思考与进步. 一. 去除变量中(标题中)多余的字符 数据处理过程中,遇到这样的情况: y=['月份' ...
- zipline-benchmarks.py文件改写
改写原因:在这个模块中的 get_benchmark_returns() 方法回去谷歌财经下载对应SPY(类似于上证指数)的数据,但是Google上下载的数据在最后写入Io操作的时候会报一个恶心的编码 ...
- Bank方案SQL
用于演示的Bank方案对应的SQL: /* 1.branch 开展银行交易业务的场所 */ DROP TABLE IF EXISTS branch; CREATE TABLE branch -- 开展 ...
- C# 获取网页源代码
/// <summary> /// 获取网页源代码 /// </summary> /// <param name="url"></para ...
- 《阿里巴巴 Java 开发手册》读书笔记
偶然看到阿里巴巴居然出书了???趁着满减活动(节约节约....)我赶紧买来准备看看,刚拿到的时候掂量了好多下,总觉得商家给我少发了一本书,结果打开才知道..原来这本书这么小.... 编码规范的重要性 ...