jdholtz / auto-southwest-check-in

A Python script that automatically checks in to your Southwest flight 24 hours beforehand.
GNU General Public License v3.0
455 stars 87 forks source link

Timeout while refreshing headers. Skipping reservation retrieval #313

Open hell001 opened 3 days ago

hell001 commented 3 days ago

Version

Auto-Southwest Check-In v8.0

Browser Version

Version 130.0.6723.70 (Official Build) (64-bit)

Description

Check in failed after previously having used this program a few months ago. Added the reservations to the config, and received the below at the time of reservation, one for each reservation:

Timeout while refreshing headers. Skipping reservation retrieval
Notice: Webdriver time out during reservation retrieval for <NAME>. Skipping reservation retrieval until next interval

Aside from Monitoring 0 accounts and X reservations at the start, the program has given no other output

To Reproduce

  1. Add res to config
  2. Run program and wait for checkin time

Expected Behavior

Successful checkin

Relevant logs and program output

No response

Additional context

No response

ender18g commented 3 days ago

Same issue for me just now.

--verbose --debug-screenshots
2024-10-29 13:28:47 DEBUG MainProcess[log:24]: Initialized the application 2024-10-29 13:28:47 DEBUG MainProcess[main:113]: Auto-Southwest Check-In v8.0 2024-10-29 13:28:47 DEBUG MainProcess[main:71]: Called with 0 arguments 2024-10-29 13:28:47 DEBUG MainProcess[config:143]: Initializing configuration file 2024-10-29 13:28:47 DEBUG MainProcess[config:172]: Reading the configuration file 2024-10-29 13:28:47 DEBUG MainProcess[config:185]: Reading configuration from environment variables 2024-10-29 13:28:47 DEBUG MainProcess[config:120]: Setting notification level to <NotificationLevel.NOTICE: 1> 2024-10-29 13:28:47 DEBUG MainProcess[config:133]: Using 1 notification services 2024-10-29 13:28:47 DEBUG MainProcess[config:162]: Creating configurations for 2 reservations 2024-10-29 13:28:47 INFO MainProcess[main:97]: Monitoring 0 accounts and 2 reservations

