Есть регулярно пополняемая база номеров. Необходимо выделить из этой базы все номера, ранее не зарегистрированные на сайте и добавить их в excel файл.
Сайт, который предоставляет необходимые данные о номере (есть в базе или нет) не имеет api для доступа извне, поэтому мне пришлось парсить html.
Я начал экспериментировать с Postman. Стало понятно что все запросы должны быть подписаны двумя токенами - XSRF, который валиден 24 часа, и CSRF, который создавался из пары логин - пароль, и не имел срока годности.
Авторизация происходит в два запроса.
Первый - GET, который возвращает CSRF.
Второй - POST с CSRF который возвращает XSRF
С авторизацией разобрался. Номер телефона передавался в самой ссылке, поэтому была создана маска, которая приводила номер телефона к нужному виду. После этого необходимо было отличать, какой HTML ответ означал что номера нет в базе. Был выбран самый простой способ - проверять на количество символов в странице. Если их 8656, номер нам подходит (очень грубое решение но работает :). Дальше этот номер попадает в таблицу и сохраняется в памяти телефона. Работа с входным и выходным excel файлом происходит с помощью сторонней библиотеки. Проект писался по принципу лишь бы работало.
В процессе написания был получен опыт взаимодействия с сайтами без api, опыт работы с excel таблицами, появилось понимание принципов работы авторизации на сайте, а также получен опыт отладки кода.