Это моя 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?