Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Chromedriver 119.0.6045.106 not available #180

Closed
funsneaks opened this issue Nov 6, 2023 · 13 comments
Closed

Chromedriver 119.0.6045.106 not available #180

funsneaks opened this issue Nov 6, 2023 · 13 comments
Labels
bug Something isn't working dependency User has issues with the dependencies

Comments

@funsneaks
Copy link

Version

Auto-Southwest Check-In v7.0

Browser Version

Using browser version: 119.0.6045.106

Description

When I run the script, I see the following error in the log info below

To Reproduce

py southwest.py --verbose

Expected Behavior

No response

Relevant logs and program output

Administrator@user MINGW64 ~/auto-southwest-check-in (master)
$ py southwest.py --verbose
2023-11-06 11:24:02 DEBUG MainProcess[log:23]: Initialized the application
2023-11-06 11:24:02 DEBUG MainProcess[main:112]: Auto-Southwest Check-In v7.0
2023-11-06 11:24:02 DEBUG MainProcess[main:113]: Called with 0 arguments
2023-11-06 11:24:02 DEBUG MainProcess[config:107]: Initializing configuration file
2023-11-06 11:24:02 DEBUG MainProcess[config:135]: Reading the configuration file
2023-11-06 11:24:02 DEBUG MainProcess[config:53]: Setting check fares to True
2023-11-06 11:24:02 DEBUG MainProcess[config:67]: Setting notification level to <NotificationLevel.INFO: 1>
2023-11-06 11:24:02 DEBUG MainProcess[config:80]: Using 1 notification services
2023-11-06 11:24:02 DEBUG MainProcess[config:84]: Setting retrieval interval to 24 hours
2023-11-06 11:24:02 DEBUG MainProcess[config:118]: Creating configurations for 0 accounts
2023-11-06 11:24:02 DEBUG MainProcess[config:125]: Creating configurations for 3 reservations
2023-11-06 11:24:02 DEBUG MainProcess[main:142]: Monitoring 0 accounts and 3 reservations
2023-11-06 11:24:03 DEBUG Process-2[reservation_monitor:60]: Acquiring lock...
2023-11-06 11:24:03 DEBUG Process-2[reservation_monitor:62]: Lock acquired
2023-11-06 11:24:03 DEBUG Process-2[checkin_scheduler:50]: Refreshing headers for current session
2023-11-06 11:24:03 DEBUG Process-2[webdriver:102]: Starting webdriver for current session
2023-11-06 11:24:03 DEBUG Process-1[reservation_monitor:60]: Acquiring lock...
2023-11-06 11:24:03 DEBUG Process-3[reservation_monitor:60]: Acquiring lock...

Warning: uc_driver update needed. Getting it now:
2023-11-06 11:24:05 DEBUG Process-2[webdriver:111]: Using browser version: 119.0.6045.106
Process Process-2:
2023-11-06 11:24:05 DEBUG Process-1[reservation_monitor:62]: Lock acquired
2023-11-06 11:24:05 DEBUG Process-1[checkin_scheduler:50]: Refreshing headers for current session
2023-11-06 11:24:05 DEBUG Process-1[webdriver:102]: Starting webdriver for current session
Traceback (most recent call last):
  File "C:\Users\Administrator\AppData\Local\Programs\Python\Python312\Lib\multiprocessing\process.py", line 314, in _bootstrap
    self.run()
  File "C:\Users\Administrator\AppData\Local\Programs\Python\Python312\Lib\multiprocessing\process.py", line 108, in run
    self._target(*self._args, **self._kwargs)
  File "C:\Users\Administrator\auto-southwest-check-in\lib\reservation_monitor.py", line 42, in monitor
    self._monitor()
  File "C:\Users\Administrator\auto-southwest-check-in\lib\reservation_monitor.py", line 65, in _monitor
    self.checkin_scheduler.refresh_headers()
  File "C:\Users\Administrator\auto-southwest-check-in\lib\checkin_scheduler.py", line 52, in refresh_headers
    webdriver.set_headers()
  File "C:\Users\Administrator\auto-southwest-check-in\lib\webdriver.py", line 63, in set_headers
    driver = self._get_driver()
             ^^^^^^^^^^^^^^^^^^
  File "C:\Users\Administrator\auto-southwest-check-in\lib\webdriver.py", line 113, in _get_driver
    driver.add_cdp_listener("Network.requestWillBeSent", self._headers_listener)
    ^^^^^^^^^^^^^^^^^^^^^^^
