Реализация словаря
Существует словарь с аргументами, которые нужно указать для отправки запроса к API.
Он подается в формате:
{'param_name': 'value'}
Но дело в том, что мне нужно указывать эти аргументы при отправке запроса в виде:
https://url?method_name/¶m1=value1¶m2=value2
Вопрос состоит в том, как можно словарь распаковать в виде &item=key?
Ответы (3 шт):
Воспользуйтесь инструментом, созданным именно для этих целей - urllib.parse.urlencode():
from urllib.parse import urlencode
data = {'param1': 'val1', 'param2': 'string with spaces'}
urlencode(data)
# 'param1=val1¶m2=string+with+spaces'
PS urllib.parse.urlencode() - сам позаботится о правильном преобразовании и экранировании необходимых символов так, чтобы получился валидный URL.
Какая библиотека используется для отправки запросов к API? Поскольку в requests уже все готово и вам даже делать ничего не надо
import requests
params = {'param_name': 'value',
'param_name1': 'value1'}
url = "https://example.com/v1/method/"
response = request.get(url, params=params)
и вот такой вот запрос распакуется вот так
https://example.com/v1/method/?param_name=value¶m_name1=value1
Документацию можно глянуть здесь