archivebox.personas.importersο
Shared persona browser discovery/import helpers.
These helpers are used by both the CLI and the Django admin so Persona import behavior stays consistent regardless of where it is triggered from.
Module Contentsο
Classesο
Functionsο
Get the default Chrome user data directory for the current platform. |
|
Get the default Brave user data directory for the current platform. |
|
Get the default Edge user data directory for the current platform. |
|
Validate persona name to prevent path traversal. |
|
Dataο
APIο
- archivebox.personas.importers.BROWSER_PROFILE_DIR_NAMES[source]ο
(βDefaultβ, βProfile β, βGuest Profileβ)
- archivebox.personas.importers.VOLATILE_PROFILE_COPY_PATTERNS[source]ο
(βCacheβ, βCode Cacheβ, βGPUCacheβ, βShaderCacheβ, βService Workerβ, βGCM Storeβ, β*.logβ, βCrashpadβ¦
- archivebox.personas.importers.PERSONA_PROFILE_DIR_CANDIDATES[source]ο
(βchrome_profileβ, βchrome_user_dataβ)
- class archivebox.personas.importers.PersonaImportSource[source]ο
-
- classmethod from_choice_value(value: str) archivebox.personas.importers.PersonaImportSource[source]ο
- archivebox.personas.importers.get_chrome_user_data_dir() pathlib.Path | None[source]ο
Get the default Chrome user data directory for the current platform.
- archivebox.personas.importers.get_brave_user_data_dir() pathlib.Path | None[source]ο
Get the default Brave user data directory for the current platform.
- archivebox.personas.importers.get_edge_user_data_dir() pathlib.Path | None[source]ο
Get the default Edge user data directory for the current platform.
- archivebox.personas.importers.NETSCAPE_COOKIE_HEADER[source]ο
[β# Netscape HTTP Cookie Fileβ, β# https://curl.se/docs/http-cookies.htmlβ, β# This file was generatβ¦
- archivebox.personas.importers.validate_persona_name(name: str) tuple[bool, str][source]ο
Validate persona name to prevent path traversal.
- archivebox.personas.importers.discover_local_browser_profiles() list[archivebox.personas.importers.PersonaImportSource][source]ο
- archivebox.personas.importers.discover_persona_template_profiles(personas_dir: pathlib.Path | None = None) list[archivebox.personas.importers.PersonaImportSource][source]ο
- archivebox.personas.importers.resolve_browser_import_source(browser: str, profile_dir: str | None = None) archivebox.personas.importers.PersonaImportSource[source]ο
- archivebox.personas.importers.resolve_browser_profile_source(browser: str, user_data_dir: pathlib.Path, profile_dir: str, source_name: str | None = None, browser_binary: str | None = None) archivebox.personas.importers.PersonaImportSource[source]ο
- archivebox.personas.importers.resolve_custom_import_source(raw_value: str, profile_dir: str | None = None) archivebox.personas.importers.PersonaImportSource[source]ο
- archivebox.personas.importers.pick_default_profile_dir(user_data_dir: pathlib.Path) str | None[source]ο
- archivebox.personas.importers.import_persona_from_source(persona: archivebox.personas.models.Persona, source: archivebox.personas.importers.PersonaImportSource, *, copy_profile: bool = True, import_cookies: bool = True, capture_storage: bool = False) archivebox.personas.importers.PersonaImportResult[source]ο
- archivebox.personas.importers.copy_browser_user_data_dir(source_dir: pathlib.Path, destination_dir: pathlib.Path) None[source]ο
- archivebox.personas.importers.export_browser_state(*, user_data_dir: pathlib.Path | None = None, cdp_url: str | None = None, profile_dir: str | None = None, chrome_binary: str | None = None, cookies_output_file: pathlib.Path | None = None, auth_output_file: pathlib.Path | None = None) tuple[bool, dict | None, str][source]ο
- archivebox.personas.importers._parse_netscape_cookies(path: pathlib.Path) dict[tuple[str, str, str], tuple[str, str, str, str, str, str, str]][source]ο
- archivebox.personas.importers._write_netscape_cookies(path: pathlib.Path, cookies: dict[tuple[str, str, str], tuple[str, str, str, str, str, str, str]]) None[source]ο
- archivebox.personas.importers._merge_netscape_cookies(existing_file: pathlib.Path, new_file: pathlib.Path) None[source]ο
- archivebox.personas.importers._merge_auth_storage(existing_file: pathlib.Path, new_file: pathlib.Path) None[source]ο
- archivebox.personas.importers._merge_cookie_dicts(existing: list[dict], new: list[dict]) list[dict][source]ο
- archivebox.personas.importers._apply_imported_user_agent(persona: archivebox.personas.models.Persona, auth_payload: dict | None) bool[source]ο