diff --git a/.gitignore b/.gitignore index 400df045..98f87691 100644 --- a/.gitignore +++ b/.gitignore @@ -7,3 +7,6 @@ __pycache__ # editor files *.sw* + +# ipynb +.ipynb_checkpoints/ diff --git a/devtools/browser.py b/devtools/browser.py index e80b9d58..63721fb8 100644 --- a/devtools/browser.py +++ b/devtools/browser.py @@ -5,11 +5,13 @@ import sys import subprocess import signal +import tempfile class Browser: def __init__(self, debug=None, path=None, headless=True): self.pipe = Pipe() + self.temp_dir = tempfile.TemporaryDirectory() if not debug: # false o None stderr = subprocess.DEVNULL @@ -28,6 +30,7 @@ def __init__(self, debug=None, path=None, headless=True): new_env = os.environ.copy() new_env["CHROMIUM_PATH"] = path + new_env["USER_DATA_DIR"] = self.temp_dir.name if headless: new_env["HEADLESS"] = "--headless" @@ -74,6 +77,7 @@ def close_browser(self): self.subprocess.terminate() self.subprocess.wait(5) self.subprocess.kill() + self.temp_dir.cleanup() def send_command(self, command, params=None, cb=None): return self.protocol.send_command(self, command, params, cb) diff --git a/devtools/chrome_wrapper.py b/devtools/chrome_wrapper.py index 8700e5c7..5f84f5be 100644 --- a/devtools/chrome_wrapper.py +++ b/devtools/chrome_wrapper.py @@ -26,11 +26,15 @@ else: path = os.environ["CHROMIUM_PATH"] +user_data_dir = os.environ["USER_DATA_DIR"] + cli = [ path, "--remote-debugging-pipe", "--disable-breakpad", "--allow-file-access-from-files", + f"--user-data-dir={user_data_dir}", + "--no-first-run" ] if "HEADLESS" in os.environ: