python 使用 pyinstaller 打包

python 使用 pyinstaller 打包

1、下载pyinstaller

pip install pyinstaller

2、在当前目录下生成 .spec 文件

注意,这行命令在生成文件的时候,也打包了输出物

pyinstaller --name=pytasker main.py --onefile --specpath=.
2.1、生成的目录结构
D:.
│  main.py
│  pytasker.spec
│
├─build
│  └─pytasker
│      │  Analysis-00.toc
│      │  base_library.zip
│      │  EXE-00.toc
│      │  PKG-00.toc
│      │  pytasker.pkg
│      │  PYZ-00.pyz
│      │  PYZ-00.toc
│      │  warn-pytasker.txt
│      │  xref-pytasker.html
│      │
│      └─localpycs
│              pyimod01_archive.pyc
│              pyimod02_importers.pyc
│              pyimod03_ctypes.pyc
│              pyimod04_pywin32.pyc
│              struct.pyc
│
└─dist
        pytasker.exe
2.2、.spec 文件内容

如果需要打包依赖,则需要在 hiddenimports 中导入模块

# -*- mode: python ; coding: utf-8 -*-


a = Analysis(
    ['main.py'],
    pathex=[],
    binaries=[],
    datas=[],
    hiddenimports=[],
    hookspath=[],
    hooksconfig={},
    runtime_hooks=[],
    excludes=[],
    noarchive=False,
    optimize=0,
)
pyz = PYZ(a.pure)

exe = EXE(
    pyz,
    a.scripts,
    a.binaries,
    a.datas,
    [],
    name='pytasker',
    debug=False,
    bootloader_ignore_signals=False,
    strip=False,
    upx=True,
    upx_exclude=[],
    runtime_tmpdir=None,
    console=True,
    disable_windowed_traceback=False,
    argv_emulation=False,
    target_arch=None,
    codesign_identity=None,
    entitlements_file=None,
)

[!NOTE]

hiddenimports 中导入内容示例

hiddenimports=[
    'pyaudio',
    'websockets',
    'webrtcvad',
    'struct'
],

3、打包命令

pyinstaller pytasker.spec
posted @   jarico  阅读(112)  评论(0编辑  收藏  举报
相关博文:
阅读排行:
· 被坑几百块钱后,我竟然真的恢复了删除的微信聊天记录!
· 【自荐】一款简洁、开源的在线白板工具 Drawnix
· 没有Manus邀请码?试试免邀请码的MGX或者开源的OpenManus吧
· 园子的第一款AI主题卫衣上架——"HELLO! HOW CAN I ASSIST YOU TODAY
· 无需6万激活码!GitHub神秘组织3小时极速复刻Manus,手把手教你使用OpenManus搭建本
点击右上角即可分享
微信分享提示