Refactor deployment configuration and enhance browser debugging options
This commit is contained in:
@@ -28,6 +28,7 @@ class BrowserConfig:
|
|||||||
Default: True.
|
Default: True.
|
||||||
use_managed_browser (bool): Launch the browser using a managed approach (e.g., via CDP), allowing
|
use_managed_browser (bool): Launch the browser using a managed approach (e.g., via CDP), allowing
|
||||||
advanced manipulation. Default: False.
|
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).
|
use_persistent_context (bool): Use a persistent browser context (like a persistent profile).
|
||||||
Automatically sets use_managed_browser=True. Default: False.
|
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
|
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,
|
text_mode: bool = False,
|
||||||
light_mode: bool = False,
|
light_mode: bool = False,
|
||||||
extra_args: list = None,
|
extra_args: list = None,
|
||||||
|
debugging_port : int = 9222,
|
||||||
):
|
):
|
||||||
self.browser_type = browser_type
|
self.browser_type = browser_type
|
||||||
self.headless = headless
|
self.headless = headless
|
||||||
@@ -131,6 +133,7 @@ class BrowserConfig:
|
|||||||
self.extra_args = extra_args if extra_args is not None else []
|
self.extra_args = extra_args if extra_args is not None else []
|
||||||
self.sleep_on_close = sleep_on_close
|
self.sleep_on_close = sleep_on_close
|
||||||
self.verbose = verbose
|
self.verbose = verbose
|
||||||
|
self.debugging_port = debugging_port
|
||||||
|
|
||||||
user_agenr_generator = UserAgentGenerator()
|
user_agenr_generator = UserAgentGenerator()
|
||||||
if self.user_agent_mode != "random":
|
if self.user_agent_mode != "random":
|
||||||
|
|||||||
@@ -265,6 +265,7 @@ class BrowserManager:
|
|||||||
user_data_dir=self.config.user_data_dir,
|
user_data_dir=self.config.user_data_dir,
|
||||||
headless=self.config.headless,
|
headless=self.config.headless,
|
||||||
logger=self.logger,
|
logger=self.logger,
|
||||||
|
debugging_port=self.config.debugging_port,
|
||||||
)
|
)
|
||||||
|
|
||||||
async def start(self):
|
async def start(self):
|
||||||
@@ -505,21 +506,6 @@ class BrowserManager:
|
|||||||
page = await context.new_page()
|
page = await context.new_page()
|
||||||
else:
|
else:
|
||||||
context = await self.create_browser_context()
|
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)
|
await self.setup_context(context, crawlerRunConfig)
|
||||||
page = await context.new_page()
|
page = await context.new_page()
|
||||||
|
|
||||||
|
|||||||
Reference in New Issue
Block a user