-1

我正在尝试自动化网络导航,但我在尝试提交表单时遇到了困难。在网页上,通过单击文本传递表单。我查看了 HTML 代码,并且该特定表单将激活一个动作。

我使用 Splinter 来查找元素,当我尝试查找该表单时,它会显示以下内容:

'splinter.driver.webdriver.firefox.WebdriverElement 对象在(某个地址)'

我的问题是我如何与之交互,或者更具体地说是单击它?

如果有帮助,这是有问题的表格

<form method="POST" action="(some page)">
    <input type="hidden" value="renew" name="action"></input>
    <input type="hidden" value="U2FsdGVkX18zMDg5MzMwOJM23T7owlwSS2tJKSPSEdTUU-6aXTo9ww" name="crypt"></input>
    <input class="managebtn" type="submit" value="renew" name="go"></input>

谢谢

4

1 回答 1

0

splinter 教程确实涵盖了这一点,尽管需要一些解释才能获得以下代码。这是未经测试的,但类似于我一直在完成的一些表格。:

form = browser.find_by_tag('form')
inputs = form.find_by_tag('input')
btn = inputs[-1]
btn.click()

首先,我们找到表单,然后是表单中输入元素的元素列表。不是真的需要,但是在变量中获取最后(第三个)输入元素,即按钮,然后我们单击它。

您可以通过在表单或周围元素上放置 id 属性来提高网页的可测试性。这样您就不会意外地测试错误的表格。

于 2014-11-18T16:00:28.463 回答