Веб-мониторинг изменений скрипта с селеном - PullRequest
0 голосов
/ 25 марта 2019

Этот скрипт должен вызывать браузер, входить на сайт, переходить на страницу сайта и искать изменения в различных тегах классов. Моя проблема сейчас заключается в том, что он не может извлечь из тега, который я хочу, а также я понял, что он не работает постоянно, означая, как только он обнаруживает изменение, скрипт выключается, и я хочу, чтобы он перезапустился, чтобы продолжить поиск изменения.

Я пробовал несколько разных способов заставить это работать, но ни один, кажется, не работает. Я пришел к выводу, что я написал это неправильно и понятия не имею, что делать.

import time
import requests
from selenium import webdriver
from selenium.webdriver.common.by import By
from selenium.webdriver.support.ui import WebDriverWait
from selenium.webdriver.support import expected_conditions as EC
from selenium.webdriver.support.ui import Select
from selenium.common.exceptions import NoSuchElementException
import ssl
from twilio.rest import Client
from twilio.rest import TwilioRestClient

email = '*****'
password = '*****'

browser = webdriver.Chrome()
browser.get(('http://hubzu.com'))
time.sleep(8)

loginButton = browser.find_element_by_id('loginNewPopup')
loginButton.click()
time.sleep(3)
emailform = browser.find_element_by_id('loginEmailAddress')
emailform.send_keys(email)
passform = browser.find_element_by_id('loginPassword')
passform.send_keys(password)
time.sleep(3)
signInButton = browser.find_element_by_id('gobalSignInSubmit')
signInButton.click()
time.sleep(5)
print('>>> We have logged in using ' +email+', ' +password)

browser.get(('https://www.hubzu.com/property/0007131273067-702-Nw-126th-Ct-Miami-FL-33182'))# Live Auction Bid URL
time.sleep(2)
try:                                   #EVERYTHING ABOVE WORKS SMOOTHLY
    WebDriverWait(browser, 10).until(  # HERE IS WHERE THE PROBLEM IS
    EC.text_to_be_present_in_element((By.CLASS, 'bid-time bid-secs'), r"((?<=\()[0-9]*)")
        )
finally:
    from twilio.rest import Client
    # Your Account SID from twilio.com/console
    account_sid = "*****"
    # Your Auth Token from twilio.com/console
    auth_token  = "******"

    client = Client(account_sid, auth_token)

    message = client.messages.create(
        to="******", 
        from_="******",
        body='Test')

Ошибка:

Traceback (most recent call last):
    File "2_1.py", line 55, in <module>
    EC.text_to_be_present_in_element((By.CLASS_NAME, 'bid-time bid-secs'), r"((? 
    <=\()[0-9]*)")
    File "C:\Program Files (x86)\Python37-32\lib\site- 
    packages\selenium\webdriver\support\wait.py", line 80, in until
    raise TimeoutException(message, screen, stacktrace)
    selenium.common.exceptions.TimeoutException: Message:
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...