Python 3でクエリ文字列をエンコードする方法

PYTHON3 チュートリアル

Python 3でクエリ文字列をエンコードする方法

Python 3では、URLに含めるクエリ文字列をエンコードするために標準ライブラリのurllib.parseモジュールを使用します。クエリ文字列をエンコードすることで、特殊文字や日本語などの文字列を安全にURLに埋め込むことができます。

クエリ文字列のエンコード方法

以下のサンプルコードでは、urllib.parseモジュールのurlencode()関数を使用してクエリ文字列をエンコードします。

import urllib.parse

params = {'key': '日本語', 'page': 1}
encoded_params = urllib.parse.urlencode(params)
print(encoded_params)

上記のコードを実行すると、以下のようにクエリ文字列がエンコードされます。

key=%E6%97%A5%E6%9C%AC%E8%AA%9E&page=1

クエリ文字列のデコード方法

エンコードされたクエリ文字列をデコードする場合は、urllib.parseモジュールのparse_qs()関数を使用します。

decoded_params = urllib.parse.parse_qs(encoded_params)
print(decoded_params)

上記のコードを実行すると、以下のようにデコードされたクエリ文字列が表示されます。

{'key': ['日本語'], 'page': ['1']}

URLにクエリ文字列を追加する方法

エンコードされたクエリ文字列をURLに追加する方法を示します。

base_url = 'https://example.com/api'
full_url = base_url + '?' + encoded_params
print(full_url)

上記のコードを実行すると、以下のようにクエリ文字列がURLに追加された完全なURLが表示されます。

https://example.com/api?key=%E6%97%A5%E6%9C%AC%E8%AA%9E&page=1

以上がPython 3でクエリ文字列をエンコードする方法に関する基本的な情報とサンプルコードです。これらの方法を使って、安全かつ正確にURLを構築することができます。

Python 3では、クエリ文字列をエンコードするために、urllib.parseモジュールのurlencode()関数を使用します。この関数を使うと、辞書形式で渡されたクエリパラメータをURLエンコードして、文字列として返します。例えば、以下のように使用します:

“`python
import urllib.parse

params = {‘key1’: ‘value1’, ‘key2’: ‘value2’}
encoded_query = urllib.parse.urlencode(params)
print(encoded_query)
“`

このコードを実行すると、”key1=value1&key2=value2″という文字列が出力されます。これは、クエリ文字列が正しくエンコードされた結果です。このようにして、Python 3でクエリ文字列をエンコードすることができます。

購読
通知
0 Comments
Inline Feedbacks
View all comments