Flaskを使用してURLから名前付きパラメータを取得する方法は?

PYTHON3 チュートリアル

Flaskを使用してURLから名前付きパラメータを取得する方法

FlaskはPythonの軽量なWebフレームワークであり、URLから名前付きパラメータを取得することが容易です。名前付きパラメータはURL内に変数を埋め込んで、特定の情報を取得する際に使用されます。

具体的な例

以下に、Flaskを使用してURLから名前付きパラメータを取得する具体的な例を示します。

Plain text
Copy to clipboard
Open code in new window
EnlighterJS 3 Syntax Highlighter
from flask import Flask, request
app = Flask(__name__)
@app.route('/user/<username>')
def get_user(username):
return f'Hello, {username}!'
if __name__ == '__main__':
app.run()
</username>
from flask import Flask, request app = Flask(__name__) @app.route('/user/<username>') def get_user(username): return f'Hello, {username}!' if __name__ == '__main__': app.run() </username>
from flask import Flask, request

app = Flask(__name__)

@app.route('/user/')
def get_user(username):
    return f'Hello, {username}!'

if __name__ == '__main__':
    app.run()

この例では、’/user/‘のようにURL内に’<>‘で囲まれた部分が名前付きパラメータとなります。このパラメータは関数の引数として取得することができます。

サンプルコード1

URLから取得した名前付きパラメータを使って特定の処理を行う例を示します。

Plain text
Copy to clipboard
Open code in new window
EnlighterJS 3 Syntax Highlighter
from flask import Flask, request
app = Flask(__name__)
@app.route('/greet/<name>')
def greet(name):
return f'Hello, {name}!'
if __name__ == '__main__':
app.run()
</name>
from flask import Flask, request app = Flask(__name__) @app.route('/greet/<name>') def greet(name): return f'Hello, {name}!' if __name__ == '__main__': app.run() </name>
from flask import Flask, request

app = Flask(__name__)

@app.route('/greet/')
def greet(name):
    return f'Hello, {name}!'

if __name__ == '__main__':
    app.run()

このコードでは、’/greet/‘のURLから’name’という名前付きパラメータを取得し、’Hello, {name}!’というメッセージを返します。

サンプルコード2

複数の名前付きパラメータを取得して処理する例を示します。

Plain text
Copy to clipboard
Open code in new window
EnlighterJS 3 Syntax Highlighter
from flask import Flask, request
app = Flask(__name__)
@app.route('/add/<int:num1>/<int:num2>')
def add_numbers(num1, num2):
result = num1 + num2
return f'The sum of {num1} and {num2} is {result}.'
if __name__ == '__main__':
app.run()
</int:num2></int:num1>
from flask import Flask, request app = Flask(__name__) @app.route('/add/<int:num1>/<int:num2>') def add_numbers(num1, num2): result = num1 + num2 return f'The sum of {num1} and {num2} is {result}.' if __name__ == '__main__': app.run() </int:num2></int:num1>
from flask import Flask, request

app = Flask(__name__)

@app.route('/add//')
def add_numbers(num1, num2):
    result = num1 + num2
    return f'The sum of {num1} and {num2} is {result}.'

if __name__ == '__main__':
    app.run()

このコードでは、’/add//‘のURLから2つの整数型の名前付きパラメータを取得し、それらの合計を返します。

サンプルコード3

名前付きパラメータを使って動的なコンテンツを生成する例を示します。

Plain text
Copy to clipboard
Open code in new window
EnlighterJS 3 Syntax Highlighter
from flask import Flask, request
app = Flask(__name__)
@app.route('/square/<int:num>')
def square_number(num):
square = num ** 2
return f'The square of {num} is {square}.'
if __name__ == '__main__':
app.run()
</int:num>
from flask import Flask, request app = Flask(__name__) @app.route('/square/<int:num>') def square_number(num): square = num ** 2 return f'The square of {num} is {square}.' if __name__ == '__main__': app.run() </int:num>
from flask import Flask, request

app = Flask(__name__)

@app.route('/square/')
def square_number(num):
    square = num ** 2
    return f'The square of {num} is {square}.'

if __name__ == '__main__':
    app.run()

このコードでは、’/square/‘のURLから整数型の名前付きパラメータを取得し、その数の2乗を計算して返します。

以上がFlaskを使用してURLから名前付きパラメータを取得する方法とその具体的な例です。これらのサンプルコードを参考にして、自身のWebアプリケーションで名前付きパラメータを活用してみてください。

Flaskを使用してURLから名前付きパラメータを取得する方法は、Flaskのrequestオブジェクトを使用することです。具体的には、requestオブジェクトのargs属性を使用して、URLから名前付きパラメータを取得できます。たとえば、URLが’/user?id=123’のような場合、request.args.get(‘id’)を使用して’id’という名前のパラメータの値を取得できます。この方法を使用することで、Flaskアプリケーション内でURLからの入力を取得し、適切に処理することができます。

購読
通知


0 Comments
Inline Feedbacks
View all comments