【Python】URL文字列を生成する

python-logo Python

今回はurllibを利用してURL文字列を生成する方法について解説する。

URLを生成しつつ、APIリクエストを行う場合は、requestsを利用した方が良い。

必要なライブラリ

標準ライブラリのurllib.parseを利用する。

urllib.parse --- URL を解析して構成要素にする
ソースコード: Lib/urllib/parse.py このモジュールでは URL (Uniform Resource Locator) 文字列をその構成要素 (アドレススキーム、ネットワーク上の位置、パスその他) に分解したり、構成要素を...
import urllib.parse

実装方法

urlencode()関数を使うことで、辞書型で定義したkeyとvalueのデータをURLのリクエストパラメータに変換することができる。

import urllib.parse

url_param = {
    'key1': 'value1',
    'key2': 'value2',
    'key3': 'value3',
}
generated_param = urllib.parse.urlencode(url_param)
print(generated_param)

# 結果
key1=value1&key2=value2&key3=value3

あとはベースとなるURLと文字列連結すればOK。

import urllib.parse

base_url = 'https://example.com'
url_param = {
    'key1': 'value1',
    'key2': 'value2',
    'key3': 'value3',
}
generated_param = urllib.parse.urlencode(url_param)
print(f'{base_url}?{generated_param}')

# 結果
https://example.com?key1=value1&key2=value2&key3=value3

まとめ

urllib.parseを利用すると、辞書型のオブジェクトからリクエストパラメータを生成できる

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