Задать вопрос
@DuckWithKnife404

Как пройти капчу при методе POST?

Использую библиотеку requests и beautifulsoup4.

Моя идея заключается в том, что я хочу зайти на сайт Rutube, войти в аккаунт и после загрузить видео.

Проблема в основном в капче.
в headers задал users_agent и различные фигни с куки (токены и т.д)

import requests
from bs4 import BeautifulSoup

s = requests.Session()
s.headers.update(headers)

response = s.post('https://captcha-api.yandex.ru/check?host=rutube.ru&sitekey=Y5Lh0tiycconMJGsFd3EbbuNKSp1yaZESUOIHfeV&href=https%3A%2F%2Frutube.ru%2Fmultipass%2Flogin%2F%3Fclient%3Dwdp%26snake-closable%3Dtrue%26referer%3Dhttps%253A%252F%252Frutube.ru%252F%26themeId%3Ddark2021%26snake-startForm%3Dlogin', headers=headers) #Сама капча

html_response = response.content.decode()
soup = BeautifulSoup(html_response, "html.parser")
#print(soup.find('button', {'class', 'freyja_char-base-button__button_7JyC- freyja_char-base-button__contained-accent_Z8hc1 freyja_char-base-button__regular_ksZLL freyja_char-base-button__pointerCursor_JNA7y'}))
key = soup.text.split('"key":"')[1].split('"')[0]
#тут я взял ключ от капчи
response = s.post('https://rutube.ru/multipass/api/v3/accounts/phone/login', headers=headers, data={'phone': 'мой номер телефона', 'password': 'мой пароль', 'captcha': key})


Но мне выводит:

<Response [400]>
{"detail":"Invalid captcha"}

Я не понимаю как пройти капчу, если у меня есть ключ. Я просто не особо разбираюсь в этой библиотеке, но решил попробовать написать такую программу. Хотя с другими сайтами у меня всё легко получилось (там через токен входил, а на рутубе не получилось найти и зайти через токен).
  • Вопрос задан
  • 160 просмотров
Подписаться 1 Простой 1 комментарий
Пригласить эксперта
Ответы на вопрос 1
Steel_Balls
@Steel_Balls
0KLRiyDQv9C40LTQvtGALiDQmNC00Lgg0L3QsNGF0YPQuQ==
Ну, во-первых, надо правильно вопрос оформить с кодом.
А во-вторых, надо подробно исследовать всё с помощью Developer Tools -> Network в браузере и проверить всё это в Postman
Ответ написан
Комментировать
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы