The feature to log a user in to refresh reservations appears to be broken. I noticed I hadn't gotten any notifications in a while and found the attached error logs. I also tried the develop docker image, but it gives a different error (too many login attempts).
I spent a little while reviewing the selenium code, but everything looked reasonable to me. This has been broken for me for a little more than a week so I do not think it is transient.
To Reproduce
Create a config with at least one user's login in it, start script
Expected Behavior
Login to succeed and reservations to be refreshed
Relevant logs and program output
2024-01-31 00:46:58 Process Process-3:
2024-01-31 00:46:58 Traceback (most recent call last):
2024-01-31 00:46:58 File "/app/lib/webdriver.py", line 184, in _click_login_button
2024-01-31 00:46:58 seleniumbase_actions.wait_for_element_not_visible(driver, login_button, timeout=5)
2024-01-31 00:46:58 File "/usr/local/lib/python3.12/site-packages/seleniumbase/fixtures/page_actions.py", line 1030, in wait_for_element_not_visible
2024-01-31 00:46:58 timeout_exception(Exception, message)
2024-01-31 00:46:58 File "/usr/local/lib/python3.12/site-packages/seleniumbase/fixtures/page_actions.py", line 266, in timeout_exception
2024-01-31 00:46:58 raise exc(msg)
2024-01-31 00:46:58 Exception: Element {button#login-btn} was still visible after 5 seconds!
2024-01-31 00:46:58
2024-01-31 00:46:58 During handling of the above exception, another exception occurred:
2024-01-31 00:46:58
2024-01-31 00:46:58 Traceback (most recent call last):
2024-01-31 00:46:58 File "/usr/local/lib/python3.12/multiprocessing/process.py", line 314, in _bootstrap
2024-01-31 00:46:58 self.run()
2024-01-31 00:46:58 File "/usr/local/lib/python3.12/multiprocessing/process.py", line 108, in run
2024-01-31 00:46:58 self._target(*self._args, **self._kwargs)
2024-01-31 00:46:58 File "/app/lib/reservation_monitor.py", line 42, in monitor
2024-01-31 00:46:58 self._monitor()
2024-01-31 00:46:58 File "/app/lib/reservation_monitor.py", line 157, in _monitor
2024-01-31 00:46:58 reservations, skip_scheduling = self._get_reservations()
2024-01-31 00:46:58 ^^^^^^^^^^^^^^^^^^^^^^^^
2024-01-31 00:46:58 File "/app/lib/reservation_monitor.py", line 182, in _get_reservations
2024-01-31 00:46:58 reservations = webdriver.get_reservations(self)
2024-01-31 00:46:58 ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
2024-01-31 00:46:58 File "/app/lib/webdriver.py", line 93, in get_reservations
2024-01-31 00:46:58 self._wait_for_login(driver, account_monitor)
2024-01-31 00:46:58 File "/app/lib/webdriver.py", line 163, in _wait_for_login
2024-01-31 00:46:58 self._click_login_button(driver)
2024-01-31 00:46:58 File "/app/lib/webdriver.py", line 187, in _click_login_button
2024-01-31 00:46:58 driver.click(login_button)
2024-01-31 00:46:58 File "/usr/local/lib/python3.12/site-packages/seleniumbase/core/sb_driver.py", line 54, in click
2024-01-31 00:46:58 page_actions.click(self.driver, *args, **kwargs)
2024-01-31 00:46:58 File "/usr/local/lib/python3.12/site-packages/seleniumbase/fixtures/page_actions.py", line 1526, in click
2024-01-31 00:46:58 element.click()
2024-01-31 00:46:58 File "/usr/local/lib/python3.12/site-packages/selenium/webdriver/remote/webelement.py", line 93, in click
2024-01-31 00:46:58 self._execute(Command.CLICK_ELEMENT)
2024-01-31 00:46:58 File "/usr/local/lib/python3.12/site-packages/selenium/webdriver/remote/webelement.py", line 394, in _execute
2024-01-31 00:46:58 return self._parent.execute(command, params)
2024-01-31 00:46:58 ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
2024-01-31 00:46:58 File "/usr/local/lib/python3.12/site-packages/selenium/webdriver/remote/webdriver.py", line 347, in execute
2024-01-31 00:46:58 self.error_handler.check_response(response)
2024-01-31 00:46:58 File "/usr/local/lib/python3.12/site-packages/selenium/webdriver/remote/errorhandler.py", line 229, in check_response
2024-01-31 00:46:58 raise exception_class(message, screen, stacktrace)
2024-01-31 00:46:58 selenium.common.exceptions.ElementClickInterceptedException: Message: element click intercepted: Element <button class="mt4 button button--fluid larger button--yellow" type="submit" id="login-btn" role="submit">...</button> is not clickable at point (712, 311). Other element would receive the click: <div class="backdrop visible active"></div>
2024-01-31 00:46:58 (Session info: chrome=117.0.5938.62)
2024-01-31 00:46:58
2024-01-31 00:47:11 Process Process-7:
2024-01-31 00:47:11 Traceback (most recent call last):
2024-01-31 00:47:11 File "/app/lib/webdriver.py", line 184, in _click_login_button
2024-01-31 00:47:11 seleniumbase_actions.wait_for_element_not_visible(driver, login_button, timeout=5)
2024-01-31 00:47:11 File "/usr/local/lib/python3.12/site-packages/seleniumbase/fixtures/page_actions.py", line 1030, in wait_for_element_not_visible
2024-01-31 00:47:11 timeout_exception(Exception, message)
2024-01-31 00:47:11 File "/usr/local/lib/python3.12/site-packages/seleniumbase/fixtures/page_actions.py", line 266, in timeout_exception
2024-01-31 00:47:11 raise exc(msg)
2024-01-31 00:47:11 Exception: Element {button#login-btn} was still visible after 5 seconds!
2024-01-31 00:47:11
2024-01-31 00:47:11 During handling of the above exception, another exception occurred:
2024-01-31 00:47:11
2024-01-31 00:47:11 Traceback (most recent call last):
2024-01-31 00:47:11 File "/usr/local/lib/python3.12/multiprocessing/process.py", line 314, in _bootstrap
2024-01-31 00:47:11 self.run()
2024-01-31 00:47:11 File "/usr/local/lib/python3.12/multiprocessing/process.py", line 108, in run
2024-01-31 00:47:11 self._target(*self._args, **self._kwargs)
2024-01-31 00:47:11 File "/app/lib/reservation_monitor.py", line 42, in monitor
2024-01-31 00:47:11 self._monitor()
2024-01-31 00:47:11 File "/app/lib/reservation_monitor.py", line 157, in _monitor
2024-01-31 00:47:11 reservations, skip_scheduling = self._get_reservations()
2024-01-31 00:47:11 ^^^^^^^^^^^^^^^^^^^^^^^^
2024-01-31 00:47:11 File "/app/lib/reservation_monitor.py", line 182, in _get_reservations
2024-01-31 00:47:11 reservations = webdriver.get_reservations(self)
2024-01-31 00:47:11 ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
2024-01-31 00:47:11 File "/app/lib/webdriver.py", line 93, in get_reservations
2024-01-31 00:47:11 self._wait_for_login(driver, account_monitor)
2024-01-31 00:47:11 File "/app/lib/webdriver.py", line 163, in _wait_for_login
2024-01-31 00:47:11 self._click_login_button(driver)
2024-01-31 00:47:11 File "/app/lib/webdriver.py", line 187, in _click_login_button
2024-01-31 00:47:11 driver.click(login_button)
2024-01-31 00:47:11 File "/usr/local/lib/python3.12/site-packages/seleniumbase/core/sb_driver.py", line 54, in click
2024-01-31 00:47:11 page_actions.click(self.driver, *args, **kwargs)
2024-01-31 00:47:11 File "/usr/local/lib/python3.12/site-packages/seleniumbase/fixtures/page_actions.py", line 1526, in click
2024-01-31 00:47:11 element.click()
2024-01-31 00:47:11 File "/usr/local/lib/python3.12/site-packages/selenium/webdriver/remote/webelement.py", line 93, in click
2024-01-31 00:47:11 self._execute(Command.CLICK_ELEMENT)
2024-01-31 00:47:11 File "/usr/local/lib/python3.12/site-packages/selenium/webdriver/remote/webelement.py", line 394, in _execute
2024-01-31 00:47:11 return self._parent.execute(command, params)
2024-01-31 00:47:11 ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
2024-01-31 00:47:11 File "/usr/local/lib/python3.12/site-packages/selenium/webdriver/remote/webdriver.py", line 347, in execute
2024-01-31 00:47:11 self.error_handler.check_response(response)
2024-01-31 00:47:11 File "/usr/local/lib/python3.12/site-packages/selenium/webdriver/remote/errorhandler.py", line 229, in check_response
2024-01-31 00:47:11 raise exception_class(message, screen, stacktrace)
2024-01-31 00:47:11 selenium.common.exceptions.ElementClickInterceptedException: Message: element click intercepted: Element <button class="mt4 button button--fluid larger button--yellow" type="submit" id="login-btn" role="submit">...</button> is not clickable at point (712, 311). Other element would receive the click: <div class="backdrop visible active"></div>
2024-01-31 00:47:11 (Session info: chrome=117.0.5938.62)
2024-01-31 00:47:11
2024-01-31 15:15:40 Process Process-1:
2024-01-31 15:15:40 Traceback (most recent call last):
2024-01-31 15:15:40 File "/app/lib/webdriver.py", line 184, in _click_login_button
2024-01-31 15:15:40 seleniumbase_actions.wait_for_element_not_visible(driver, login_button, timeout=5)
2024-01-31 15:15:40 File "/usr/local/lib/python3.12/site-packages/seleniumbase/fixtures/page_actions.py", line 1030, in wait_for_element_not_visible
2024-01-31 15:15:40 timeout_exception(Exception, message)
2024-01-31 15:15:40 File "/usr/local/lib/python3.12/site-packages/seleniumbase/fixtures/page_actions.py", line 266, in timeout_exception
2024-01-31 15:15:40 raise exc(msg)
2024-01-31 15:15:40 Exception: Element {button#login-btn} was still visible after 5 seconds!
2024-01-31 15:15:40
2024-01-31 15:15:40 During handling of the above exception, another exception occurred:
2024-01-31 15:15:40
2024-01-31 15:15:40 Traceback (most recent call last):
2024-01-31 15:15:40 File "/usr/local/lib/python3.12/multiprocessing/process.py", line 314, in _bootstrap
2024-01-31 15:15:40 self.run()
2024-01-31 15:15:40 File "/usr/local/lib/python3.12/multiprocessing/process.py", line 108, in run
2024-01-31 15:15:40 self._target(*self._args, **self._kwargs)
2024-01-31 15:15:40 File "/app/lib/reservation_monitor.py", line 42, in monitor
2024-01-31 15:15:40 self._monitor()
2024-01-31 15:15:40 File "/app/lib/reservation_monitor.py", line 157, in _monitor
2024-01-31 15:15:40 reservations, skip_scheduling = self._get_reservations()
2024-01-31 15:15:40 ^^^^^^^^^^^^^^^^^^^^^^^^
2024-01-31 15:15:40 File "/app/lib/reservation_monitor.py", line 182, in _get_reservations
2024-01-31 15:15:40 reservations = webdriver.get_reservations(self)
2024-01-31 15:15:40 ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
2024-01-31 15:15:40 File "/app/lib/webdriver.py", line 93, in get_reservations
2024-01-31 15:15:40 self._wait_for_login(driver, account_monitor)
2024-01-31 15:15:40 File "/app/lib/webdriver.py", line 163, in _wait_for_login
2024-01-31 15:15:40 self._click_login_button(driver)
2024-01-31 15:15:40 File "/app/lib/webdriver.py", line 187, in _click_login_button
2024-01-31 15:15:40 driver.click(login_button)
2024-01-31 15:15:40 File "/usr/local/lib/python3.12/site-packages/seleniumbase/core/sb_driver.py", line 54, in click
2024-01-31 15:15:40 page_actions.click(self.driver, *args, **kwargs)
2024-01-31 15:15:40 File "/usr/local/lib/python3.12/site-packages/seleniumbase/fixtures/page_actions.py", line 1526, in click
2024-01-31 15:15:40 element.click()
2024-01-31 15:15:40 File "/usr/local/lib/python3.12/site-packages/selenium/webdriver/remote/webelement.py", line 93, in click
2024-01-31 15:15:40 self._execute(Command.CLICK_ELEMENT)
2024-01-31 15:15:40 File "/usr/local/lib/python3.12/site-packages/selenium/webdriver/remote/webelement.py", line 394, in _execute
2024-01-31 15:15:40 return self._parent.execute(command, params)
2024-01-31 15:15:40 ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
2024-01-31 15:15:40 File "/usr/local/lib/python3.12/site-packages/selenium/webdriver/remote/webdriver.py", line 347, in execute
2024-01-31 15:15:40 self.error_handler.check_response(response)
2024-01-31 15:15:40 File "/usr/local/lib/python3.12/site-packages/selenium/webdriver/remote/errorhandler.py", line 229, in check_response
2024-01-31 15:15:40 raise exception_class(message, screen, stacktrace)
2024-01-31 15:15:40 selenium.common.exceptions.ElementClickInterceptedException: Message: element click intercepted: Element <button class="mt4 button button--fluid larger button--yellow" type="submit" id="login-btn" role="submit">...</button> is not clickable at point (712, 311). Other element would receive the click: <div class="backdrop visible active"></div>
2024-01-31 15:15:40 (Session info: chrome=117.0.5938.62)
2024-01-31 15:15:40
The traceback is fixed in the develop image already (so it throws the correct error). The underlying error is a 429, which is already being tracked in #201.
Version
7.1
Browser Version
117.0.5938.62
Description
The feature to log a user in to refresh reservations appears to be broken. I noticed I hadn't gotten any notifications in a while and found the attached error logs. I also tried the develop docker image, but it gives a different error (too many login attempts).
I spent a little while reviewing the selenium code, but everything looked reasonable to me. This has been broken for me for a little more than a week so I do not think it is transient.
To Reproduce
Create a config with at least one user's login in it, start script
Expected Behavior
Login to succeed and reservations to be refreshed
Relevant logs and program output
Additional context
No response