Refactor deployment configuration and enhance browser debugging options

This commit is contained in:
UncleCode
2024-12-20 20:35:28 +08:00
parent 849765712f
commit 8fbc2e0463
5 changed files with 4 additions and 4229 deletions

4214
a.md

File diff suppressed because it is too large Load Diff

View File

@@ -28,6 +28,7 @@ class BrowserConfig:
Default: True.
use_managed_browser (bool): Launch the browser using a managed approach (e.g., via CDP), allowing
advanced manipulation. Default: False.
debugging_port (int): Port for the browser debugging protocol. Default: 9222.
use_persistent_context (bool): Use a persistent browser context (like a persistent profile).
Automatically sets use_managed_browser=True. Default: False.
user_data_dir (str or None): Path to a user data directory for persistent sessions. If None, a
@@ -98,6 +99,7 @@ class BrowserConfig:
text_mode: bool = False,
light_mode: bool = False,
extra_args: list = None,
debugging_port : int = 9222,
):
self.browser_type = browser_type
self.headless = headless
@@ -131,6 +133,7 @@ class BrowserConfig:
self.extra_args = extra_args if extra_args is not None else []
self.sleep_on_close = sleep_on_close
self.verbose = verbose
self.debugging_port = debugging_port
user_agenr_generator = UserAgentGenerator()
if self.user_agent_mode != "random":

View File

@@ -265,6 +265,7 @@ class BrowserManager:
user_data_dir=self.config.user_data_dir,
headless=self.config.headless,
logger=self.logger,
debugging_port=self.config.debugging_port,
)
async def start(self):
@@ -505,21 +506,6 @@ class BrowserManager:
page = await context.new_page()
else:
context = await self.create_browser_context()
# context = await self.browser.new_context(
# user_agent=self.config.headers.get(
# "User-Agent", self.config.user_agent
# ),
# viewport={
# "width": self.config.viewport_width,
# "height": self.config.viewport_height,
# },
# proxy={"server": self.config.proxy} if self.config.proxy else None,
# accept_downloads=self.config.accept_downloads,
# storage_state=self.config.storage_state,
# ignore_https_errors=self.config.ignore_https_errors,
# java_script_enabled=self.config.java_script_enabled,
# device_scale_factor=1.0,
# )
await self.setup_context(context, crawlerRunConfig)
page = await context.new_page()