如何使用selenium webdriver定位ID标识的元素和两个不同页面中的值相同?

时间:2014-08-04 10:47:57

标签: selenium-webdriver

如何使用selenium webdriver定位ID标识的元素,并在两个不同的页面中使用相同的值。

问题可能是加载页面的时间。我给了隐式等待和pageloadtimeout 2分钟。但我们面临同样的问题。

2 个答案:

答案 0 :(得分:0)

您可以等到其他页面中的元素(导航离开当前页面)在单击当前页面中的元素后启用/加载。虽然你有足够的时间等待(需要为这种情况增加),但开发人员需要对其进行优化,因为2分钟的页面加载时间非常长。

答案 1 :(得分:0)

因此,如果您想要找到第二个元素,您可以找到第一个元素,然后导航到另一个页面,然后在尝试查找新元素之前等待staleElementReference。

这是你可以尝试的东西:

element = driver.find_element_by_id('foo') # Or locate the element however you are currently
# Do your navigation stuff here.
while True:
    try:
        element.find_elements_by_tag_name('a')
        time.sleep(5)
    except StaleElementReference:
        break
element = driver.find_element_by_id('foo')