Или посмотреть, как это сделано в тестовых фреймворках вроде селенида.
Спойлер: отдельная функция или декоратор, которая получает целевой элемент и условие, и внутри себя делает минимальный слип/жёсткий вэйт до тех пор, пока условие не будет выполнено.