【问题标题】:Mouse the focus to an object using selenium python使用 selenium python 将焦点移到对象上
【发布时间】:2012-11-06 12:19:05
【问题描述】:

我在 Ubuntu Linux 上使用 selenium RC 和 python 2.7 使网站自动化。这是我需要做的:

访问网站http://borro.com
使用 key down native 命令向下滚动到页面底部 我需要将鼠标悬停在 g +1 上 阅读工具提示
单击工具提示中显示的名称。

我遇到的问题是——我需要鼠标物理移动到那里,等待 2 秒,然后阅读工具提示并单击名称

鼠标没有物理移动到那里,我认为焦点丢失了,它说找不到元素 xpath。

【问题讨论】:

    标签: python selenium selenium-rc xpath


    【解决方案1】:

    我们通过向元素发送一个空白键以使其获得焦点,解决了很多焦点问题。在这种情况下,您可能希望在工具提示出现时立即将其发送到工具提示。我熟悉 webdriver 但不熟悉 RC,但 RC 应该也有类似 send_key(element_xpath, " ") 的东西。

    要获取工具提示的 xpath,您可以使用 firebug,并在控制台中使用类似

    $x("//*[contains(text(), 'Publicly recommend this as')]") 
    

    确保找到这个元素并且 xpath 是正确的。我还建议不要使用通配符,所以一旦找到工具提示的 xpath,请尝试将 * 替换为实际的元素类型。

    【讨论】:

    • 感谢您的建议。仅作记录:我设法通过在 python 代码中执行 button.click() 而不是 form.submit() 来解决焦点问题(其中 buttonformWebElement 实例)。
    【解决方案2】:

    按钮 Xpath 和悬停在按钮 xpath 上如下所示

       Actions builder = new Actions(driver);
       WebElement tagElement = driver.findElement(By.id("button"));
       builder.moveToElement(tagElement).build().perform();
    
             /html/body/div/div/table/tbody/tr/td/div
    

    试试:

              selenium.mouseOver("mylocator");
    

    【讨论】:

    • Ankit,Thanls。但是我使用的是 selenium RC 而不是 webdriver。您能否建议使用 selenium RC 的解决方案?
    猜你喜欢
    • 1970-01-01
    • 2019-01-10
    • 1970-01-01
    • 1970-01-01
    • 2019-10-12
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2017-07-03
    相关资源
    最近更新 更多