Python Requests авторизация на сайте, как получить значения которые генирируются js?
Я недавно узнал про авторизацию на сайтах при парсинге, и я наткнулся на несколько сайтов у которых есть иная защита в виде генерации какого то числа(pow) или токена (session-id). Я непонимаю как достать значение pow после генерации т.к после отправки post запроса оно подставляется в form data: login:example@email.com password:password123 pow:"12345" captcha:"". Я нашел только код на js, где и происходит генерация но оно, лично для меня ничего не дает, ведь генерация происходит, а потом подставляется. И вот что получается, я не могу достать это значение pow:"" что бы подставить его, и из-за этого программа и ругается "pow": ["required"]}} и выдает ошибку 403 или 409. Как мне достать это значение pow??? (Еще заметил, что каждый новый запрос это новый pow значение)
2-й сайт, я хотел тоже сделать авторизацию, но там есть значение session-id которых нету в set-cookie, оно также генерируется (как я думаю), и тоже не понимаю как его достать если оно только в requests headers. Каким способом можно мне его достать???? Может эти значения каким то способом нужно перехватывать и подставлять в post запрос. >Недавно начал изучать requests... Жду вашей помощи
Вариант 1. Разобрать алгоритм, по которому генерируется значение-ключ, и воссоздать его в питоне.
Вариант 2. Использовать эмулятор браузера, который может выполнять JS, типа selenium. Тоже не идеально.
Вариант 1. Разобрать алгоритм, по которому генерируется значение-ключ, и воссоздать его в питоне.
А смысл его разбирать если он будет генерировать локально, а на сайте уже будет сгенерированое другое значение.
Вариант 2. Использовать эмулятор браузера, который может выполнять JS, типа selenium. Тоже не идеально.
Очень долго, если я зохочу сделать авторегестратор или использовать более 5-10 аккаунтов то это будет сильно нагружать систему и код.
dopr, как ты себе представляешь другое решение?
Тебе нужен код авторизации. Ты или генерируешь его сам, по тому же алгоритму (чтобы получилось такое же значение, как на сайте), или позволяешь сайту сгенерировать его за тебя.
dopr, откуда я знаю, какой там алгоритм?
Просто логически рассуждая, у сайта этот алгоритм реализован на сервере и на клиенте.
Таким образом сервер может проверить, что клиент отдал правильный код авторизации. Если клиент отдал правильный код, значит он выполнил JS скрипт, отданный сервером. А если он выполнил скрипт, значит это скорее всего браузер, а не бот.