def click_by_js(self, locator: Enum) -> None: """ 通过js点击操作 :param locator:元素定位表达式 :return: None """ try: logger.info('点击元素:{}, 元素描述:{}'.format(locator.value, locator)) ele = WebDriverWait(self.driver, self._timeout).until(EC.element_to_be_clickable(locator)) self.driver.execute_script("arguments[0].click();", ele) except Exception: logger.error('点击失败,元素不可点击或者元素点位失败') self.save_screenshot() raise 请以这个格式封装execute_script函数
时间: 2023-12-25 10:05:57 浏览: 86
google-maps-store-locator:Javascript应用程序可在Google Maps locate上找到商店
def execute_script(self, script: str, *args) -> Any:
"""
执行JS脚本
:param script: JS脚本
:param args: JS脚本参数
:return: JS脚本执行结果
"""
try:
logger.info('执行JS脚本:{}'.format(script))
result = self.driver.execute_script(script, *args)
logger.info('执行成功,结果为:{}'.format(result))
return result
except Exception:
logger.error('执行JS脚本失败')
self.save_screenshot()
raise
阅读全文