0

我正在尝试使用 XPATH 单击两个不同的部分。它适用于第一个链接,但会引发错误消息

ElementReferenceException: Message: u'Element not found in the cache - 也许页面在被查找后已经改变

    driver.find_element_by_id("twotabsearchtextbox").send_keys("watches")
    driver.find_element_by_css_selector("input.nav-submit-input").click()
    driver.find_element_by_css_selector("ul.refinementNodeChildren > li > a >span.childRefinementLink").click()
    driver.find_element_by_xpath("//ul[@id='ref_199497031']/li[4]/a/span[text()='Chronograph']").click()
    driver.find_element_by_xpath("//ul[@id='ref_199493031']/li[2]/a/span[text()=\"Men's\"]").click()

在上面的代码中

该程序通过 XPATH "Chronograph" 找到第一个元素工作正常,但第二个元素 "Men's" 不起作用..

如果我交换最后两行..

driver.find_element_by_xpath("//ul[@id='ref_199493031']/li[2]/a/span[text()=\"Men's\"]").click()
driver.find_element_by_xpath("//ul[@id='ref_199497031']/li[4]/a/span[text()='Chronograph']").click()

在这种情况下,XPATH“男士”的第一个元素工作正常,但第二个“计时码表”不起作用

我不确定它是否没有退出以前的 xpath 来找到新的!有没有办法退出 XPATH 以便我可以在页面中找到其他元素?

4

0 回答 0