from selenium import webdriver from selenium.webdriver.common.keys import Keys from selenium.webdriver.common.by import By from selenium.webdriver.support.ui import WebDriverWait from selenium.webdriver.support import expected_conditions as ES import time class MetrologWebTest(): USER = 'user' PASWORD = 'uchetmo' def __init__(self): self.driver = webdriver.Firefox() def login(self, ip: str) -> bool: self.driver.get('http://' + ip) time.sleep(1) self.driver.find_element(By.ID, 'login').send_keys(self.USER) self.driver.find_element(By.ID, 'pass').send_keys(self.PASWORD) self.driver.find_element(By.CLASS_NAME, 'btn.btn-primary').click() time.sleep(1) return True if self.driver.title == "Состояние модема" else False def test_page_click(self): while True: time.sleep(1) nav = self.driver.find_element(By.XPATH, "//ul[@id='nav']/li[2]/a").click() time.sleep(1) nav = self.driver.find_element(By.XPATH, "//ul[@id='nav']/li[3]/a").click() time.sleep(1) nav = self.driver.find_element(By.XPATH, "//ul[@id='nav']/li[1]/a").click() # element = WebDriverWait(self.driver, 10).until(ES.element_to_be_clickable(('link text', 'settings.html'))) # element.click() my_test = MetrologWebTest() if my_test.login('192.168.31.230') == True: my_test.test_page_click()