Убедитесь, что путь к URL-адресу сам по себе не обнаружит проблему с загрузкой изображения.Если изображение недоступно или изображение отсутствует на сервере, это не приведет к ошибке в этом случае.
Если это тег изображения, мы можем проверить его высоту, чтобы проверить, загружен он или нет.Поскольку это фоновое изображение, мы также не можем использовать этот критерий здесь.
Но используя javascript, вы можете проверить, загружает ли URL-адрес изображения изображение или нет.Это даст вам дополнительное подтверждение того, что ваше изображение загружено.
class image_loaded(object):
javascript= """var image = document.createElement('img');
image.src = getBgUrl(document.getElementById('test-bg'));
image.onload = function () {
return true
}; ."""
def __init__(self, locator):
self.url= url
def __call__(self, driver):
return driver.execute_async_script(javascript,)
wait = WebDriverWait(driver, 60)
# get extract the image url from the style attribute with string manipulation
element = wait.until(image_loaded("the image url present in background"))