Jarvis-Brain 0.1.13.8__py3-none-any.whl → 0.1.13.9__py3-none-any.whl
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- {jarvis_brain-0.1.13.8.dist-info → jarvis_brain-0.1.13.9.dist-info}/METADATA +1 -1
- {jarvis_brain-0.1.13.8.dist-info → jarvis_brain-0.1.13.9.dist-info}/RECORD +5 -5
- mcp_tools/dp_tools.py +38 -30
- {jarvis_brain-0.1.13.8.dist-info → jarvis_brain-0.1.13.9.dist-info}/WHEEL +0 -0
- {jarvis_brain-0.1.13.8.dist-info → jarvis_brain-0.1.13.9.dist-info}/entry_points.txt +0 -0
|
@@ -1,11 +1,11 @@
|
|
|
1
1
|
mcp_tools/__init__.py,sha256=_ZzedxbxmVkdRH00ONOjQR31pZW-B8WPn5P2qE6T-Iw,3012
|
|
2
|
-
mcp_tools/dp_tools.py,sha256=
|
|
2
|
+
mcp_tools/dp_tools.py,sha256=fPxeXA2OdvISgBebi2BP_uCZekDaJltvTDaYrqUxFzw,26265
|
|
3
3
|
mcp_tools/main.py,sha256=hIiYV7QVT8XDEDihhTQTUmL7Ftlsd0DlfhKMHEqj244,1262
|
|
4
4
|
tools/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
|
5
5
|
tools/browser_manager.py,sha256=zeYcWuzxoohMdnYUoZbRH7axFC_VtV8MsncfN8y0yw0,2023
|
|
6
6
|
tools/browser_proxy.py,sha256=VAhuVrBIoXmKyXvCmJh4eRYCWpLIhbTYmFHK8l8eoTA,6590
|
|
7
7
|
tools/tools.py,sha256=wp5U1PM8Fh2yAZPDmXmCG-svtGIf9n0yb-YL3KPewWI,12928
|
|
8
|
-
jarvis_brain-0.1.13.
|
|
9
|
-
jarvis_brain-0.1.13.
|
|
10
|
-
jarvis_brain-0.1.13.
|
|
11
|
-
jarvis_brain-0.1.13.
|
|
8
|
+
jarvis_brain-0.1.13.9.dist-info/METADATA,sha256=v6xO6iDGBNOMRkozAVHvNOtyu7lJ478r4w2ig1Z9kmw,264
|
|
9
|
+
jarvis_brain-0.1.13.9.dist-info/WHEEL,sha256=WLgqFyCfm_KASv4WHyYy0P3pM_m7J5L9k2skdKLirC8,87
|
|
10
|
+
jarvis_brain-0.1.13.9.dist-info/entry_points.txt,sha256=YFQT4xpkUqt5dM5wlKPQQOqcjMuFrT9iuRAzIpAyH7U,51
|
|
11
|
+
jarvis_brain-0.1.13.9.dist-info/RECORD,,
|
mcp_tools/dp_tools.py
CHANGED
|
@@ -7,7 +7,7 @@ import os
|
|
|
7
7
|
import time
|
|
8
8
|
from typing import Any
|
|
9
9
|
|
|
10
|
-
import
|
|
10
|
+
from DrissionPage.errors import NoRectError
|
|
11
11
|
from fastmcp import FastMCP
|
|
12
12
|
|
|
13
13
|
from tools.browser_manager import BrowserManager
|
|
@@ -386,36 +386,44 @@ def register_get_ele_info(mcp: FastMCP, browser_manager):
|
|
|
386
386
|
css_selector=css_selector,
|
|
387
387
|
element_index=element_index,
|
|
388
388
|
)
|
|
389
|
-
has_rect = target_element.states.has_rect,
|
|
390
|
-
element_rect_size = tuple()
|
|
391
|
-
if not has_rect:
|
|
392
|
-
element_rect_size = target_element.rect.size,
|
|
393
389
|
try:
|
|
394
|
-
|
|
395
|
-
|
|
396
|
-
|
|
397
|
-
|
|
398
|
-
|
|
399
|
-
|
|
400
|
-
|
|
401
|
-
|
|
402
|
-
|
|
403
|
-
|
|
404
|
-
|
|
405
|
-
|
|
406
|
-
|
|
407
|
-
|
|
408
|
-
|
|
409
|
-
|
|
410
|
-
|
|
411
|
-
|
|
412
|
-
|
|
413
|
-
|
|
414
|
-
|
|
415
|
-
|
|
416
|
-
|
|
417
|
-
|
|
418
|
-
|
|
390
|
+
has_rect = target_element.states.has_rect,
|
|
391
|
+
element_rect_size = tuple()
|
|
392
|
+
if not has_rect:
|
|
393
|
+
element_rect_size = target_element.rect.size,
|
|
394
|
+
try:
|
|
395
|
+
child_count=target_element.child_count
|
|
396
|
+
except Exception:
|
|
397
|
+
child_count=0
|
|
398
|
+
return dp_mcp_message_pack(
|
|
399
|
+
message="元素可以被正常的选择到,以下是元素相关的一系列信息",
|
|
400
|
+
browser_port=browser_port,
|
|
401
|
+
tab_id=tab_id,
|
|
402
|
+
css_selector=css_selector,
|
|
403
|
+
element_index=element_index,
|
|
404
|
+
element_tag=target_element.tag,
|
|
405
|
+
element_attrs_key=list(target_element.attrs.keys()),
|
|
406
|
+
element_child_count=child_count,
|
|
407
|
+
element_rect_size=element_rect_size,
|
|
408
|
+
is_in_viewport=target_element.states.is_in_viewport,
|
|
409
|
+
is_whole_in_viewport=target_element.states.is_whole_in_viewport,
|
|
410
|
+
is_alive=target_element.states.is_alive,
|
|
411
|
+
is_checked=target_element.states.is_checked,
|
|
412
|
+
is_selected=target_element.states.is_selected,
|
|
413
|
+
is_enabled=target_element.states.is_enabled,
|
|
414
|
+
is_displayed=target_element.states.is_displayed,
|
|
415
|
+
is_covered=target_element.states.is_covered,
|
|
416
|
+
is_clickable=target_element.states.is_clickable,
|
|
417
|
+
has_rect=has_rect
|
|
418
|
+
)
|
|
419
|
+
except NoRectError:
|
|
420
|
+
return dp_mcp_message_pack(
|
|
421
|
+
message="报错:NoRectError: 该元素没有位置及大小。你传入的css_selector和element_index选出的元素没有rect,请确认该元素是否可见",
|
|
422
|
+
browser_port=browser_port,
|
|
423
|
+
tab_id=tab_id,
|
|
424
|
+
css_selector=css_selector,
|
|
425
|
+
element_index=element_index,
|
|
426
|
+
)
|
|
419
427
|
|
|
420
428
|
def register_get_screenshot(mcp: FastMCP, browser_manager):
|
|
421
429
|
@mcp.tool(name="get_tab_screenshot",
|
|
File without changes
|
|
File without changes
|