Рубрики
Без рубрики

Как использовать API OpenWeatherMap с Python

Узнайте, как использовать Python для запроса и преобразования данных из API OpenWeatherMAP .. Tagged с помощью программирования, API, Python, Learntocode.

В этой статье мы рассмотрим мощный API OpenWeatherMAP, который позволяет вам получить доступ и использовать данные о погоде в ваших программах. Его можно использовать для отображения информации, такой как температура, ветер и влажность, для текущей погоды и прогнозируемой погоды.

Мы будем использовать язык программирования Python и потрясающую библиотеку под названием Python OpenWeatherMap (Pyowm), чтобы облегчить использование API OpenWeatherMap в Python.

Эта статья основана на интерактивном курсе, который я выпустил на следующем XYZ. Курс имеет Python и библиотека Pyowm, предварительно установленную и позволяет вам использовать оба прямо из вашего браузера. Если вы хотите узнать еще больше о Pyowm, вы можете Проверьте курс И начните бесплатно!

Настройка вашей среды

Чтобы запустить фрагменты кода в этой статье, вам понадобится Python и Pyowm Установлена библиотека (инструкции по установке для pyowm можно найти Здесь )

После того, как вы установили это, вы можете открыть оболочку Python из вашей командной строки (обычно используя Python или Python3 , в зависимости от того, какую версию Python вы используете) и используйте его для запуска команд ниже.

Получение вашего ключа API OpenWeatherMAP

После того, как у вас есть настройка среды, следующий шаг – получить бесплатный ключ API от Сайт OpenWeatherMap .

После того, как вы зарегистрировались на веб -сайте OpenWeatherMap, вы увидите это в верхней части страницы:

Нажмите на «Ключи API», и вы увидите ключ API.

Когда вы работаете с примерами ниже, вам нужно заменить С этим ключом API.

Погодные условия

Теперь, когда у вас есть ключ API, давайте проверим погоду! Сначала мы начнем с проверки, есть ли какие-либо облака в пятидневном прогнозе для Лос-Анджелеса. Вот код, чтобы сделать это:

import pyowm
owm = pyowm.OWM('') # TODO: Replace  with your API key
la = owm.three_hours_forecast('Los Angeles, US')
print(la.will_have_clouds())

Давайте разберем это. Начнем с импорта Pyowm Библиотека, затем мы аутентифицируем с помощью ключа API. Аутентифицированное соединение с API хранится в OWM переменная.

Далее мы используем three_hours_forecast () Метод для получения прогноза для указанного местоположения (в данном случае, Лос -Анджелес) и хранить его в переменной LA. Обратите внимание, что three_hours_forecast () Метод возвращает пятидневный прогноз с данными о погоде каждые три часа.

Теперь, когда у нас есть объект погоды, мы можем вызвать Will_have_clouds () Метод на нем, чтобы проверить, будут ли облака! В пределах Pyowm Библиотека, это будет проверять погоду в каждом трехчасовом интервале, и, если какой-либо образец погоды укажет на облака, метод вернет True, в противном случае он вернет ложь.

Мы также можем использовать Pyowm, чтобы увидеть, будет ли дождь, будет туманным или проверить другие общие погодные условия. OpenWeatherMap также имеет данные со всего мира. Например, давайте посмотрим на погоду в Лондоне:

import pyowm
owm = pyowm.OWM('') # TODO: Replace  with your API key
london = owm.three_hours_forecast('London, GB')
print(london.will_have_rain())
print(london.will_have_fog())

Потрясающий! С лишь несколькими строками кода вы можете получить и отобразить некоторую удивительную информацию в своей программе.

Тока температура

Теперь давайте посмотрим, как получить текущую температуру:

import pyowm
owm = pyowm.OWM('') # TODO: Replace  with your API key
sf = owm.weather_at_place('San Francisco, US')
weather = sf.get_weather()
print(weather.get_temperature('fahrenheit')['temp'])

Как вы можете догадаться из использования 'fahrenheit' В приведенном выше коде вы также можете запросить данные в Цельсии, передав «Цельсия» к get_temperature () метод

Время восхода солнца и заката

Еще одна классная вещь, которую вы можете сделать с Pyowm, – это запрос и отображение времени восхода и солнца. get_sunrise_time () и get_sunset_time () Методы могут быть вызваны, чтобы получить эту информацию. При использовании этих методов есть улов, хотя они возвращают время в UNIX по умолчанию (например, 1542800608 ). Прохождение TimeFormat = 'iso' Параметр преобразует время в более читаемый на человеке формат (например, 2018–11–21 21: 16: 54+00 ). Кроме того, времена находятся в часовом поясе GMT (в следующем курсе XYZ мы рассмотрим, как преобразовать время в определенный часовой пояс).

Вот пример получения времени восхода и заката:

import pyowm
owm = pyowm.OWM('') # TODO: Replace  with your API key
boston = owm.weather_at_place('Boston, US')
weather = boston.get_weather()
print(weather.get_sunrise_time(timeformat='iso')) # Prints time in GMT timezone
print(weather.get_sunset_time(timeformat='iso')) # Prints time in GMT timezone

Завершая

Если вам понравился этот пост и вы хотите узнать больше об использовании Python OpenWeatherMap для доступа к данным о погоде, ознакомьтесь с Курс на следующем xyz , что более глубоко входит в то, как использовать Pyowm. Он также включает в себя интерактивные задачи и викторины, которые помогут вам освоить материал в курсе. К концу вы создали графический интерфейс погоды, как изображение ниже!

Есть вопросы или комментарии? Просто оставьте записку ниже!

Спасибо за чтение и счастливое кодирование!

Оригинал: “https://dev.to/nexttech/how-to-use-the-openweathermap-api-with-python-5dkg”