Python, использование REQUEST для кнопки отправки - PullRequest
0 голосов
/ 13 октября 2019

Я пытаюсь отправить некоторые данные в PHP-форму через Python.

Веб-страница настроена так:

<body>
<form action="do_process.php" method="post">

Date: <input type="text" name="Date"><br>
Value old: <input type="text" name="OldVal"><br>
Value new: <input type="text" name="NewVal"><br>

<input type="submit"  name="ClickMe" value="ClickMe">
</body>

Где "do_process.php" записывает введенные данныезначения в текстовый файл на сервере. Делать это вручную, нажав на кнопку, работает правильно, и текстовый файл обновляется.

В Python я использую «запросы» для получения данных с веб-сайта и отправки сообщений на него:

def write_data(Date, OldVal, NewVal):
 url='http://mypage.somewhere/display.php'
 payload = {'Date':Date, 'OldVal':OldVal, 'NewVal':NewVal, 'Submit':'ClickMe'}
 res=requests.post(url, data=payload)
 print(res.text)

Когда я вызываю функцию в python, я получаю HTML-листинг всей страницы обратно в res, однако текстовый файл не обновляется. Кроме того, переключение на

     payload = {'Date':Date, 'OldVal':OldVal, 'NewVal':NewVal, 'ClickMe':'Submit'}

не имело никакого значения.

Полагаю, я упускаю что-то очень очевидное, но не могу на это взглянуть.

Есть идеи?

1 Ответ

0 голосов
/ 14 октября 2019

Когда вы нажимаете «submit», он вызывает «do_process.php» и передает все значения формы на эту страницу, поэтому в вашем скрипте python вы не должны вызывать «display.php», вы должны напрямую вызывать «do_process.php "

...