in src/nova_act/impl/playwright.py [0:0]
def stop(self) -> None:
"""Stop and detach the Browser"""
if self._context is not None and self._record_video:
for page in self._context.pages:
if page.video:
video_path = page.video.path()
if video_path:
assert self._record_video
assert self._session_logs_directory is not None
page_index = self._context.pages.index(page)
new_path = os.path.join(
self._session_logs_directory,
f"session_video_tab-{page_index}.webm",
)
try:
os.rename(video_path, new_path)
except OSError as e:
_LOGGER.error(f"An Unexpected error occured when renaming {video_path}: {e}")
if self._owns_context and self._context is not None:
self._context.close()
# Stop playwright instance if one was created by us
if self._owns_playwright and self._playwright is not None:
self._playwright.stop()
self._playwright = None
self._context = None
self._session_logs_directory = None