django打包成exe格式

强仔必胜發表於2024-03-31
# -*- mode: python ; coding: utf-8 -*-
from pathlib import Path
import PyInstaller.utils.hooks
import monai
from PyInstaller.utils.hooks import collect_data_files
from PyInstaller.building.api import PYZ, EXE, COLLECT

# 收集 monai 相關的檔案
monai_datas = [(str(Path(monai.__file__).parent), "monai")]
monai_datas += PyInstaller.utils.hooks.collect_data_files("monai")

# 收集你的 Django 專案的靜態檔案和模板等

static_datas = collect_data_files('static', subdir='static')
template_datas = collect_data_files('templates', subdir='templates')
config_datas = collect_data_files('config', subdir='config')
datas=monai_datas + static_datas + template_datas + config_datas
# 如果有其他特定檔案或目錄需要包括,也可以在這裡新增

a = Analysis(
    ['manage.py'],
    pathex=['.'],  # 如果 manage.py 不在當前目錄下,需要相應調整 pathex
    binaries=[],
    datas=datas,  # 合併 monai 和 Django 專案相關的檔案
    hiddenimports=[
        'django.contrib.admin',
        'django.contrib.auth',
        'django.contrib.contenttypes',
        'django.contrib.sessions',
        'django.contrib.messages',
        'django.contrib.staticfiles',
        # 如果有其他隱藏的匯入需要,也可以在這裡新增
    ],
    hookspath=[],
    hooksconfig={},
    runtime_hooks=[],
    excludes=[],
    noarchive=False,
)

pyz = PYZ(a.pure)

exe = EXE(
    pyz,
    a.scripts,
    [],
    exclude_binaries=True,
    name='manage',
    debug=False,
    bootloader_ignore_signals=False,
    strip=False,
    upx=True,
    console=True
)

coll = COLLECT(
    exe,
    a.binaries,
    a.datas,
    strip=False,
    upx=True,
    name='manage',
),
datas=[
    (r'\goodGame\segvol\static',r'.\static')
],

 引用https://www.cnblogs.com/bearpipy/p/17734371.html

相關文章