Авторизация не проходит Python
Ребята, только не смейтесь, решил для практики в парсинге попрактиковаться на сайте xvideos)) Открыл панель разработчика в браузере хром , ввёл логин и пароль , получил следующие данные для метода POST
Далее вот мой код
import requests
from bs4 import BeautifulSoup
file_url =r'C:\Users\483\Desktop\файлы\xvid'
link_enter='https://www.xvideos.com/account'
data = {
'signin-form[login]': '[email protected]',
'signin-form[password]': 'secret))',
'signin-form[rememberme]': 'on'
}
headers ={
'accept':'image/avif,image/webp,image/apng,image/svg+xml,image/*,*/*;q=0.8',
'user-agent':'Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/104.0.0.0 Safari/537.36'
}
sess = requests.Session()
req =sess.post(link_enter,headers=headers,data=data)
print(req.text)
На выходе получается html код. Reponse_status тоже пишет что всё в замечательно( код 200). Но когда я пытаюсь сохранить этот html код в блокноте,(копировал из консоли ,которая вывела print() и вставил в notepad++)
и запускаю его, я вижу что страница как была неавторизованная, так и осталась((( Почему так происходит и как это исправить?

====================День второй====================
Решил парсингом вытащить csrf токен из html файла, благо они в виде скрытых полей присутствуют там.[![введите сюда описание изображения][5]][5]
Ничего не вышло, пишет , что страница была открыта давно, хотя программа за милисекунду сработала
Вот обновленный код попытки всё исправить и сама ошибка
import requests
from bs4 import BeautifulSoup
file_url =r'C:\Users\483\Desktop\файлы\xvid'
link_enter='https://www.xvideos.com/account'
take = requests.get(link_enter)
soup_first=BeautifulSoup(take.text,'lxml')
CSRF = soup_first.find('input',id='signin-form_csrf_token').get('value')
data = {
'signin-form[csrf_token]': f'{CSRF}',
'signin-form[login]': 'login',
'signin-form[password]': 'pass',
'signin-form[rememberme]': 'on'
}
headers ={
'accept':'image/avif,image/webp,image/apng,image/svg+xml,image/*,*/*;q=0.8',
'user-agent':'Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/104.0.0.0 Safari/537.36'
}
sess = requests.Session()
req =sess.post(link_enter,headers=headers,data=data)
print(req.text)
Ответы (1 шт):
CSRF токен надо получить с сайта перед отправкой формы. Обычно найти его можно в куках. Поместите этот токен в POST форму.
