Как нажать кнопку «Отправить» в веб-форме с помощью модуля запросов Python? - PullRequest
0 голосов
/ 06 октября 2019

Это моя login.php форма

<form action="login.php" method="post">
    <fieldset>
            <label for="user">Username</label> <input type="text" class="loginInput" size="20" name="username"><br> 
            <label for="pass">Password</label> <input type="password" class="loginInput" autocomplete="off" size="20" name="password"><br>
            <p class="submit"><input type="submit" value="Login" name="Login"></p>
    </fieldset>
</form>

В целях тестирования имя пользователя admin, а пароль password

Это код Python

import requests
url = 'http://localhost/test/login.php'
payload = {'username': 'admin', 'password': 'password'}
requests.post(url, data=payload)

Изначально я понятия не имел, почему я продолжаю получать 200 response code, хотя пароль был неправильным.

Спасибо Pavel за подсказку о коде ответа.

Очевидно, 200, вызванный запросом к login.php, был успешным, что означает, что этот код никогда не отправлял кнопку отправки.

Если вход выполнен успешно, страница должна быть перенаправлена ​​на index.php ЕслиВойти не удалось, должен быть failed текст, написанный на login.php

Это доказательство.

>>> r = requests.post(url, data=payload)
>>> r
<Response [200]>
>>> 
>>> r.url
'http://localhost/test/login.php'
>>> 
>>> 'failed' in r.text
False
>>> 

Вернуться к моему вопросу, как отправить форму входа в этом"нажатием кнопки отправки" в модуле запросов Python?

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...