Python×Flaskで作る!PCで動くWebアプリの実装手順とPyInstallerの使い方【初心者向け】

chat-GPT

「作ったWebアプリをPCで動かせるようにしたい!」と考えている私と同じ初心者の方へ。

最近、ChatGPTと一緒にアプリを作ってきたので、

いったんPCで使うアプリとして仕上げてみたいと思いました。

今回はFlaskで制作を進めたアプリのPC実装方法の手順を紹介します。

以下の内容はPythonで制作したアプリです。

初心者の私でも進められたので、ぜひこのガイドを参考に、あなたのアプリをデスクトップで動かしてみましょう。

実装には、PyInstallerというツールを利用します。

スポンサーリンク

Flaskアプリとは?

まず、FlaskはPythonで作ることができるWebアプリケーションのフレームワークです。簡単にWebアプリを作れるので、初心者でも取り組みやすいのが魅力です。

以下は私が現在制作しているハンドメイド副業サポートアプリを例に紹介します。

このアプリでは、購入した素材の名前や数量、購入先をデータベースに保存し、それに基づいたレシピを残せるようにしています。

FlaskアプリをPCに実装する方法

しかし、現在の状況では毎回ターミナルで次のようにコマンドを実行して、アプリを立ち上げる必要があります。

flask run

この作業を省いて、アイコンをクリックするだけでアプリが起動するようにしたいのです。

1. PyInstallerのインストール【PC実装に必要なツール】

最初に必要なのは、FlaskアプリをPCで動かすためのツール「PyInstaller」をインストールします。

PyInstallerは、Webアプリをデスクトップアプリとして動かせるようにするためのツールです。

以下のコマンドをターミナルやコマンドプロンプトで実行しましょう。

pip install pyinstaller
これでPCでのアプリ実装に向けた準備が整います。

2. Flaskアプリの準備

次に、Flaskアプリの準備です。

すでにFlaskでアプリを作成している場合、実行ファイル(app.pyなど)が正しいディレクトリにあることを確認してください。私の場合はapp.pyを使っています。

FlaskアプリをPCに実装する方法

今回はすでにアプリ制作がひと段落したことを想定して進めます。

3. PyInstallerでFlaskアプリをPC実装【初心者向け手順】

次はPCで動かす手順に進みます。

以下のコマンドを実行して、アプリをデスクトップアプリとして実装します。

pyinstaller --onefile --windowed app.py
  • --onefile: アプリ全体を1つのファイルにまとめます。
  • --windowed: コンソールが開かないように設定します。

実行が完了すると、制作中のアプリのディレクトリ内にdist/というフォルダが作られて、

実行可能なファイルが生成されます。

これがPCで動かせるアプリです!

ダブルクリックしてから、http://127.0.0.1:使用しているポート番号

にアクセスすると、無事製作したアプリが動作しています。

製作段階で毎回、flask run とコマンド入力していたのを省いて起動できます。

エラーが出る場合

初心者の私もつまづいたのが、

「テンプレートファイルが見つからない」エラーです。

Flaskでは、HTMLファイルは通常templates/フォルダに置かれますが、PyInstallerでパッケージ化するとこれらが含まれないことがあるようです。

以下のコマンドを実行して、テンプレートや静的ファイルを含めましょう。

pyinstaller --add-data 'templates:templates' --add-data 'static:static' app.py

これで、Flaskアプリが正しくPCで動作するようになります。

まとめ

Flaskアプリの作り方からPC実装まで、初心者でもわかりやすい手順で解説してきました。

アプリを自分のPCで簡単に動かす方法は、今回紹介したPyInstallerを使うことで実現できます。

初めてのアプリ開発でつまづいた方も、これらの手順を参考にしながらチャレンジしてみてください!

ただ、使い始めてしばらく経ちますが、立ち上げ中ノートパソコンが熱く流なるのが気になり始めています。ケースバイケースで使い分けをした方が良さそうです。

【クリエイタープロフィール pekopoko】

irokazari+

プロフィールページはこちら

普段はハンドメイド作品をオンラインで販売しています。

メタバース空間に視覚的なお店を自分で構えることを目標に現在プログラミングも学習中です。

作品はオンラインショップでご覧いただけます。

 

物作りで日常を明るく♪をコンセプトに活動中のハンドメイド作家です。minneメルカリショップス 、Creemaにてマクラメ・レザーブレスレットなどを中心に出品中です。

コメント

タイトルとURLをコピーしました