diff --git a/apps/terminal/applets/chrome/app.py b/apps/terminal/applets/chrome/app.py index c6a8a25c8..9cc452590 100644 --- a/apps/terminal/applets/chrome/app.py +++ b/apps/terminal/applets/chrome/app.py @@ -21,6 +21,7 @@ class Command(Enum): OPEN = 'open' CODE = 'code' SELECT_FRAME = 'select_frame' + SLEEP = 'sleep' def _execute_type(ele: WebElement, value: str): @@ -59,6 +60,9 @@ class StepAction: if self.command == 'select_frame': self._switch_iframe(driver, self.target) return True + elif self.command == 'sleep': + self._sleep(driver, self.target) + return True target_name, target_value = self.target.split("=", 1) by_name = self.methods_map.get(target_name.upper(), By.NAME) ele = driver.find_element(by=by_name, value=target_value) @@ -103,6 +107,14 @@ class StepAction: else: driver.switch_to.frame(target) + def _sleep(self, driver: webdriver.Chrome, target: str): + try: + sleep_time = int(target) + except Exception as e: + # at least sleep 1 second + sleep_time = 1 + time.sleep(sleep_time) + def execute_action(driver: webdriver.Chrome, step: StepAction) -> bool: try: diff --git a/apps/terminal/applets/chrome/manifest.yml b/apps/terminal/applets/chrome/manifest.yml index 523f9f3a1..4c66515b6 100644 --- a/apps/terminal/applets/chrome/manifest.yml +++ b/apps/terminal/applets/chrome/manifest.yml @@ -1,6 +1,6 @@ name: chrome display_name: "{{ 'Chrome Browser' | trans }}" -version: 0.3 +version: 0.4 comment: "{{ 'Chrome Browser Open URL Page Address' | trans }}" author: JumpServer Team exec_type: python