硒+;python:等待样式的更改
在页面上,我有一个HTML元素,它在几秒钟(到几分钟)后从以下位置更改: 但结果是: 1嗯。 在23.021s中运行1个测试 嗯 d硒+;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('//
它为什么不工作以及如何等待此元素的更改?请参见以下示例。此函数将等待第二个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)