Pyinstaller:moviepy打包报错AttributeError: module ‘moviepy.audio.fx.all‘ has no attribute ‘audio_fadein‘
Pyinstaller:moviepy打包报错AttributeError: module ‘moviepy.audio.fx.all‘ has no attribute ‘audio_fadein‘
一、前言
使用到了第三方库 moviepy 本地调试是OK的,
打包运行之后报错了
记录一下分析问题并找寻解决办法的过程
二、问题原因
moviepy下的子包使用的是一种动态加载模块的模式加载包下的模块的
pyinstaller对这种模式不能处理,所以需要我们手动处理一下,将其展开。
三、解决问题方法
1、修改moviepy\video\fx\all_init_.py
修改内容如下:
"""
Loads all the fx !
Usage:
import moviepy.video.fx.all as vfx
clip = vfx.resize(some_clip, width=400)
clip = vfx.mirror_x(some_clip)
"""import pkgutilimport moviepy.video.fx as fx__all__ = [name for _, name, _ in pkgutil.iter_modules(fx.__path__) if name != "all"]# for name in __all__:
# print("from moviepy.video.fx import %s" % (name))from moviepy.video.fx import accel_decel
from moviepy.video.fx import blackwhite
from moviepy.video.fx import blink
from moviepy.video.fx import colorx
from moviepy.video.fx import crop
from moviepy.video.fx import even_size
from moviepy.video.fx import fadein
from moviepy.video.fx import fadeout
from moviepy.video.fx import freeze
from moviepy.video.fx import freeze_region
from moviepy.video.fx import gamma_corr
from moviepy.video.fx import headblur
from moviepy.video.fx import invert_colors
from moviepy.video.fx import loop
from moviepy.video.fx import lum_contrast
from moviepy.video.fx import make_loopable
from moviepy.video.fx import margin
from moviepy.video.fx import mask_and
from moviepy.video.fx import mask_color
from moviepy.video.fx import mask_or
from moviepy.video.fx import mirror_x
from moviepy.video.fx import mirror_y
from moviepy.video.fx import painting
from moviepy.video.fx import resize
from moviepy.video.fx import rotate
from moviepy.video.fx import scroll
from moviepy.video.fx import speedx
from moviepy.video.fx import supersample
from moviepy.video.fx import time_mirror
from moviepy.video.fx import time_symmetrize
2、修改moviepy\audio\fx\all_init_.py
修改内容如下:
"""
Loads all the fx !
Usage:
import moviepy.audio.fx.all as afx
audio_clip = afx.volume_x(some_clip, .5)
"""import pkgutilimport moviepy.audio.fx as fx__all__ = [name for _, name, _ in pkgutil.iter_modules(fx.__path__) if name != "all"]# for name in __all__:
# exec("from ..%s import %s" % (name, name))
from moviepy.audio.fx import audio_fadein
from moviepy.audio.fx import audio_fadeout
from moviepy.audio.fx import audio_left_right
from moviepy.audio.fx import audio_loop
from moviepy.audio.fx import audio_normalize
from moviepy.audio.fx import volumex
四、最终结果
打包成功!并且文件体积也没变多大。
打包,最好新建一个新的虚拟环境,然后再在新的虚拟环境安装pyinstaller,再在新的虚拟环境下打包,这样子就会小很多了。
Pyinstaller:moviepy打包报错AttributeError: module ‘moviepy.audio.fx.all‘ has no attribute ‘audio_fadein‘相关推荐
- tensorflow出现报错AttributeError: module ‘tensorflow.python.keras.backend‘ has no attribute ‘get_graph‘
问题是tensorflow与keras版本不匹配. 查看对应版本重装即可 https://docs.floydhub.com/guides/environments/
- pyinstall :打包 .exe 文件报错AttributeError: module ‘enum‘ has no attribute ‘IntFlag‘
有疑问的地方 参考博文 一.环境搭建 Python GUI图形化小工具编程学习-- PySide2 环境搭建(一) 二.实例演示 Python GUI图形化小工具编程学习-- Demo 实例演示(二) ...
- python 报错 AttributeError: module ‘time‘ has no attribute ‘clock 解决方法
源码如下: #引入所需要的时间库 import datetime import time#程序计时器,启动计时器 start = time.clock()#中间是放置需要测试运行时间的程序代码#计算启 ...
- 第一:Python+Allure运行报错AttributeError: module ‘allure‘ has no attribute ‘severity_level‘
1.很多查询结果都是先卸载pytest-allure-adaptor,然后再安装allure-pytest pip3 uninstall pytest-allure-adaptor 2.pip3 in ...
- python中引入包的时候报错AttributeError: module ‘sys‘ has no attribute ‘setdefaultencoding‘解决方法?
python中引入包的时候报错AttributeError: module 'sys' has no attribute 'setdefaultencoding'解决方法? 参考文章: (1)pyth ...
- 【Flask】flask-bootstrap报错AttributeError: module ‘dominate.tags‘ has no attribute ‘input‘解决方法
问题 在使用flask-bootstrap渲染表单时,报错AttributeError: module 'dominate.tags' has no attribute 'input'. 解决方法 修 ...
- python报错AttributeError module ‘scipy.misc‘ has no attribute ‘imresize‘和 ‘imread‘
python报错AttributeError: module 'scipy.misc' has no attribute 'imresize'和 'imread' 报错原因:scipy版本过高 解决方 ...
- 学习python-mysql:报错AttributeError: module 'MySQLdb' has no attribute 'cursors'
爬虫写入数据库时报错: AttributeError: module 'MySQLdb' has no attribute 'cursors' 解决方法: 引入 import MySQLdb.curs ...
- NVIDIA Jetson Xavier NX上导入tensorflow报错:AttributeError: module ‘wrapt‘ has no attribute ‘ObjectProxy‘
欢迎大家关注笔者,你的关注是我持续更博的最大动力 原创文章,转载告知,盗版必究 在Jetson Xavier NX上导入tensorflow报错:AttributeError: module 'wra ...
- Pickle库使用练习报错 AttributeError: module 'pickle' has no attribute 'dump'
在这里插入代码片在练习使用pickle模块的时候写了如下的代码,但是出现了报错,代码和报错内容如下: 代码: import pickle dict1 = dict(name='八岐大蛇', age=1 ...
最新文章
- Python 网络爬虫笔记4 -- 信息标记与提取
- mysql该账户已存在_mysql 查看函数的所属用户和已存在的函数
- 产品经理专业知识50篇(五)-用户成长体系设计方案
- Springmvc接收json数据的4种方式
- div iframe html5,深入理解iframe
- 新增的output元素 progress元素 meter元素 keygen元素
- python正则_python中正则匹配
- 【Java】Java_03第一个Java程序
- Twaver-HTML5基础学习(19)数据容器(2)_数据序列化_XML、Json
- 近期每日学习与工作时间安排
- 计算机人员保密承诺书,涉密网络人员保密承诺书
- 关于显卡的一些参数说明,告诉你如何分辨哪个好一点,哪个烂一点。
- Oracle数据库的游标与触发器
- r语言 断轴 画图_R语言作图——坐标轴截断画图
- 如何仅通过IP地址访问数据决策系统
- 手把手教你做一个新浪博客发布软件JAVA版本(5)--打开博客发布页面并解析博客内容
- linux启动失败故障分析修复
- Android Animation 360度旋转效果。
- 《一个APP的诞生》20191101
- Unity3d 鼠标的事件GetMouseButtonDown()、GetMouseButton()、GetMouseButtonUp()
热门文章
- 【云原生】理解k8s中的Pod和容器设计模式
- Elasticsearch Java虚拟机配置详解
- The name `AssetDatabase' does not exist in the current context
- 2019杭电多校第六场 HDU6638 Snowy Smile(线段树区间合并+枚举)
- 天使纪元392服务器维护,天使纪元公测什么时候能玩 天使纪元1月11日服务器什么时候能进...
- navicat如何粘贴多行数据
- 深度Linux声卡驱动安装,Deepin Linux 的声卡驱动有点小问题
- 100行代码实现HarmonyOS“画图”应用,eTS开发走起
- Quantile-Quantile (q-q) Plots
- Material Design 总结