Merge remote-tracking branch 'origin/main'
# Conflicts: # desktop_env/evaluators/getters/__init__.py # desktop_env/evaluators/metrics/__init__.py # requirements.txt
This commit is contained in:
@@ -1,7 +1,7 @@
|
||||
import json
|
||||
import logging
|
||||
import random
|
||||
from typing import Any, Dict
|
||||
from typing import Any, Dict, Optional
|
||||
|
||||
import requests
|
||||
|
||||
@@ -26,6 +26,15 @@ class PythonController:
|
||||
logger.error("Failed to get screenshot. Status code: %d", response.status_code)
|
||||
return None
|
||||
|
||||
def get_accessibility_tree(self) -> Optional[str]:
|
||||
|
||||
response: requests.Response = requests.get(self.http_server + "/accessibility")
|
||||
if response.status_code == 200:
|
||||
return response.json()["AT"]
|
||||
else:
|
||||
logger.error("Failed to get accessibility tree. Status code: %d", response.status_code)
|
||||
return None
|
||||
|
||||
def get_file(self, file_path: str):
|
||||
"""
|
||||
Gets a file from the server.
|
||||
@@ -73,7 +82,7 @@ class PythonController:
|
||||
|
||||
if action_type == "MOVE_TO":
|
||||
if parameters == {} or None:
|
||||
self.execute_python_command(f"pyautogui.moveTo()")
|
||||
self.execute_python_command("pyautogui.moveTo()")
|
||||
elif "x" in parameters and "y" in parameters:
|
||||
x = parameters["x"]
|
||||
y = parameters["y"]
|
||||
@@ -83,7 +92,7 @@ class PythonController:
|
||||
|
||||
elif action_type == "CLICK":
|
||||
if parameters == {} or None:
|
||||
self.execute_python_command(f"pyautogui.click()")
|
||||
self.execute_python_command("pyautogui.click()")
|
||||
elif "button" in parameters and "x" in parameters and "y" in parameters:
|
||||
button = parameters["button"]
|
||||
x = parameters["x"]
|
||||
@@ -114,7 +123,7 @@ class PythonController:
|
||||
|
||||
elif action_type == "MOUSE_DOWN":
|
||||
if parameters == {} or None:
|
||||
self.execute_python_command(f"pyautogui.mouseDown()")
|
||||
self.execute_python_command("pyautogui.mouseDown()")
|
||||
elif "button" in parameters:
|
||||
button = parameters["button"]
|
||||
self.execute_python_command(f"pyautogui.mouseDown(button='{button}')")
|
||||
@@ -123,7 +132,7 @@ class PythonController:
|
||||
|
||||
elif action_type == "MOUSE_UP":
|
||||
if parameters == {} or None:
|
||||
self.execute_python_command(f"pyautogui.mouseUp()")
|
||||
self.execute_python_command("pyautogui.mouseUp()")
|
||||
elif "button" in parameters:
|
||||
button = parameters["button"]
|
||||
self.execute_python_command(f"pyautogui.mouseUp(button='{button}')")
|
||||
@@ -132,7 +141,7 @@ class PythonController:
|
||||
|
||||
elif action_type == "RIGHT_CLICK":
|
||||
if parameters == {} or None:
|
||||
self.execute_python_command(f"pyautogui.rightClick()")
|
||||
self.execute_python_command("pyautogui.rightClick()")
|
||||
elif "x" in parameters and "y" in parameters:
|
||||
x = parameters["x"]
|
||||
y = parameters["y"]
|
||||
@@ -142,7 +151,7 @@ class PythonController:
|
||||
|
||||
elif action_type == "DOUBLE_CLICK":
|
||||
if parameters == {} or None:
|
||||
self.execute_python_command(f"pyautogui.doubleClick()")
|
||||
self.execute_python_command("pyautogui.doubleClick()")
|
||||
elif "x" in parameters and "y" in parameters:
|
||||
x = parameters["x"]
|
||||
y = parameters["y"]
|
||||
@@ -208,7 +217,7 @@ class PythonController:
|
||||
raise Exception(f"Unknown parameters: {parameters}")
|
||||
keys = parameters["keys"]
|
||||
if not isinstance(keys, list):
|
||||
raise Exception(f"Keys must be a list of keys")
|
||||
raise Exception("Keys must be a list of keys")
|
||||
for key in keys:
|
||||
if key.lower() not in KEYBOARD_KEYS:
|
||||
raise Exception(f"Key must be one of {KEYBOARD_KEYS}")
|
||||
|
||||
Reference in New Issue
Block a user