无法单击“关闭”按钮

时间:2014-04-19 08:51:00

标签: python selenium selenium-webdriver webdriver

<div class="ui-dialog-buttonpane ui-widget-content ui-helper-clearfix">    
    <div class="ui-dialog-buttonset">
        <button class="ui-button ui-widget ui-state-default ui-corner-all ui-button-text-only" type="button" role="button" aria-disabled="false">
            <span class="ui-button-text">    
                Close    
            </span>
        </button>
    </div>    
</div>

browser.find_element_by_link_text('Close').click()

这个按钮是什么?

1 个答案:

答案 0 :(得分:1)

您的“关闭”按钮不是<span>的链接,因此请勿使用find_element_by_link_text

你得到了什么例外?我假设你有一个'NoSuchElementException',然后没有看到更多的HTML,我不能给你最好的定位器,因为你可能有更多的跨度与文本Close,凌乱的空格,或许多其他具有相同类名的跨度ui-button

但是请尝试这个(假设你只有一个关闭按钮没有杂乱的空格):

browser.find_element_by_xpath(".//span[text()='Close']").click()

编辑:鉴于网站为http://earthexplorer.usgs.gov/,问题是您有更多“关闭”按钮,这些按钮不可见,因此您需要更好的XPath。

browser.find_element_by_xpath(".//*[@id='notificationArea']/..//span[text()='Close']").click()