Есть API Геокодер от Яндекса, в котором присутствует получение координат адреса по ссылке. Пример запроса: . В нём присутствую русские буквы и requests с ними не ладит. Моя функция для запроса:
def requestsGet():
r = requests.get('https://https://geocode-maps.yandex.ru/1.x/?apikey=7cf0c3a3-4ae5-4e20-8250-34d99c8eb365=Москва,+Тверская+улица,+дом+7', params={'format': 'json'})
print('Url запроса:', r.url)
return r.json()
В итоге запрос становится не читаемым:
geocode-maps.yandex.ru/1.x/?apikey=7cf0c3a3-4ae5-4e20-8250-34d99c8eb365=%D0%9C%D0%BE%D1%81%D0%BA%D0%B2%D0%B0,+%D0%A2%D0%B2%D0%B5%D1%80%D1%81%D0%BA%D0%B0%D1%8F+%D1%83%D0%BB%D0%B8%D1%86%D0%B0,+%D0%B4%D0%BE%D0%BC+7&format=json
И requests, как не удивительно, выдаёт ошибку:
requests.exceptions.ConnectionError: HTTPSConnectionPool(host='https', port=443): Max retries exceeded with url: //geocode-maps.yandex.ru/1.x/?apikey=7cf0c3a3-4ae5-4e20-8250-34d99c8eb365=%D0%9C%D0%BE%D1%81%D0%BA%D0%B2%D0%B0,+%D0%A2%D0%B2%D0%B5%D1%80%D1%81%D0%BA%D0%B0%D1%8F+%D1%83%D0%BB%D0%B8%D1%86%D0%B0,+%D0%B4%D0%BE%D0%BC+7&format=json (Caused by NewConnectionError(': Failed to establish a new connection: [Errno 11001] getaddrinfo failed'))
Ссылка на документацию об формате запроса API Геокодер от Яндекса