Получить погоду на Python

Получение данных о погоде — это распространенная задача для разработчиков, особенно при создании приложений, которые зависят от погодных условий. В этой статье мы рассмотрим, как использовать OpenWeatherMap API для получения данных о погоде с помощью Python.

Шаг 1: Регистрация на OpenWeatherMap и получение API-ключа

Первое, что вам нужно сделать, это зарегистрироваться на сайте OpenWeatherMap и получить API-ключ. Этот ключ позволит вам совершать запросы к API.

Шаг 2: Установка библиотеки requests

Для взаимодействия с API мы будем использовать библиотеку requests, которая делает отправку HTTP-запросов простой и удобной. Установить её можно с помощью следующей команды:

pip install requests

Шаг 3: Написание кода для получения данных о погоде

Теперь мы готовы написать код, который будет отправлять запросы к OpenWeatherMap API и обрабатывать полученные данные.

Пример кода
import requests, sys
from datetime import datetime

def getGeoData():
    response = requests.get('http://ip-api.com/json?lang=ru')
    data = response.json()
    return data

def getWeather(api_key):
    try:
        geo = getGeoData()
        base_url = 'https://api.openweathermap.org/data/2.5/weather'
        params = {
            'appid': api_key,
            'lat': geo['lat'],
            'lon': geo['lon'],
            'units': 'metric',
            'lang': 'ru'
        }
        response = requests.get(base_url, params=params)
        data = response.json()
        print(f'Погода в {data['name']} [{data['sys']['country']}]')
        print(f'Часовой пояс:', geo['timezone'])
        print(f'Сегодня:', datetime.fromtimestamp(data['dt']).strftime('%d.%m.%Y, %H:%M:%S'))
        print(f'Температура: {data['main']['temp']} °C')
        print(f'По ощущению: {data['main']['feels_like']} °C')
        print(f'Описание: {data['weather'][0]['description']}')
        print(f'Влажность: {data['main']['humidity']} %')
        print(f'Ветер: {data['wind']['speed']} м/с')
        print(f'Атмосферное давление: {data['main']['pressure']} ГПа') 
        print(f'Восход:', datetime.fromtimestamp(data['sys']['sunrise']).strftime('%H:%M:%S'))
        print(f'Закат:', datetime.fromtimestamp(data['sys']['sunset']).strftime('%H:%M:%S'))
    except Exception as e:
        print(f'Error! {e}')
        sys.exit()

api_key = ''
getWeather(api_key)

Заключение

Использование OpenWeatherMap API с Python позволяет легко и быстро получать данные о погоде для любого города. В этой статье мы рассмотрели процесс регистрации на OpenWeatherMap, установки библиотеки requests и написания кода для получения и обработки данных о погоде. Этот подход можно использовать в различных проектах, от простых приложений до сложных сервисов, зависящих от погодных условий.
Поделится:
*текст* - жирный, ~текст~ - курсивный, -текст- - зачеркнутый, _текст_ - подчеркнутый
IP-адрес: 18.226.214.91
Часовой пояс: Asia/Almaty
Подробнее

Сервисы

Страницы

Информация