2012-06-06 38 views
0

我想测试我的代码,并有一个提交按钮,我必须单击,但此提交按钮获取动态ID名称。如何在不使用ID的情况下使用我的硒脚本点击此键。点击没有ID的提交键?

<td> 
    <button type="submit" value="Allow All" class="btn btnC bglb mfss touchable" 
    id="xhp647364382646" role="button" data-meta="0_3" 
    data-sigil="extra-perms-button blocking-touchable"> Allow All </button> 
</td> 

回答

2

WebElement有提交方法。如果您可以获取表单内的webelement,则可以调用webelement.submit()。这是在JAVA中。你应该是具有红宝石相似)的东西

无效提交(

如果当前元素是一个形式,或者在 元素的形式,那么这将被提交到远程服务器。如果这个 导致当前页面改变,那么这个方法将阻塞直到 新页面被加载。抛出:NoSuchElementException - 如果给定的 元素不是表单中

+0

提交怎么样,如果有两个提交表单上!? –

+0

您可以发布该表单的HTML - 至少两个提交按钮的行吗? –

0

我不知道所有的代码的样子,并在其他提交按钮,但如果有2个提交按钮,你可以尝试做

buttons = browser.find_elements_by_css_selector("button[type='submit']")

或类似的东西,这将返回所有的提交按钮。注意elements是函数名称中的复数,也有一个是find_element_by_css_selector(非数字化)。然后,您可以通过使用

buttons[0]

获得想要的按钮,那么你可以通过

buttons[0].click()