Перейти к содержанию

Начало урока

Вызов веб-API с помощью requests

Общайтесь с любым веб-сервисом из Python: отправьте запрос, прочитайте ответ.

Главная идея: Веб-API позволяет вашей программе запрашивать у другого сервера данные или действия по протоколу HTTP. Библиотека Python requests превращает весь этот диалог в несколько понятных строк: вы выбираете HTTP-глагол, направляете его на URL, при необходимости прикрепляете параметры или тело JSON и читаете ответ с кодом состояния и данными.
К концу урока вы сможете:
  • отправлять GET- и POST-запросы с помощью requests,
  • безопасно прикреплять параметры запроса через params=,
  • отправлять и читать тела JSON,
  • читать коды состояния и реагировать на них (2xx / 4xx / 5xx),
  • обрабатывать тайм-ауты и сетевые ошибки без аварийного завершения.

1. Что такое веб-API?

API (Application Programming Interface, интерфейс программирования приложений) — это договор: сервер публикует набор URL-адресов (называемых эндпоинтами) и обещает, что если вы отправите правильный запрос, он вернёт полезный ответ. Веб-API общается по протоколу HTTP — тому же, что использует ваш браузер.

Аналогия: представьте ресторан. Вы (клиент) не заходите на кухню. Вы даёте официанту конкретный заказ (запрос); кухня готовит его, а официант приносит тарелку (ответ). Меню — это документация API: она точно говорит, что можно попросить и как.

Библиотека requests — общепринятый способ быть таким клиентом в Python. Она не входит в стандартную библиотеку, поэтому её нужно один раз установить:

pip install requests

Затем в программе вы импортируете её и делаете вызов:

import requests

response = requests.get("https://api.example.com/status")
print(response.status_code)

Продолжите этот урок на YourAIZone

В полном уроке — объяснение целиком, разобранные примеры, частые ошибки, тесты с мгновенной проверкой и ИИ-репетитор. Начните сразу как гость или создайте аккаунт, чтобы сохранять прогресс.

В полном уроке

  • Объяснение целиком
  • Разобранные примеры
  • Частые ошибки и как их избежать
  • Тестовые вопросы: 15
  • ИИ-репетитор, который отвечает на вопросы по теме
  • Отслеживание прогресса для ученика, родителей и учителя