Я пытаюсь войти в свою учетную запись, используя Selenium с python. Когда я пишу этот код без объекта, он работает без проблем, но когда я начинаю реализовывать класс, я получаю сообщение об ошибке:
name 'driver' not defined
Это «странно, потому что перед тем, как я получаю ошибку, драйвер уже вызывается 1 раз.
Код выглядит следующим образом:
class my_bot:
def __init__(self):
self.driver = webdriver.Safari()
self.driver.get('https://website.com')
def login(self, email, password):
self.email = email
self.password = password
wait = WebDriverWait(self.driver, 10)
fb_btn = wait.until(EC.element_to_be_clickable((By.XPATH, '//*[@id="modal-manager"]/div/div/div/div/div[3]/span/div[2]/button')))
self.driver.execute_script("arguments[0].click()", fb_btn)
sleep(3)
#switch the window
base_window = self.driver.window_handles[0]
self.driver.switch_to_window(driver.window_handles[1])
Я получаю сообщение об ошибке в последней строке, даже если вызов 'driver' уже произошел ранее.
Кто-нибудь знает, почему это не работает?