File tree Expand file tree Collapse file tree 2 files changed +17
-1
lines changed Expand file tree Collapse file tree 2 files changed +17
-1
lines changed Original file line number Diff line number Diff line change 1+ from __future__ import annotations
2+
3+ import atexit
14import base64
25import functools
36import glob
2528from selenium .webdriver .remote .webelement import WebElement
2629from selenium .webdriver .support .wait import WebDriverWait , TimeoutException , NoSuchElementException
2730from selenium .webdriver .support import expected_conditions as EC
31+ from weakref import ReferenceType , ref
2832
2933from . import config , cv2find
3034from .browsers import BROWSER_CONFIGS , Browser , PageLoadStrategy
3943logger = logging .getLogger (__name__ )
4044
4145
46+ def _cleanup (bot : ReferenceType [WebBot ]):
47+ if bot () is not None :
48+ try :
49+ bot ().stop_browser ()
50+ except Exception :
51+ pass
52+
53+
4254class WebBot (BaseBot ):
4355 KEYS = Keys
4456 DEFAULT_DIMENSIONS = (1600 , 900 )
@@ -77,6 +89,8 @@ def __init__(self, headless=False):
7789
7890 self ._download_folder_path = os .getcwd ()
7991
92+ atexit .register (_cleanup , ref (self ))
93+
8094 def __enter__ (self ):
8195 pass
8296
Original file line number Diff line number Diff line change 77import typing
88import platform
99
10+ from webdriver_manager .core .driver_cache import DriverCacheManager
1011from botcity .web import WebBot , Browser , By , browsers
1112from webdriver_manager .chrome import ChromeDriverManager
1213from webdriver_manager .firefox import GeckoDriverManager
@@ -97,7 +98,8 @@ def download_driver(request):
9798 folder_driver = tempfile .mkdtemp ()
9899 browser = request .config .getoption ("--browser" ) or Browser .CHROME
99100 manager = factory_driver_manager (browser = browser )
100- installed_driver = manager (path = folder_driver ).install ()
101+ cache_manager = DriverCacheManager (root_dir = folder_driver )
102+ installed_driver = manager (cache_manager = cache_manager ).install ()
101103 yield installed_driver
102104 shutil .rmtree (folder_driver )
103105
You can’t perform that action at this time.
0 commit comments