Spaces:
Paused
Paused
Commit ·
a41a5c1
1
Parent(s): e3fdbd8
fix(browser): Enforce correct viewport aspect ratio for browser agent
Browse files
python/tools/browser_agent.py
CHANGED
|
@@ -56,6 +56,7 @@ class State:
|
|
| 56 |
maximum_wait_page_load_time=10.0,
|
| 57 |
screen={"width": 1024, "height": 2048},
|
| 58 |
viewport={"width": 1024, "height": 2048},
|
|
|
|
| 59 |
args=["--headless=new"],
|
| 60 |
# Use a unique user data directory to avoid conflicts
|
| 61 |
user_data_dir=str(
|
|
@@ -72,6 +73,23 @@ class State:
|
|
| 72 |
await self.browser_session.start() if self.browser_session else None
|
| 73 |
# self.override_hooks()
|
| 74 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 75 |
# Add init script to the browser session
|
| 76 |
if self.browser_session and self.browser_session.browser_context:
|
| 77 |
js_override = files.get_abs_path("lib/browser/init_override.js")
|
|
|
|
| 56 |
maximum_wait_page_load_time=10.0,
|
| 57 |
screen={"width": 1024, "height": 2048},
|
| 58 |
viewport={"width": 1024, "height": 2048},
|
| 59 |
+
no_viewport=False,
|
| 60 |
args=["--headless=new"],
|
| 61 |
# Use a unique user data directory to avoid conflicts
|
| 62 |
user_data_dir=str(
|
|
|
|
| 73 |
await self.browser_session.start() if self.browser_session else None
|
| 74 |
# self.override_hooks()
|
| 75 |
|
| 76 |
+
# --------------------------------------------------------------------------
|
| 77 |
+
# Patch to enforce vertical viewport size
|
| 78 |
+
# --------------------------------------------------------------------------
|
| 79 |
+
# Browser-use auto-configuration overrides viewport settings, causing wrong
|
| 80 |
+
# aspect ratio. We fix this by directly setting viewport size after startup.
|
| 81 |
+
# --------------------------------------------------------------------------
|
| 82 |
+
|
| 83 |
+
if self.browser_session:
|
| 84 |
+
try:
|
| 85 |
+
page = await self.browser_session.get_current_page()
|
| 86 |
+
if page:
|
| 87 |
+
await page.set_viewport_size({"width": 1024, "height": 2048})
|
| 88 |
+
except Exception as e:
|
| 89 |
+
PrintStyle().warning(f"Could not force set viewport size: {e}")
|
| 90 |
+
|
| 91 |
+
# --------------------------------------------------------------------------
|
| 92 |
+
|
| 93 |
# Add init script to the browser session
|
| 94 |
if self.browser_session and self.browser_session.browser_context:
|
| 95 |
js_override = files.get_abs_path("lib/browser/init_override.js")
|