我有一个可以使用网页界面管理的设备。
设备地址可以是:
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'))
任何想法??
答案 0 :(得分:3)
根据网站的不同,您可能会或可能无法通过对/ request / request的适当HTTP POST请求来模拟表单的操作,但在大多数实际示例中,我看到有其他Cookie和javascript,与形式并行,使得这种方法即使不是不可能也非常困难。
但是,请查看Selenium库,它提供了通过Python以编程方式操作浏览器的命令。我知道您的具体问题是针对请求模块,在您的情况下,这可能就足够了,但在一般情况下,Selenium可能值得一试。
答案 1 :(得分:2)
根据提供的信息,我假设您访问了http://10.18.25.25/restart/
上有一个表单的页面,以便在提交时重新启动您的设备。
您定义的操作显示在表单上的URI /restart/restart
中。所以在同一个URI上做一个请求:
r = requests.post('http://10.18.25.25/restart/restart', auth=('username', 'password'))