问题描述
我对 python selenium 很陌生,我正在尝试单击具有以下 html 结构的按钮:
I am quite new to python selenium and I am trying to click on a button which has the following html structure:
<div class="b_div">
<div class="button c_button s_button" onclick="submitForm('mTF')">
<input class="very_small" type="button"></input>
<div class="s_image"></div>
<span>
Search
</span>
</div>
<div class="button c_button s_button" onclick="submitForm('rMTF')" style="margin-bottom: 30px;">
<input class="v_small" type="button"></input>
<span>
Reset
</span>
</div>
</div>
我希望能够同时单击上面的 Search
和 Reset
按钮(显然是单独的).
I would like to be able to click both the Search
and Reset
buttons above (obviously individually).
我已经尝试了几件事,例如:
I have tried a couple of things, for example:
driver.find_element_by_css_selector('.button .c_button .s_button').click()
或者,
driver.find_element_by_name('s_image').click()
或者,
driver.find_element_by_class_name('s_image').click()
但是,我似乎总是以 NoSuchElementException
结束,例如:
but, I seem to always end up with NoSuchElementException
, for example:
selenium.common.exceptions.NoSuchElementException: Message: u'Unable to locate element: {"method":"name","selector":"s_image"}' ;
我想知道是否可以以某种方式使用 HTML 的 onclick 属性来使 selenium 点击?
I am wondering if I can somehow use the onclick attributes of the HTML to make selenium click?
任何可以为我指明正确方向的想法都会很棒.谢谢.
Any thoughts which can point me in the right direction would be great. Thanks.
推荐答案
对于python,使用
For python, use the
from selenium.webdriver import ActionChains
和
ActionChains(browser).click(element).perform()
这篇关于python selenium点击按钮的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持跟版网!