Open Weather API Map — Как сделать в Цельсиях?

Здравствуйте, хочу добавить виджет на сайт в Django с помощью Open Weather API Map.

views.py
from django.shortcuts import render
import requests
 
def weather(request):
    url = 'http://api.openweathermap.org/data/2.5/weather?q={}&units=CODEAPI'
    city = 'Kaliningrad'
    city_weather = requests.get(url.format(city)).json()
    weather = {
        'city': city,
        'temperature': city_weather['main']['temp'],
        'description': city_weather['weather'][0]['description'],
        'icon': city_weather['weather'][0]['icon']
    }
    context = {'weather': weather}
    return render(request, 'admin/weather.html', context)


Читая документацию не нашел способа как можно на выводе давать данные температуры в Цельсиях, а не в Фаренгейтах. Кто имел опыт, как это можно сделать?
  • Вопрос задан
  • 1045 просмотров
Решения вопроса 1
Пригласить эксперта
Ответы на вопрос 1
abberdeen
@abberdeen
Как альтернатива, можно конвертировать, по умолчанию АПИ возвращает значение температуры в кельвинах, поэтому:
#Конвертируем Кельвин в Цельсию
float(temperature) - 273.15

Больше о том как конвертировать на стороне сервера:
https://openweathermap.org/api/one-call-api#data
Ответ написан
Комментировать
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Войти через центр авторизации
Похожие вопросы