Нажмите кнопку "ОК" на веб-странице с помощью модуля запросов Python
У меня есть устройство, которым можно управлять с помощью интерфейса веб-страницы.
адрес устройства может быть:
http://10.18.25.25/restart
с кнопкой отправки на веб-странице:
<form action="/restart/restart" method="POST" name="restartForm">
<input type="submit" value="OK">
</form>
Я пытаюсь использовать запросы модуля Python для автоматизации нажатия на кнопку на этой веб-странице.
from urllib3 import requests
r = requests.get('http://10.18.25.25/restart', auth=('username', 'password'))
есть идеи??
2 ответа
Из предоставленной информации, я предполагаю, что вы посещаете страницу на http://10.18.25.25/restart/
который имеет форму, чтобы перезагрузить устройство при отправке.
Определенное вами действие присутствует в URI /restart/restart
на форме. Сделайте запрос на тот же URI:
r = requests.post('http://10.18.25.25/restart/restart', auth=('username', 'password'))
В зависимости от сайта вы можете или не можете эмулировать действие формы с соответствующим HTTP-запросом POST к /request/request, но в большинстве реальных примеров, которые я видел, есть дополнительные файлы cookie и javascript, которые работают рядом с Форма делает этот подход чрезвычайно сложным, если не невозможным.
Однако, посмотрите библиотеку Selenium, которая предоставляет команды для программного управления браузером через Python. Я знаю, что ваш конкретный вопрос относится к модулю запросов, и в вашем случае этого может быть вполне достаточно, но в общем случае Selenium стоит проверить.