Добавить в корзинуПозвонить
Найти в Дзене
NeyroProfit

Что такое API и как его вызывать из Python

API — это посредник между программами. Одна программа отправляет запрос, другая отвечает. Всё через интернет, без участия человека. Простой пример: ты заказываешь пиццу через приложение. Приложение отправляет API-запрос на сервер пиццерии. Сервер отвечает: «заказ принят, жди 30 минут». Это и есть API. Обычно API работает через HTTP — тот же протокол, по которому браузер открывает сайты. Только вместо страницы с картинками приходит JSON — структурированные данные. Типы запросов: Метод Что делает Аналог в жизни GET Получить данные Посмотреть меню POST Создать запись Сделать заказ PUT/PATCH Обновить данные Изменить адрес доставки DELETE Удалить Отменить заказ Ответ сервера выглядит так: ``` { "weather": { "city": "Москва", "temp": 22, "description": "ясно" } } ``` Библиотека `requests` делает API-запросы в три строки. Установка: `pip install requests`. Узнаём погоду через бесплатный API: ``` import requests response = requests.get("https://api.open-meteo.com/v1/forecast?latitude=55.75&lon
Оглавление

API — это посредник между программами. Одна программа отправляет запрос, другая отвечает. Всё через интернет, без участия человека.

Простой пример: ты заказываешь пиццу через приложение. Приложение отправляет API-запрос на сервер пиццерии. Сервер отвечает: «заказ принят, жди 30 минут». Это и есть API.

Как выглядит API-запрос

Обычно API работает через HTTP — тот же протокол, по которому браузер открывает сайты. Только вместо страницы с картинками приходит JSON — структурированные данные.

Типы запросов:

Метод Что делает Аналог в жизни GET Получить данные Посмотреть меню POST Создать запись Сделать заказ PUT/PATCH Обновить данные Изменить адрес доставки DELETE Удалить Отменить заказ

Ответ сервера выглядит так:

```

{

"weather": {

"city": "Москва",

"temp": 22,

"description": "ясно"

}

}

```

Простой запрос на Python

Библиотека `requests` делает API-запросы в три строки. Установка: `pip install requests`.

Узнаём погоду через бесплатный API:

```

import requests

response = requests.get("https://api.open-meteo.com/v1/forecast?latitude=55.75&longitude=37.62¤t_weather=true")

data = response.json()

print(data["current_weather"]["temperature"])

```

Что тут происходит:

  • `requests.get` — отправляет GET-запрос
  • `.json()` — превращает ответ в словарь Python
  • Дальше работаешь как с обычным словарём

API с авторизацией

Многие API требуют ключ (токен). Его получают при регистрации на сервисе и передают в заголовке запроса.

Пример с погодным API OpenWeatherMap:

```

import requests

API_KEY = "твой_ключ"

city = "Москва"

url = f"https://api.openweathermap.org/data/2.5/weather?q={city}&appid={API_KEY}&units=metric&lang=ru"

response = requests.get(url)

data = response.json()

print(f"В {city}: {data['weather'][0]['description']}, {data['main']['temp']}°C")

```

Какие API полезно знать новичку

API Что даёт Бесплатно? Open-Meteo Погода в любой точке Да CoinGecko Курсы криптовалют Да GitHub API Инфо о репозиториях, пользователях Да Telegram Bot API Создание ботов Да JSONPlaceholder Тестовые данные Да OpenWeatherMap Погода + прогноз Есть бесплатный лимит TheCatAPI Картинки котов Да

Обработка ошибок

API может вернуть ошибку: сервер нагружен, ключ не подходит, данных нет. Обрабатывай так:

```

response = requests.get(url)

if response.status_code == 200:

data = response.json()

elif response.status_code == 404:

print("Данные не найдены")

elif response.status_code == 401:

print("Нет доступа — проверь ключ")

else:

print(f"Ошибка: {response.status_code}")

```

Код 200 — успех. 404 — не найдено. 401 — нет авторизации. 500 — проблемы сервера.

Как найти API для своего проекта

  1. Гугли «имя_сервиса API documentation»
  2. Ищи `api.имя_сервиса.com` в документации
  3. Регистрируйся, получай ключ
  4. Читай документацию — там примеры запросов

Итог

API — это способ общения программ через интернет. Python с библиотекой `requests` делает работу с API простой и понятной. Начни с любого бесплатного API — погода, курсы валют, данные с GitHub.

Подпишись на канал, чтобы не пропускать новые статьи по программированию.