欢迎加入QQ讨论群258996829
麦子学院 头像
苹果6袋
6
麦子学院

Python学习之.py文件转exe文件方法详解

发布时间:2018-05-01 23:03  回复:0  查看:3346   最后回复:2018-05-01 23:03  

本文和大家分享的主要是python.py文件转exe文件相关内容,希望通过分享,对大家学习python有所帮助。废话不多说,下面进入正题。

  .py文件转exe文件

  1.软件说明:

  用python写一个视频处理软件,用到的库是moviepy

  2.所用软件:

  Python 3.6.5 32

  pycharm  专门的python编辑ide,推荐使用

  pyinstaller

  imageMagick.exe (记住他的安装路径,后面会用到)

  注意事项:切记安装32位的python,因为32python64位系统上打包出来的exe文件可以在3264位系统运行,反之不可以。我就是先装的64位,然后依赖都装完了才发现需要32位,又全部卸掉重新装,心好累

  3.安装所需依赖:

  安装moviepypip install moviepy

  装了imagemagic后可能还是会报错,找不到那个错的截图了,执行下面的命令即可解决:pip install python-magic-bin==0.4.14

  安装requestspip install requests

  安装eyed3pip 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.2pyinstaller打包后报错: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;即可解决问题

Python学习之.py文件转exe文件方法详解 

1

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

  修改为bin_dist_path = os.path.join(os.path.dirname(sys.executable), 'libmagic')

Python学习之.py文件转exe文件方法详解 

2

  这些全都搞定之后,打包的exe文件就可以在windows32位和64位系统上运行了

 

 

来源:网络

您还未登录,请先登录

热门帖子

最新帖子