使用python请求modu单击网页上的提交按钮“确定”

2024-05-23 17:12:12 发布

您现在位置: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'))

有什么想法吗??


Tags: nameformhttp网页input界面地址type
2条回答

根据站点的不同,您可能无法使用适当的HTTP POST-request-to/request/request来模拟表单的操作,但在大多数实际示例中,我看到表单旁边运行着额外的cookies和javascript,这使得这种方法非常困难,如果不是不可能的话。

不过,请查看Selenium库,它提供了通过Python编程操作浏览器的命令。我知道您的具体问题是请求模块,在您的情况下,这可能已经足够了,但是在一般情况下,Selenium可能值得一看。

根据提供的信息,我假设您访问了http://10.18.25.25/restart/上有表单的页面,以便在提交时重新启动设备。

您定义的操作出现在表单的URI/restart/restart中。对同一个URI执行请求:

r = requests.post('http://10.18.25.25/restart/restart', auth=('username', 'password'))

相关问题 更多 >