Как заставить WebDriverWait искать определенное число - PullRequest
1 голос
/ 14 мая 2019

Я построил Аукционный монитор с селеном, который работал почти безупречно с тех пор, как начал его использовать. Как это работает, он заходит на сайт аукциона недвижимости и отслеживает цену аукциона (довольно просто), и он предупреждает меня по тексту ANY Изменения в цене. Цена, на которую он смотрит, варьируется, потому что это не всегда живой аукцион, на который он смотрит, он также смотрит на цену аукциона, который закончился, чтобы предупредить нас о людях, которые вышли из аукциона, и позволяют нам делать ставки на него. Теперь мне нужен скрипт, чтобы он ждал определенного числа и всего, что под этим номером. Например, если цена, которую я хочу дождаться, составляет 207,000, то скрипт сообщит мне обо всем, что угодно, от 1 207 000, и ничего сверх этой суммы.

В моей голове кажется, что это очень просто реализовать, но ничего не приходит в голову, как это сделать.

Вот часть кода:

propertyprice = browser.find_element_by_css_selector('span.current-bid')
    currentBidText = propertyprice.text
    try:                                
        WebDriverWait(browser, 90000).until_not(
            EC.text_to_be_present_in_element((By.CSS_SELECTOR, 'span.current-bid'), currentBidText)
            )

^ Здесь ожидают изменений.

1 Ответ

0 голосов
/ 14 мая 2019

Используйте цикл «Пока», чтобы проверить непрерывное значение элемента желания и сравнить с базовой ценой предложения. Как только он не совпадет с базовой ценой предложения, он выйдет из цикла.

propertyprice = driver.find_element_by_css_selector('span.current-bid')
currentBidText = propertyprice.text
print(currentBidText)
while(True):
    NextBidPrice = driver.find_element_by_css_selector('span.current-bid').text
    if not(NextBidPrice==currentBidText):
        print(NextBidPrice)
        break
    else:
        print('Awaiting for next bid.....')
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...