画像をWebサイトに表示する方法はいくつかありますが、今回はFlaskを使用して、Base64エンコーディングを用いて直接HTMLに画像を埋め込む方法を解説します。この方法は、画像を外部リンクとして扱わず、直接HTMLコード内に含める場合に便利です。
Contents
必要なライブラリ
このチュートリアルを進めるには、Flaskがインストールされている必要があります。
インストールしていない場合は、以下のコマンドでインストールできます。
pip install Flask
サンプルコード
以下は、FlaskとBase64エンコーディングを使用して画像を埋め込むサンプルコードです。
from flask import Flask, render_template
import base64
app = Flask(__name__)
@app.route('/')
def index():
with open("image.jpg", "rb") as image_file:
encoded_image = base64.b64encode(image_file.read()).decode()
return render_template('index.html', image=encoded_image)
if __name__ == "__main__":
app.run(debug=True)
HTMLテンプレート
画像を表示するためのHTMLテンプレート(index.html)は以下のようになります。
<!DOCTYPE html>
<html>
<head>
<title>Base64 Image</title>
</head>
<body>
<img src="data:image/jpeg;base64,{{ image }}">
</body>
</html>
まとめ
この記事では、FlaskとBase64エンコーディングを使用して、HTMLページに直接画像を埋め込む方法を説明しました。この方法は、外部リンクを使わずに画像を表示したい場合に非常に便利です。
関連記事:【Python】Flaskのjsonifyで簡単なAPIサーバーを作成する


コメント