Windowsにおいて、pyinstallerで作成したexeファイルを実行したら、一瞬ターミナルが現れるがすぐに消えてしまい、プログラムが実行されない。しかし、ターミナルからexeファイルを実行すると問題なく動作するのは何故でしょうか?
解決したいこと
MacBook Air、macOS 12.4、
Python 3.13.3、selenium 4.32.0
という環境でスクレイピングプログラムを作成しました。作成には仮想環境を利用しています。
作成したプログラムディレクトリをWindowsノートブックパソコンでexe化して使うために次のように作業を行いました。
- Python 3.13.3をインストール
- 仮想環境を作成
- 仮想環境下でMacと同じバージョンのSeleniumをインストール
- pyinstallerをインストール(Ver.6.14.1)
- 上記のプログラムディレクトリを仮想環境下にコピーして、そのディレクトリに移動
- 次のコマンドを実行
pyinstaller my_program.py
【質問】
Windowsターミナルからmy_program.exeを起動すればいいのですが、他の人にexeファイルを渡して使ってもらいために、下記の【問題】に対する対策を知りたいと考えています。
pyinstallerに詳しい方、解決方法を教えて下さい。
よろしくお願いいたします。
発生している問題・エラー
【問題】
その後distディレクトリ内のmy_program.exeを起動したら、予想どおりにWindowsターミナルは表示されましたが、一瞬表示されただけで消えてしまい、プログラムも終了してしまいました。
一瞬見えたところでは紫色の文字と白色の文字が何行か表示されていましたが、何を表示していたかは確認できませんでした。
自分で試したこと
【一部解決】
原因が不明のまま、次にWindowsターミナルからmy_program.exeを起動したら、期待どおりにプログラムが実行しました。