Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/selenium/4.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
硒+;python:等待样式的更改_Python_Selenium_Webdriver - Fatal编程技术网

硒+;python:等待样式的更改

硒+;python:等待样式的更改,python,selenium,webdriver,Python,Selenium,Webdriver,在页面上,我有一个HTML元素,它在几秒钟(到几分钟)后从以下位置更改: 但结果是: 1嗯。 在23.021s中运行1个测试 嗯 d 它为什么不工作以及如何等待此元素的更改?请参见以下示例。此函数将等待第二个div出现在DOM中 import time ... ... def wait_for_complete_page_load(browser, total_wait=100): try: elem = browser.find_element_by_xpath('//

在页面上,我有一个HTML元素,它在几秒钟(到几分钟)后从以下位置更改:

但结果是:

1嗯。 在23.021s中运行1个测试

嗯 d


它为什么不工作以及如何等待此元素的更改?

请参见以下示例。此函数将等待第二个div出现在DOM中

import time
...
...
def wait_for_complete_page_load(browser, total_wait=100):
    try:
        elem = browser.find_element_by_xpath('//div[contains(@style, "opacity: 0")]')
    except:
        total_wait -= 1
        time.sleep(2)
        if total_wait > 1: wait_till_page_loaded(browser, total_wait)

使用调试器并检查元素的值。属性(“不透明度”)的值\u。。。我怀疑它正在返回一个字符串,但您正在将其与整数1进行比较,而不是与字符串“1”进行比较(您有权:),但现在它导致了错误:“StaleElementReferenceException:Message:缓存中未找到元素-可能页面自查找以来已更改”
<div style="opacity: 0; width: 0%;" id="progressbar-overlay" class="wings-progressbar-overlay"></div>
element = self.check_element(By.ID, "progressbar-overlay", "Progressbar wasn't displayed", tekst)

    for x in range(0, 120):
        if element.value_of_css_property("opacity")==1:
            print element.value_of_css_property("opacity") + " not yet"
        else: 
            print element.value_of_css_property("opacity") + " end"
            break
import time
...
...
def wait_for_complete_page_load(browser, total_wait=100):
    try:
        elem = browser.find_element_by_xpath('//div[contains(@style, "opacity: 0")]')
    except:
        total_wait -= 1
        time.sleep(2)
        if total_wait > 1: wait_till_page_loaded(browser, total_wait)