Python: запросы к web-сервисам¶
Для запроса к web-сервисам рекомендуем использовать библиотеку requests.
Эта библиотека не входит в состав стандартных модулей, поэтому для её использования нужно будет выполнить установку через pip.
Библиотека requests же установлена в Analytic Workspace
Если вы запускаете код внутри Analytic Workspace (ETL-скрипт или ETL-блок), то ничего дополнительно устанавливать не нужно.
Анатомия запросов к Web сервисам¶
В HTTP запросе можно выделить следующие существенные части:
- Метод (GET/POST/PUT/PATCH)
 - Адрес ()
 - Заголовки
 - Аутентификационная информация
 - Параметры
 
Параметры запросов передаются:
- В query-параметрах
 - В url-параметрах
 - В теле запроса (только для POST/PUT/PATCH запросов)
 
Обработка исключительных ситуаций¶
При взаимодействии с web-сервисами существует два основных источника ошибок:
- Ошибки приложения на сервере;
 - Сетевые ошибки.
 
Ошибки приложения
r = requests.get('https://jsonplaceholder.typicode.com/todos')
if not r.ok:
    # Возникла ошибка на сервере
    print('Ошибка запроса GET https://jsonplaceholder.typicode.com/todos: {e}')
Сетевые ошибки: