💡

中学2年生のPython勉強①

2024/02/12に公開

はじめに

Pythonで利用できるpyinstallerの忘備録です。
(webサイトを公開する際、htmlなどのファイルもexeにまとめたい場合)
zenn自体初めて触るのでご指摘ください(o*。_。)oペコッ

pythonで複数ファイルをexe化する

①pip install pyinstaller
②pyinstaller file.py -onefile --noconsole

実行すると下記のような.specファイルが生成されると思う

specファイル
a = Analysis(
    ['filename.py'],
    pathex=[],
    binaries=[],
    datas=[],#ここに追加する
    hiddenimports=[],
    hookspath=[],
    hooksconfig={},
    runtime_hooks=[],
    excludes=[],
    noarchive=False,
)

datas=[]に追記していく

specファイル
datas=[('templates/*', 'templates'), ('単体ファイル.py', '.')],

上記のようにして、左側はフォルダー、右側はファイルを一緒にexe化している。
これでexe化の配布をしても問題がない

specファイル(完成版)
a = Analysis(
    ['filename.py'],
    pathex=[],
    binaries=[],
    datas=[('templates/*', 'templates'), ('単体ファイル.py', '.')],
    hiddenimports=[],
    hookspath=[],
    hooksconfig={},
    runtime_hooks=[],
    excludes=[],
    noarchive=False,
)

最後に

今回は、flaskを想定としたexe化をしてみたがフォルダー名を変えたりすれば、ほかにも応用が利く初めてのzenn利用で不自由なところがあったら申し訳ないです。

Discussion