我不叫程序猿 2023-07-12 21:03 采纳率: 50%
浏览 25

pyinstaller打包有moveipy库的脚本一直报错怎么解决?

pyinstaller打包有moveipy库的脚本一直报错怎么解决?

引入代码如下

# coding=utf-8
#-*-coding:utf-8-*-
from tkinter import *
from tkinter import ttk
import random
import os
import tkinter.messagebox as messagebox
import time
from tkinter import filedialog
from moviepy.editor import VideoFileClip
import ctypes

使用的打包命令如下:


pyinstaller --hidden-import moviepy -w -i favicon.ico main.py

报错内容

img

更换成其他的命令也是如此。

  • 写回答

2条回答 默认 最新

  • CSDN-Ada助手 CSDN-AI 官方账号 2023-07-12 23:14
    关注
    • 这篇博客: Pyinstaller打包,彻底解决图片、数据路径问题中的 解决更复杂的问题之路 部分也许能够解决你的问题, 你可以仔细阅读以下内容或跳转源博客中阅读:
    • pyinstaller有很多选项,我们在解决问题的时候可能会碰到更复杂的问题,我们3分钟讲不完。

      如果你希望我更深入讲解,可以转发,点赞,嘻嘻。如果阅读和评论多,我可以考虑后续再出一个Pyinstaller终结者深度文章。

      但是这里我就先指明几个方向,帮助你更有效的研究:

      • pyinstaller的官网上有很细致的讲解:https://pyinstaller.readthedocs.io/en/stable/spec-files.html。英语不好也可以用谷歌翻译。

      • pyinstaller打包的时候会首先生成一个spec文件,我们可以手工去修改这个文件,下次打包指定用这个文件。它的好处是:里面可以写更复杂的选项,也可以重录利用。

      在这里插入图片描述
      spec文件的内容例子:

      # -*- mode: python ; coding: utf-8 -*-
      
      
      block_cipher = None
      
      
      a = Analysis(['058.py'],
                   pathex=[],
                   binaries=[],
                   datas=[('058.txt', '.')],
                   hiddenimports=[],
                   hookspath=[],
                   hooksconfig={},
                   runtime_hooks=[],
                   excludes=[],
                   win_no_prefer_redirects=False,
                   win_private_assemblies=False,
                   cipher=block_cipher,
                   noarchive=False)
      pyz = PYZ(a.pure, a.zipped_data,
                   cipher=block_cipher)
      
      exe = EXE(pyz,
                a.scripts, 
                [],
                exclude_binaries=True,
                name='058',
                debug=False,
                bootloader_ignore_signals=False,
                strip=False,
                upx=True,
                console=True,
                disable_windowed_traceback=False,
                target_arch=None,
                codesign_identity=None,
                entitlements_file=None )
      coll = COLLECT(exe,
                     a.binaries,
                     a.zipfiles,
                     a.datas, 
                     strip=False,
                     upx=True,
                     upx_exclude=[],
                     name='058')
      
    评论

报告相同问题?

问题事件

  • 创建了问题 7月12日