AttributeError: 'WebDriver' object has no attribute 'add_cdp_listener'

Additional context

No response

@funsneaks funsneaks added the bug Something isn't working label Nov 6, 2023
@jdholtz
Copy link
Owner

jdholtz commented Nov 6, 2023

This is the same error that someone else is getting too (#176 (comment)). Could you do sbase get chromedriver or sbase get uc_driver and see if you get any issues? It may be because the driver is failing to download.

@funsneaks
Copy link
Author

Thank you for the suggestion. I tried both commands, but I am getting the same error.

@kyledeluxe
Copy link

kyledeluxe commented Nov 6, 2023

Was getting the same issue as him with a fresh install of v7.

I ran some of the commands you provided, it seems to of got the driver, but now its failing to update

C:\Users\Administrator\Desktop\auto-southwest-check-in-7.0>py southwest.py

Warning: uc_driver update needed. Getting it now:
Process Process-1:
Traceback (most recent call last):
File "C:\Users\Administrator\AppData\Local\Programs\Python\Python312\Lib\multiprocessing\process.py", line 314, in _bootstrap
self.run()
File "C:\Users\Administrator\AppData\Local\Programs\Python\Python312\Lib\multiprocessing\process.py", line 108, in run
self._target(*self._args, **self._kwargs)
File "C:\Users\Administrator\Desktop\auto-southwest-check-in-7.0\lib\reservation_monitor.py", line 42, in monitor
self._monitor()
File "C:\Users\Administrator\Desktop\auto-southwest-check-in-7.0\lib\reservation_monitor.py", line 65, in _monitor
self.checkin_scheduler.refresh_headers()
File "C:\Users\Administrator\Desktop\auto-southwest-check-in-7.0\lib\checkin_scheduler.py", line 52, in refresh_headers
webdriver.set_headers()
File "C:\Users\Administrator\Desktop\auto-southwest-check-in-7.0\lib\webdriver.py", line 63, in set_headers
driver = self._get_driver()
^^^^^^^^^^^^^^^^^^
File "C:\Users\Administrator\Desktop\auto-southwest-check-in-7.0\lib\webdriver.py", line 113, in _get_driver
driver.add_cdp_listener("Network.requestWillBeSent", self._headers_listener)
^^^^^^^^^^^^^^^^^^^^^^^
AttributeError: 'WebDriver' object has no attribute 'add_cdp_listener'

@jdholtz
Copy link
Owner

jdholtz commented Nov 6, 2023

I ran some of the commands you provided, it seems to of got the driver, but now its failing to update

Can you try to download the exact driver version associated with your browser version and paste the output you are getting here? The command is sbase get uc_driver 119.0.6045.106 (replace with your browser version).

@dpbraune
Copy link

dpbraune commented Nov 6, 2023

Getting the same error as the others. Here's the output:

119.0.6045.106 is the current version of my chrome browser. Not providing the version number gives a completely different set of errors terminating in a PermissionError.

D:\auto-southwest-check-in>sbase get uc_driver 119.0.6045.106

  • Unable to download driver! Retrying in 3s...

** Unable to download driver! Retrying in 5s...

Traceback (most recent call last):
File "", line 198, in _run_module_as_main
File "", line 88, in run_code
File "F:\Program Files\Python312\Scripts\sbase.exe_main
.py", line 7, in
sys.exit(main())
^^^^^^
File "F:\Program Files\Python312\Lib\site-packages\seleniumbase\console_scripts\run.py", line 1015, in main
sb_install.main()
File "F:\Program Files\Python312\Lib\site-packages\seleniumbase\console_scripts\sb_install.py", line 553, in main
raise Exception("Could not find chromedriver to download!\n")
Exception: Could not find chromedriver to download!

D:\auto-southwest-check-in>sbase get chromedriver 119.0.6045.106

  • Unable to download driver! Retrying in 3s...

** Unable to download driver! Retrying in 5s...

Traceback (most recent call last):
File "", line 198, in _run_module_as_main
File "", line 88, in run_code
File "F:\Program Files\Python312\Scripts\sbase.exe_main
.py", line 7, in
sys.exit(main())
^^^^^^
File "F:\Program Files\Python312\Lib\site-packages\seleniumbase\console_scripts\run.py", line 1015, in main
sb_install.main()
File "F:\Program Files\Python312\Lib\site-packages\seleniumbase\console_scripts\sb_install.py", line 553, in main
raise Exception("Could not find chromedriver to download!\n")
Exception: Could not find chromedriver to download!

@dpbraune
Copy link

dpbraune commented Nov 6, 2023

Gave my login account full privileges in the seleniumbase\drivers folder.
Was able to down the 105 uc and chrome drivers and the latest uc and chrome beta driver but not 106.
The app still fails because it is looking for the uc driver and fails to load.

@jdholtz
Copy link
Owner

jdholtz commented Nov 6, 2023

Ah, the reason is because Chromedriver version 119.0.6045.106 is not out yet. I'm not sure why there is a 106, but that appears to only be on Windows. For now, the solution is to either use a Docker container or downgrade to .105.

It also should work if you comment out line 106 of lib/webdriver.py so it downloads the latest Chromedriver version available.

@dpbraune
Copy link

dpbraune commented Nov 6, 2023

That works.

@jdholtz jdholtz changed the title uc_driver error on v7.0 Chromedriver 119.0.6045.106 not available Nov 6, 2023
@jdholtz jdholtz added the dependency User has issues with the dependencies label Nov 6, 2023
@funsneaks
Copy link
Author

Yup, downgrading to an older version of Chrome worked for me too. Thanks for the great support.

@jdholtz
Copy link
Owner

jdholtz commented Nov 7, 2023

I’ve been discussing this issue with the SeleniumBase maintainer and he made a suggestion that should work, but there’s currently a bug in the implementation that will be fixed soon. Once that is fixed, I will test it on this script and hopefully include it as part of the next release.

jdholtz added a commit that referenced this issue Nov 9, 2023
Fixes #180

Directly matching the browser version appeared problematic when the
latest browser version did not have a matching driver version. Now, the
latest version is installed, while still ensuring there is the same
major version (e.g. browser v117.* and driver v117.*).

To not download the chromedriver in Docker images (the driver download
is very finicky with Alpine Linux), an environment variable in the
Docker image is set and read in the script to keep the downloaded
chromedriver, as we want that to be set up in the image, not the script.
@jdholtz
Copy link
Owner

jdholtz commented Nov 9, 2023

This is fixed in the latest commit of the develop branch. To apply the changes locally, you can run git pull && git checkout develop && pip install -r requirements.txt.

Now, the exact driver version isn't matched with the browser version. Rather, the latest available version of the driver (while still keeping the same major version such as 119) is installed.

@jdholtz jdholtz closed this as completed Nov 9, 2023
@funsneaks
Copy link
Author

funsneaks commented Nov 9, 2023

I think the command should be git pull && git checkout develop && pip install -r requirements.txt

Edit: the issue is fully fixed in v7.1 so no need to move to the develop branch anymore

@jdholtz
Copy link
Owner

jdholtz commented Nov 9, 2023

I think the command should be git pull && git checkout develop && pip install -r requirements.txt

Fixed. Thanks

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
bug Something isn't working dependency User has issues with the dependencies
Projects
None yet
Development

No branches or pull requests

4 participants