2019-01-28

Chrome Dev Tools + Insomnia = Requests

В этой статье я подробно опишу последовательность действий, необходимых для генерации кода на основе запроса, который был перехвачен в Chrome Dev Tools.

link Постановка задачи

Написать код на языке Python, который позволит получить с сервиса Яндекс.Музыка список новых альбомов

link Необходимые инструменты

Мы будем использовать встроенные возможности Chrome и Insomnia, а также Python и один из самых известных пакетов для этого языка - requests.

  • Браузер Google Chrome - будет использован для перехвата запроса
  • REST-клиент Insomnia - позволит сгенерировать код на языке Python
  • Интерпретатор Python - обеспечит выполнение полученного кода
  • Пакет requests - упростит код, который мы генерируем

link Последовательность действий

  1. Открываем Google Chrome и переходим на интересующую нас страницу
  2. Открываем Chrome Dev Tools
    • Для этого можно использовать комбинацию клавиш ⌘ Cmd + ⌥ Option + I (Mac OS) или Control + ⇧ Shift + I (Windows)
  3. Переходим на вкладку Network
Chrome Dev Tools - вкладка Network Chrome Dev Tools - вкладка Network
  1. Обновляем страницу
    • Комбинация клавиш ⌘ Cmd + R (Mac OS) или Control + R (Windows)
  2. Фильтруем список запросов
    • Нажимаем на символ воронки в верхней части Dev Tools
    • Вводим слово albums в поле Filter
Chrome Dev Tools - список запросов Chrome Dev Tools - список запросов
  1. Копируем запрос, включая все данные, которые мы передали на сервер
    • Кликаем правой клавишей по интересующему нас запросу
    • Выбираем Copy -> Copy as cURL
Chrome Dev Tools - копирование запроса Chrome Dev Tools - копирование запроса
  1. Открываем Insomnia
  2. Создаём новый запрос - New Request
    • Используем комбинацию клавиш ⌘ Cmd + N (Mac OS) или Control + N (Windows)
    • Вводим произвольное имя запроса. Например: New Albums
    • Нажимаем кнопку Create
Insomnia - новый запрос Insomnia - новый запрос
  1. Формируем запрос
    • Устанавливаем курсор в поле для ввода адреса
    • Вставляем скопированный ранее запрос
    • Insomnia заполняет URL, form-data и заголовки
    • Можно убедиться в работоспособности запроса, нажав клавишу Enter
Insomnia - сформированный запрос Insomnia - сформированный запрос
  1. Генерируем код
    • Используем комбинацию клавиш ⌘ Cmd + ⇧ Shift + G (Mac OS) или Control + ⇧ Shift + G (Windows)
    • Выбираем интересующие нас инструменты: Python и Requests
    • Копируем код нажатием кнопки Copy to Clipboard
Insomnia - генерация кода Insomnia - генерация кода

Задача выполнена: в буфере обмена код, который нас интересовал. Теперь мы можем вставить его в наш проект, отредактировать его (например убрать лишние заголовки) и использовать как нам вздумается.