Flask

メモ_XserverVPSで無料SSL(Let's Encrypt)を設定する方法

XserverVPSで無料SSL(Let's Encrypt)を設定する方法についてのメモ。 VPS管理画面で「SSL証明書」というのがあったので、ここから「追加申し込み」をするのかなーと思って(Let's Encryptもメニューにあったので)申し込んだけど、何も起きず何日か待ちぼうけ…

メモ_XserverVPSでPython-WebアプリをFlask+waitressで実行するまでの手順

XserverVPSでPythonで書いたWebアプリをFlask+waitressで実行するまでの手順のメモです。 手順は以下の通りです。OSセットアップ直後の環境でスタートします。OSは Ubuntu 22にしています。 手順 sshでログイン。apt-get update を実行 apt install python3.…

メモ_Flaskでmysql.connectorとpymysqlだとエラーハンドリングが失敗する

Flaskアプリで、Mysqlと接続して情報を表示するという単純な処理で、DB接続のエラーハンドリングが失敗する。 mysql.connectorではなく、pymysqlライブラリを利用するようにしたら解消した。。。mysql.connectorとpymysqlを一緒に使うとダメなのかな。 mysql…

メモ_FlaskアプリでDBから指定範囲のデータをjsonでダウンロードさせる機能の追加

Flaskで構築したWebアプリに、DBから指定した範囲のデータをjson形式でダウンロードさせる処理を追加する際のメモ。 サンプルの仕様: id(連番)、prime_list(素列を格納)というカラムがあるDB(DB名はnuminfo、table名はrime_num)から、idないしprime_listの範…

メモ_Flaskアプリでapp.py以外でルート定義を行う方法

Flaskアプリを開発していて、app.pyがだんだん肥大化して見通しが悪くなることがあります。ルート(エンドポイント)定義をapp.py以外に切り出してコードをスッキリさせることができます。 一般的な方法は、FlaskのBlueprintを使用することです。Blueprintは…

メモ_Flaskアプリでjson fileをダウンロードさせる機能を追加

Flaskで構築したWebアプリに、Webページなどに表示させているデータをjson形式でダウンロードさせるための機能の追加についてのメモ。超簡単。 サンプルコード: from flask import Flask, Response, json app = Flask(__name__) @app.route('/json/') def do…

メモ_Python-FlaskとMysqlで構築したWebアプリでデータ参照をpandasに変えて高速化

データを表示するFlaskアプリを作っていたところ、数万件程度のレコードであれば一瞬で終わるので問題ないのですが、レコード数が数百万件程度になってくると、Webページの最初の表示が4秒ぐらいかかるようになります。 数百万件レコードに対するsqlクエリー…

メモ_VM上のゲストOS(Ubuntu)で立ち上げたFlaskアプリをホストOS(Windows)側からも閲覧可能にする

VM上のUbuntuでJupyter labを立ち上げてから、ホストOS(WIndows11)側のブラウザでJupyter labを開くと、pythonコード&テキスト編集とターミナル操作がブラウザで完結するので楽なのですが、Flaskアプリ(Jupyter notebookでは表示できない処理とか)も同時に…

メモ_Flaskアプリでキャッシュを有効にして高速化

Flaskを用いたWebアプリとかで、Flask-Cachingというパッケージを使ってキャッシュを有効することで高速化できます。 @cache~デコレータをつけるだけという、とてもシンプルな方法。以下メモ。 準備: Flask-Cachingをpipでインストール pip install Flask-C…

ChatGPTで、四字熟語クイズのPython-Flaskアプリを作ってみた

ChatGPTで、四字熟語クイズのPython-Flaskアプリを作ってみました。 さすがに一発完成となるコードが出てくる指示文にするのは難しかったので、最初に考えていた機能から削っていき、簡略化してます。本当はセッション機能とか点数計算とかも入れたかったの…

ChatGPTにcookieを利用した簡単なPythonコードを書いてもらった

ChatGPTにcookieを利用した簡単なPythonコードを書いてもらいました。 指示文(プロンプト): Flaskとcookieを利用して、以下の内容でPythonコードを書いてください。・ブラウザでformからテキストを入力する・入力したテキストをcookieに保存する・別のPython…

ChatGPTに、簡単な2択式クイズゲームを作成してもらった

ChatGPTに、簡単な2択式クイズゲームを作成してもらいました。コードはPythonとhtmlです。 クイズを定義するテキストファイル(csv形式)と、クイズに使う画像(猫と虎を選ばせる画像)は、事前に用意してます。 ChatGPTにプロトコルを投げては訂正を繰り返して…

ChatGPTにファイルアップロードするPython-FlaskのWebアプリを作成してもらった

ChatGPTにファイルアップロードするPython-FlaskのWebアプリを作成してもらいました。 指示文(プロンプト): PythonのFlsskで、ローカルからファイルをアップロードできるWebアプリを作成してください。アップロードできるファイルの拡張子はあらかじめ指定で…

ChatGPTに簡単なログイン機能が付いたWebアプリを作ってもらった

ChatGPTに簡単なログイン機能が付いたWebアプリを作ってもらいました。Flask-Loginを利用しています。 指示文(プロンプト): Pythonで簡易なマイページ機能を持つWebアプリを作りたい。マイページにはログインできるようにしてログインしないと見れないように…

ChatGPTに作成してもらった人工無能チャットボットをWebアプリで動くように訂正してもらった

ChatGPTに作成してもらった人工無能チャットボットですが、ついでに辞書ファイルを外部化して、さらにWebアプリとしてブラウザから動くように訂正してもらいました。 今回はWebアプリとして「streamlit」を使うように指定しました。これはFlaskより、もっと…

ChatGPTにPython、Flask、htmlテンプレートを利用した簡易電卓アプリを書いてもらった

ChatGPTにPython、Flask、htmlテンプレートを利用した簡易電卓アプリを書いてもらいました。 ChatGPTへの指示文: PythonのFlaskで簡単な電卓機能を持つWebアプリのコードを書いてください。計算内容を入力する画面をindex.html、計算結果を表示する画面をres…

ChatGPTにPythonとFlaskで簡単なWebアプリを書いてもらった

ChatGPTにPythonとFlaskで簡単なWebアプリを書いてもらいました。 Flask環境があらかじめ用意されている前提です。 ChatGPTへの指示文: PythonのFlaskで「hello world」と表示するWebアプリケーションのコードを書いてください。 回答: 以下はPython Flaskを…