2024-10-29 13:28:48 DEBUG Process-1[reservation_monitor:65]: Acquiring lock... 2024-10-29 13:28:48 DEBUG Process-1[reservation_monitor:67]: Lock acquired 2024-10-29 13:28:48 DEBUG Process-1[checkin_scheduler:48]: Refreshing headers for current session 2024-10-29 13:28:48 DEBUG Process-1[webdriver:71]: Taking debug screenshots 2024-10-29 13:28:48 DEBUG Process-1[webdriver:130]: Starting webdriver for current session 2024-10-29 13:28:48 DEBUG Process-2[reservation_monitor:65]: Acquiring lock... 2024-10-29 13:28:51 DEBUG Process-1[webdriver:152]: Using browser version: 130.0.6723.70 2024-10-29 13:28:51 DEBUG Process-1[webdriver:156]: Loading Southwest home page (this may take a moment) 2024-10-29 13:28:59 DEBUG Process-1[webdriver:88]: Waiting for valid headers 2024-10-29 13:28:59 DEBUG Process-1[webdriver:187]: Waiting for headers_set to be set (timeout: 180 seconds) ^[[C2024-10-29 13:32:00 DEBUG Process-1[webdriver:198]: Timeout waiting for the 'headers_set' attribute 2024-10-29 13:32:00 WARNING Process-1[reservation_monitor:92]: Timeout while refreshing headers. Skipping reservation retrieval Notice: Webdriver time out during reservation retrieval for -----------. Skipping reservation retrieval until next interval

2024-10-29 13:32:03 DEBUG Process-1[reservation_monitor:78]: Lock released 2024-10-29 13:32:03 DEBUG Process-2[reservation_monitor:67]: Lock acquired 2024-10-29 13:32:03 DEBUG Process-2[checkin_scheduler:48]: Refreshing headers for current session 2024-10-29 13:32:03 DEBUG Process-2[webdriver:71]: Taking debug screenshots 2024-10-29 13:32:03 DEBUG Process-2[webdriver:130]: Starting webdriver for current session 2024-10-29 13:32:04 DEBUG Process-1[reservation_monitor:151]: Sleeping for 86204 seconds 2024-10-29 13:32:05 DEBUG Process-2[webdriver:152]: Using browser version: 130.0.6723.70 2024-10-29 13:32:05 DEBUG Process-2[webdriver:156]: Loading Southwest home page (this may take a moment) 2024-10-29 13:32:13 DEBUG Process-2[webdriver:88]: Waiting for valid headers 2024-10-29 13:32:13 DEBUG Process-2[webdriver:187]: Waiting for headers_set to be set (timeout: 180 seconds) ^C2024-10-29 13:32:18 INFO MainProcess[main:122]: Ctrl+C pressed. Stopping all check-ins

daddyodeals commented 3 days ago

Same for me this morning.

Timeout while refreshing headers. Skipping reservation retrieval Notice: Webdriver time out during reservation retrieval for . Skipping reservation retrieval until next interval

Timeout while refreshing headers. Skipping reservation retrieval Notice: Webdriver time out during reservation retrieval for . Skipping reservation retrieval until next interval

Timeout while refreshing headers. Skipping reservation retrieval Notice: Webdriver time out during reservation retrieval for . Skipping reservation retrieval until next interval

Timeout while refreshing headers. Skipping reservation retrieval Notice: Webdriver time out during reservation retrieval for . Skipping reservation retrieval until next interval

foolio commented 3 days ago

Same for me.

Previous to today's webdriver timeout, was getting consistent 'too many requests' errors

n0xlf commented 2 days ago

Same issue and I also tried using the account/pw and was unsuccessful (standalone version, updated, Chrome 130.0.6723.91):

2024-10-29 17:35:32 DEBUG Process-1[reservation_monitor:65]: Acquiring lock... 2024-10-29 17:35:32 DEBUG Process-1[reservation_monitor:67]: Lock acquired 2024-10-29 17:35:32 DEBUG Process-1[reservation_monitor:205]: Retrieving reservations for account 2024-10-29 17:35:32 DEBUG Process-1[webdriver:130]: Starting webdriver for current session 2024-10-29 17:35:33 DEBUG Process-1[webdriver:152]: Using browser version: 130.0.6723.91 2024-10-29 17:35:33 DEBUG Process-1[webdriver:156]: Loading Southwest home page (this may take a moment) 2024-10-29 17:35:37 DEBUG Process-1[webdriver:104]: Logging into account to get a list of reservations and valid headers 2024-10-29 17:35:42 DEBUG Process-1[webdriver:187]: Waiting for headers_set to be set (timeout: 180 seconds) 2024-10-29 17:35:43 DEBUG Process-1[webdriver:179]: Login response has been received 2024-10-29 17:35:46 DEBUG Process-1[webdriver:183]: Upcoming trips response has been received 2024-10-29 17:38:42 DEBUG Process-1[webdriver:198]: Timeout waiting for the 'headers_set' attribute 2024-10-29 17:38:42 DEBUG Process-1[reservation_monitor:211]: Timeout while retrieving reservations during login. Skipping reservation retrieval Notice: Webdriver time out during account retrieval for 310253252. Skipping reservation retrieval until next interval 2024-10-29 17:38:42 DEBUG Process-1[reservation_monitor:78]: Lock released 2024-10-29 17:38:42 DEBUG Process-1[reservation_monitor:151]: Sleeping for 86209 seconds

Also tested the dev branch and no luck.

netpappy commented 2 days ago

Same for me this morning and again tonight

2024-10-29 23:02:29 DEBUG Process-1[reservation_monitor:58]: Acquiring lock... 2024-10-29 23:02:29 DEBUG Process-1[reservation_monitor:60]: Lock acquired 2024-10-29 23:02:29 DEBUG Process-1[reservation_monitor:198]: Retrieving reservations for account 2024-10-29 23:02:29 DEBUG Process-1[webdriver:128]: Starting webdriver for current session 2024-10-29 23:02:31 DEBUG Process-1[webdriver:145]: Using browser version: 128.0.6613.113 2024-10-29 23:02:31 DEBUG Process-1[webdriver:149]: Loading Southwest home page (this may take a moment) 2024-10-29 23:02:41 DEBUG Process-1[webdriver:102]: Logging into account to get a list of reservations and valid headers 2024-10-29 23:02:47 DEBUG Process-1[webdriver:180]: Waiting for headers_set to be set (timeout: 180 seconds) 2024-10-29 23:02:50 DEBUG Process-1[webdriver:172]: Login response has been received 2024-10-29 23:02:51 DEBUG Process-1[webdriver:176]: Upcoming trips response has been received 2024-10-29 23:05:47 DEBUG Process-1[webdriver:191]: Timeout waiting for the 'headers_set' attribute 2024-10-29 23:05:47 DEBUG Process-1[reservation_monitor:204]: Timeout while retrieving reservations during login. Skipping reservation retrieval 2024-10-29 23:05:47 DEBUG Process-1[reservation_monitor:71]: Lock released 2024-10-29 23:05:47 DEBUG Process-1[reservation_monitor:144]: Sleeping for 64601 seconds

nathan921 commented 2 days ago

Same issue happing both in docker and on windows. I have 2 accounts in the config and the second one crashes after the first stalls.

2024-10-30 08:50:46 DEBUG MainProcess[log:24]: Initialized the application 2024-10-30 08:50:46 DEBUG MainProcess[main:113]: Auto-Southwest Check-In v8.0 2024-10-30 08:50:46 DEBUG MainProcess[main:71]: Called with 0 arguments 2024-10-30 08:50:46 DEBUG MainProcess[config:132]: Initializing configuration file 2024-10-30 08:50:46 DEBUG MainProcess[config:161]: Reading the configuration file 2024-10-30 08:50:46 DEBUG MainProcess[config:174]: Reading configuration from environment variables 2024-10-30 08:50:46 DEBUG MainProcess[config:60]: Setting check fares to True 2024-10-30 08:50:46 DEBUG MainProcess[config:75]: Setting retrieval interval to 12 hours 2024-10-30 08:50:46 DEBUG MainProcess[config:109]: Setting notification level to <NotificationLevel.NOTICE: 1> 2024-10-30 08:50:46 DEBUG MainProcess[config:122]: Using 1 notification services 2024-10-30 08:50:46 DEBUG MainProcess[config:144]: Creating configurations for 2 accounts 2024-10-30 08:50:46 DEBUG MainProcess[config:151]: Creating configurations for 0 reservations 2024-10-30 08:50:46 INFO MainProcess[main:97]: Monitoring 2 accounts and 0 reservations

2024-10-30 08:50:47 DEBUG Process-2[reservation_monitor:58]: Acquiring lock... 2024-10-30 08:50:47 DEBUG Process-2[reservation_monitor:60]: Lock acquired 2024-10-30 08:50:47 DEBUG Process-2[reservation_monitor:198]: Retrieving reservations for account 2024-10-30 08:50:47 DEBUG Process-2[webdriver:128]: Starting webdriver for current session 2024-10-30 08:50:47 DEBUG Process-1[reservation_monitor:58]: Acquiring lock... 2024-10-30 08:50:48 DEBUG Process-2[webdriver:145]: Using browser version: 130.0.6723.70 2024-10-30 08:50:48 DEBUG Process-2[webdriver:149]: Loading Southwest home page (this may take a moment) 2024-10-30 08:50:51 DEBUG Process-2[webdriver:102]: Logging into account to get a list of reservations and valid headers 2024-10-30 08:50:56 DEBUG Process-2[webdriver:180]: Waiting for headers_set to be set (timeout: 180 seconds) 2024-10-30 08:50:57 DEBUG Process-2[webdriver:172]: Login response has been received 2024-10-30 08:53:56 DEBUG Process-2[webdriver:191]: Timeout waiting for the 'headers_set' attribute 2024-10-30 08:53:56 DEBUG Process-2[reservation_monitor:204]: Timeout while retrieving reservations during login. Skipping reservation retrieval Notice: Webdriver time out during account retrieval for XXXXXXXX. Skipping reservation retrieval until next interval

2024-10-30 08:53:58 DEBUG Process-2[reservation_monitor:71]: Lock released 2024-10-30 08:53:58 DEBUG Process-1[reservation_monitor:60]: Lock acquired 2024-10-30 08:53:58 DEBUG Process-1[reservation_monitor:198]: Retrieving reservations for account 2024-10-30 08:53:58 DEBUG Process-1[webdriver:128]: Starting webdriver for current session 2024-10-30 08:53:58 DEBUG Process-2[reservation_monitor:144]: Sleeping for 43008 seconds 2024-10-30 08:53:59 DEBUG Process-1[webdriver:145]: Using browser version: 130.0.6723.70 2024-10-30 08:53:59 DEBUG Process-1[webdriver:149]: Loading Southwest home page (this may take a moment) Process Process-1: Traceback (most recent call last): File "C:\Users\Nathan\AppData\Local\Programs\Python\Python312\Lib\multiprocessing\process.py", line 314, in _bootstrap self.run() File "C:\Users\Nathan\AppData\Local\Programs\Python\Python312\Lib\multiprocessing\process.py", line 108, in run self._target(*self._args, *self._kwargs) File "C:\Users\Nathan\autosw\lib\reservation_monitor.py", line 44, in monitor self._monitor() File "C:\Users\Nathan\autosw\lib\reservation_monitor.py", line 62, in _monitor should_exit = self._check() ^^^^^^^^^^^^^ File "C:\Users\Nathan\autosw\lib\reservation_monitor.py", line 180, in _check reservations, skip_scheduling = self._get_reservations() ^^^^^^^^^^^^^^^^^^^^^^^^ File "C:\Users\Nathan\autosw\lib\reservation_monitor.py", line 202, in _get_reservations reservations = webdriver.get_reservations(self) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "C:\Users\Nathan\autosw\lib\webdriver.py", line 99, in get_reservations driver = self._get_driver() ^^^^^^^^^^^^^^^^^^ File "C:\Users\Nathan\autosw\lib\webdriver.py", line 152, in _get_driver driver.click("(//div[@Data-QA='placement-link'])[2]") File "C:\Users\Nathan\autosw\autosw\Lib\site-packages\seleniumbase\core\sb_driver.py", line 59, in click page_actions.click(self.driver, args, **kwargs) File "C:\Users\Nathan\autosw\autosw\Lib\site-packages\seleniumbase\fixtures\page_actions.py", line 1534, in click element.click() File "C:\Users\Nathan\autosw\autosw\Lib\site-packages\selenium\webdriver\remote\webelement.py", line 94, in click self._execute(Command.CLICK_ELEMENT) File "C:\Users\Nathan\autosw\autosw\Lib\site-packages\selenium\webdriver\remote\webelement.py", line 395, in _execute return self._parent.execute(command, params) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "C:\Users\Nathan\autosw\autosw\Lib\site-packages\selenium\webdriver\remote\webdriver.py", line 354, in execute self.error_handler.check_response(response) File "C:\Users\Nathan\autosw\autosw\Lib\site-packages\selenium\webdriver\remote\errorhandler.py", line 229, in check_response raise exception_class(message, screen, stacktrace) selenium.common.exceptions.ElementClickInterceptedException: Message: element click intercepted: Element

... is not clickable at point (195, 220). Other element would receive the click: ...

(Session info: chrome=130.0.6723.70) Stacktrace: GetHandleVerifier [0x00007FF67E223AF5+28005] (No symbol) [0x00007FF67E1883F0] (No symbol) [0x00007FF67E02580A] (No symbol) [0x00007FF67E07D6CE] (No symbol) [0x00007FF67E07B16C] (No symbol) [0x00007FF67E078628] (No symbol) [0x00007FF67E07785D] (No symbol) [0x00007FF67E06990E] (No symbol) [0x00007FF67E09BA3A] (No symbol) [0x00007FF67E069246] (No symbol) [0x00007FF67E09BC50] (No symbol) [0x00007FF67E0BB8B3] (No symbol) [0x00007FF67E09B7E3] (No symbol) [0x00007FF67E0675C8] (No symbol) [0x00007FF67E068731] GetHandleVerifier [0x00007FF67E51646D+3118813] GetHandleVerifier [0x00007FF67E566CC0+3448624] GetHandleVerifier [0x00007FF67E55CF3D+3408301] GetHandleVerifier [0x00007FF67E2EA44B+841403] (No symbol) [0x00007FF67E19344F] (No symbol) [0x00007FF67E18F4C4] (No symbol) [0x00007FF67E18F65D] (No symbol) [0x00007FF67E17EBB9] BaseThreadInitThunk [0x00007FFCF084257D+29] RtlUserThreadStart [0x00007FFCF19AAF08+40]

StevenMassaro commented 2 days ago

This change fixes the issue:

diff --git a/lib/webdriver.py b/lib/webdriver.py
--- a/lib/webdriver.py  (revision 98152c0d88c9d012bfc728f3eec05e655fcf7500)
+++ b/lib/webdriver.py  (date 1730311044582)
@@ -20,7 +20,7 @@
 BASE_URL = "https://mobile.southwest.com"
 LOGIN_URL = BASE_URL + "/api/security/v4/security/token"
 TRIPS_URL = BASE_URL + "/api/mobile-misc/v1/mobile-misc/page/upcoming-trips"
-HEADERS_URL = BASE_URL + "/api/chase/v2/chase/offers"
+HEADERS_URL = BASE_URL + "/api/mobile-air-booking/v1/mobile-air-booking/feature/shopping-details"

 # Southwest's code when logging in with the incorrect information
 INVALID_CREDENTIALS_CODE = 400518024
n0xlf commented 2 days ago

Yes it does!

Nice!

daddyodeals commented 2 days ago

+HEADERS_URL = BASE_URL + "/api/mobile-air-booking/v1/mobile-air-booking/feature/shopping-details"

Thank you for this easy fix! Much appreciated!

sephamorr commented 2 days ago

See #314 for a PR to merge this fix.

sevenlayercookie commented 1 day ago

+HEADERS_URL = BASE_URL + "/api/mobile-air-booking/v1/mobile-air-booking/feature/shopping-details"

This worked for me as well.

netpappy commented 1 day ago

+HEADERS_URL = BASE_URL + "/api/mobile-air-booking/v1/mobile-air-booking/feature/shopping-details"

This also worked for me!

jdholtz commented 1 day ago

Thanks for the fix @StevenMassaro. I merged #314 and will release v8.1 with the fix soon.