Задать вопрос
berezuev
@berezuev
#define TRUE FALSE

Python Requests отправка пост-запроса формы?

Есть простейшая bootstrap3 форма с post запросом, jquery валидацией (примерно такие генерирует yii2).
Пишу на питоне скрипт, который при помощи библиотеки Requests будет авторизовываться и отправлять форму. Авторизацию прохожу, CSRF-токен получаю, везде в заголовках 200-й код (успех), однако, после отправки формы возвращается страница, утверждающая, что я отправил пустые поля. Все необходимые поля и csrf токен отправляю в атрибуте "data" (список полей в chrome dev tools смотрел), однако такое ощущение, что сервер их не принимает.
С чем может быть косяк?
Ссылку на форму выложить не могу. Только отрывок кода

#сначала идет авторизация, затем из страницы, на которую нас перебросило с формы, вытаскивается csrf токен
url='https://example.com/form'

payload = {
    'lastName': 'Обама',
    	'firstName': 'Барак',
    	'middleName': 'Хусейн',
    	'birthdate': '04/08/1961',
    	'_csrf': csrf
}

headers= {
	'Content-type': 'charset=utf-8', 'X-CSRF-TOKEN': csrf}

s.headers.update({'Connection': 'keep-alive', "Referer": url})

r4=s.post(url, data=payload, headers=headers)
w = open("dump.html", "wb")
w.write(r4.text.encode("utf-8"))
w.close()

print(r4.text.encode("utf-8"))
print(r4.url)
print(r4.headers)
print(r4)


upd: пробовал в браузере отключать JS, однако форма и без него отправляется, т.е. проблема в другом
  • Вопрос задан
  • 10440 просмотров
Подписаться 7 Оценить Комментировать
Решения вопроса 1
un1t
@un1t
Отправь на httpbin.org/post
это сервис для отладки подобных запросов, посмотри что придет.
Тогда будет ясно на чьей стороне проблема.
Ответ написан
Пригласить эксперта
Ваш ответ на вопрос

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

Похожие вопросы
SpectrumData Екатеринбург
от 150 000 до 250 000 ₽
AST Москва
До 350 000 ₽
Wanted. Москва
До 250 000 ₽
14 янв. 2025, в 05:34
30000 руб./за проект
14 янв. 2025, в 03:39
20000 руб./за проект
14 янв. 2025, в 03:33
3500 руб./за проект