@@ -1369,14 +1369,23 @@ def SB(
1369
1369
"%s%s%s%s%s"
1370
1370
% (c1 , left_space , end_text , right_space , cr )
1371
1371
)
1372
- if undetectable and hasattr (sb , "_drivers_browser_map" ):
1372
+ python3_12_or_newer = (sys .version_info >= (3 , 12 ))
1373
+ if undetectable :
1373
1374
import asyncio
1374
- for driver in sb ._drivers_browser_map .keys ():
1375
- if hasattr (driver , "cdp" ) and driver .cdp :
1376
- asyncio .set_event_loop (driver .cdp .loop )
1377
- tasks = [tab .aclose () for tab in driver .cdp .get_tabs ()]
1378
- tasks .append (driver .cdp .driver .connection .aclose ())
1379
- driver .cdp .loop .run_until_complete (asyncio .gather (* tasks ))
1375
+ if not python3_12_or_newer and hasattr (sb_config , "_cdp_aclose" ):
1376
+ with suppress (Exception ):
1377
+ loop = asyncio .get_event_loop ()
1378
+ asyncio .set_event_loop (loop )
1379
+ loop .run_until_complete (sb_config ._cdp_aclose ())
1380
+ if python3_12_or_newer and hasattr (sb , "_drivers_browser_map" ):
1381
+ for driver in sb ._drivers_browser_map .keys ():
1382
+ if hasattr (driver , "cdp" ) and driver .cdp :
1383
+ asyncio .set_event_loop (driver .cdp .loop )
1384
+ tasks = [tab .aclose () for tab in driver .cdp .get_tabs ()]
1385
+ tasks .append (driver .cdp .driver .connection .aclose ())
1386
+ driver .cdp .loop .run_until_complete (
1387
+ asyncio .gather (* tasks )
1388
+ )
1380
1389
driver .cdp .loop .close ()
1381
1390
gc .collect ()
1382
1391
if test and test_name and not test_passed and raise_test_failure :
0 commit comments