【问题标题】:click submit button "OK" on a webpage using python requests module使用python请求模块在网页上单击提交按钮“确定”
【发布时间】:2014-10-15 14:48:32
【问题描述】:

我有一个可以使用网页界面管理的设备。

设备地址可以是:

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'))

有什么想法吗??

【问题讨论】:

    标签: python html urllib3


    【解决方案1】:

    根据站点的不同,您可能会也可能无法通过对 /request/request 的适当 HTTP POST 请求来模拟表单的操作,但在我看到的大多数实际示例中,还有额外的 cookie 和 javascript与表单一起运行,即使不是不可能,这种方法也非常困难。

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

    【讨论】:

      【解决方案2】:

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

      您定义的操作位于表单上的 URI /restart/restart。所以在同一个 URI 上做一个请求:

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

      【讨论】:

        猜你喜欢
        • 2016-03-13
        • 1970-01-01
        • 1970-01-01
        • 2017-10-16
        • 2021-06-23
        • 1970-01-01
        • 1970-01-01
        • 2014-02-25
        • 1970-01-01
        相关资源
        最近更新 更多