Skip to content

Commit c7dcb66

Browse files
committed
fix: more lint errors
1 parent 9ce8416 commit c7dcb66

File tree

2 files changed

+34
-36
lines changed

2 files changed

+34
-36
lines changed

browser_use/browser/session.py

Lines changed: 19 additions & 21 deletions
Original file line numberDiff line numberDiff line change
@@ -2256,20 +2256,28 @@ async def cdp_client_for_node(self, node: EnhancedDOMTreeNode) -> CDPSession:
22562256

22572257
return await self.get_or_create_cdp_session()
22582258

2259-
async def take_screenshot(self, path: str | None = None, full_page: bool = False, format: str = 'png', quality: int | None = None, clip: dict | None = None) -> bytes:
2259+
async def take_screenshot(
2260+
self,
2261+
path: str | None = None,
2262+
full_page: bool = False,
2263+
format: str = 'png',
2264+
quality: int | None = None,
2265+
clip: dict | None = None,
2266+
) -> bytes:
22602267
"""Take a screenshot using CDP.
2261-
2268+
22622269
Args:
22632270
path: Optional file path to save screenshot
22642271
full_page: Capture entire scrollable page beyond viewport
22652272
format: Image format ('png', 'jpeg', 'webp')
22662273
quality: Quality 0-100 for JPEG format
22672274
clip: Region to capture {'x': int, 'y': int, 'width': int, 'height': int}
2268-
2275+
22692276
Returns:
22702277
Screenshot data as bytes
22712278
"""
22722279
import base64
2280+
22732281
from cdp_use.cdp.page import CaptureScreenshotParameters
22742282

22752283
cdp_session = await self.get_or_create_cdp_session()
@@ -2294,17 +2302,15 @@ async def take_screenshot(self, path: str | None = None, full_page: bool = False
22942302

22952303
params = CaptureScreenshotParameters(**params)
22962304

2297-
result = await cdp_session.cdp_client.send.Page.captureScreenshot(
2298-
params=params,
2299-
session_id=cdp_session.session_id
2300-
)
2305+
result = await cdp_session.cdp_client.send.Page.captureScreenshot(params=params, session_id=cdp_session.session_id)
23012306

23022307
if not result or 'data' not in result:
23032308
raise Exception('Screenshot failed - no data returned')
23042309

23052310
screenshot_data = base64.b64decode(result['data'])
23062311

2307-
if path: Path(path).write_bytes(screenshot_data)
2312+
if path:
2313+
Path(path).write_bytes(screenshot_data)
23082314

23092315
return screenshot_data
23102316

@@ -2344,18 +2350,11 @@ async def _get_element_bounds(self, selector: str) -> dict | None:
23442350
cdp_session = await self.get_or_create_cdp_session()
23452351

23462352
# Get document
2347-
doc = await cdp_session.cdp_client.send.DOM.getDocument(
2348-
params={'depth': 1},
2349-
session_id=cdp_session.session_id
2350-
)
2353+
doc = await cdp_session.cdp_client.send.DOM.getDocument(params={'depth': 1}, session_id=cdp_session.session_id)
23512354

23522355
# Query selector
23532356
node_result = await cdp_session.cdp_client.send.DOM.querySelector(
2354-
params={
2355-
'nodeId': doc['root']['nodeId'],
2356-
'selector': selector
2357-
},
2358-
session_id=cdp_session.session_id
2357+
params={'nodeId': doc['root']['nodeId'], 'selector': selector}, session_id=cdp_session.session_id
23592358
)
23602359

23612360
node_id = node_result.get('nodeId')
@@ -2364,8 +2363,7 @@ async def _get_element_bounds(self, selector: str) -> dict | None:
23642363

23652364
# Get bounding box
23662365
box_result = await cdp_session.cdp_client.send.DOM.getBoxModel(
2367-
params={'nodeId': node_id},
2368-
session_id=cdp_session.session_id
2366+
params={'nodeId': node_id}, session_id=cdp_session.session_id
23692367
)
23702368

23712369
box_model = box_result.get('model')
@@ -2377,5 +2375,5 @@ async def _get_element_bounds(self, selector: str) -> dict | None:
23772375
'x': min(content[0], content[2], content[4], content[6]),
23782376
'y': min(content[1], content[3], content[5], content[7]),
23792377
'width': max(content[0], content[2], content[4], content[6]) - min(content[0], content[2], content[4], content[6]),
2380-
'height': max(content[1], content[3], content[5], content[7]) - min(content[1], content[3], content[5], content[7])
2381-
}
2378+
'height': max(content[1], content[3], content[5], content[7]) - min(content[1], content[3], content[5], content[7]),
2379+
}

tests/ci/test_browser_session_take_screenshot.py

Lines changed: 15 additions & 15 deletions
Original file line numberDiff line numberDiff line change
@@ -5,29 +5,29 @@
55
from browser_use.browser.session import BrowserSession
66

77

8-
@pytest.fixture(scope="function")
8+
@pytest.fixture(scope='function')
99
async def browser_session():
10-
session = BrowserSession(browser_profile=BrowserProfile(headless=True))
11-
await session.start()
12-
yield session
13-
await session.kill()
10+
session = BrowserSession(browser_profile=BrowserProfile(headless=True))
11+
await session.start()
12+
yield session
13+
await session.kill()
1414

1515

1616
@pytest.mark.asyncio
1717
async def test_basic_screenshots(browser_session: BrowserSession, httpserver):
18-
"""Navigate to a local page and ensure screenshot helpers return bytes."""
18+
"""Navigate to a local page and ensure screenshot helpers return bytes."""
1919

20-
html = """
20+
html = """
2121
<html><body><h1 id='title'>Hello</h1><p>Screenshot demo.</p></body></html>
2222
"""
23-
httpserver.expect_request("/demo").respond_with_data(html, content_type="text/html")
24-
url = httpserver.url_for("/demo")
23+
httpserver.expect_request('/demo').respond_with_data(html, content_type='text/html')
24+
url = httpserver.url_for('/demo')
2525

26-
nav = browser_session.event_bus.dispatch(NavigateToUrlEvent(url=url, new_tab=False))
27-
await nav
26+
nav = browser_session.event_bus.dispatch(NavigateToUrlEvent(url=url, new_tab=False))
27+
await nav
2828

29-
data = await browser_session.take_screenshot(full_page=False)
30-
assert data, "Viewport screenshot returned no data"
29+
data = await browser_session.take_screenshot(full_page=False)
30+
assert data, 'Viewport screenshot returned no data'
3131

32-
element = await browser_session.screenshot_element("h1")
33-
assert element, "Element screenshot returned no data"
32+
element = await browser_session.screenshot_element('h1')
33+
assert element, 'Element screenshot returned no data'

0 commit comments

Comments
 (0)