Closed 1136088949 closed 2 months ago
打开OAS出现索引越界
无
2024-09-12 15:18:20.164 │ IndexError: tuple index out of range ╭───────────────────────────────────── Traceback (most recent call last) ─────────────────────────────────────╮ │ D:\game\gua\OnmyojiAutoScript-easy-install\script.py:67 in device │ │ │ │ 64 │ def device(self) -> "Device": │ │ 65 │ │ try: │ │ 66 │ │ │ from module.device.device import Device │ │ ❱ 67 │ │ │ device = Device(config=self.config) │ │ 68 │ │ │ return device │ │ 69 │ │ except RequestHumanTakeover: │ │ 70 │ │ │ logger.critical('Request human takeover') │ │ │ │ ╭─────────────────────── locals ────────────────────────╮ │ │ │ Device = <class 'module.device.device.Device'> │ │ │ │ e = IndexError('tuple index out of range') │ │ │ │ self = <script.Script object at 0x0000020CFC0F77F0> │ │ │ ╰───────────────────────────────────────────────────────╯ │ │ │ │ D:\game\gua\OnmyojiAutoScript-easy-install\module\device\device.py:33 in __init__ │ │ │ │ 30 │ stuck_long_wait_list = ['BATTLE_STATUS_S', 'PAUSE', 'LOGIN_CHECK'] │ │ 31 │ │ │ 32 │ def __init__(self, *args, **kwargs): │ │ ❱ 33 │ │ super().__init__(*args, **kwargs) │ │ 34 │ │ self.screenshot_interval_set() │ │ 35 │ │ # 我不能接受为什么继承了Window但是不会自动初始化 │ │ 36 │ │ │ │ ╭──────────────────────────────────── locals ─────────────────────────────────────╮ │ │ │ args = () │ │ │ │ kwargs = {'config': <module.config.config.Config object at 0x0000020CFC0F7790>} │ │ │ │ self = <module.device.device.Device object at 0x0000020C95367400> │ │ │ ╰─────────────────────────────────────────────────────────────────────────────────╯ │ │ │ │ D:\game\gua\OnmyojiAutoScript-easy-install\module\device\screenshot.py:33 in __init__ │ │ │ │ 30 │ │ │ 31 │ def __init__(self, *args, **kwargs): │ │ 32 │ │ super().__init__(*args, **kwargs) │ │ ❱ 33 │ │ super(Window, self).__init__(*args, **kwargs) │ │ 34 │ │ │ 35 │ @cached_property │ │ 36 │ def screenshot_methods(self): │ │ │ │ ╭──────────────────────────────────── locals ─────────────────────────────────────╮ │ │ │ args = () │ │ │ │ kwargs = {'config': <module.config.config.Config object at 0x0000020CFC0F7790>} │ │ │ │ self = <module.device.device.Device object at 0x0000020C95367400> │ │ │ ╰─────────────────────────────────────────────────────────────────────────────────╯ │ │ │ │ D:\game\gua\OnmyojiAutoScript-easy-install\module\device\handle.py:210 in __init__ │ │ │ │ 207 │ │ │ │ 208 │ │ # window系统的缩放 │ │ 209 │ │ logger.info(f'Your window screen scale rate: {window_scale_rate()}') │ │ ❱ 210 │ │ _ = self.screenshot_handle_num │ │ 211 │ │ logger.info(f'Screenshot handle num: {self.screenshot_handle_num}') │ │ 212 │ │ logger.info(f'Emulator screenshot size: {self.screenshot_size}') │ │ 213 │ │ │ │ ╭─────────────────────────────────── locals ───────────────────────────────────╮ │ │ │ config = <module.config.config.Config object at 0x0000020CFC0F7790> │ │ │ │ fill = '' │ │ │ │ node = <module.device.handle.WindowNode object at 0x0000020C95367970> │ │ │ │ pre = '' │ │ │ │ self = <module.device.device.Device object at 0x0000020C95367400> │ │ │ │ window_list = ['', '', '', '', '', '', '', '', '', '', ... +292] │ │ │ ╰──────────────────────────────────────────────────────────────────────────────╯ │ │ │ │ D:\game\gua\OnmyojiAutoScript-easy-install\toolkit\lib\site-packages\cached_property.py:36 in __get__ │ │ │ │ 33 │ │ if asyncio and asyncio.iscoroutinefunction(self.func): │ │ 34 │ │ │ return self._wrap_in_coroutine(obj) │ │ 35 │ │ │ │ ❱ 36 │ │ value = obj.__dict__[self.func.__name__] = self.func(obj) │ │ 37 │ │ return value │ │ 38 │ │ │ 39 │ def _wrap_in_coroutine(self, obj): │ │ │ │ ╭─────────────────────────────── locals ────────────────────────────────╮ │ │ │ cls = <class 'module.device.device.Device'> │ │ │ │ obj = <module.device.device.Device object at 0x0000020C95367400> │ │ │ │ self = <cached_property.cached_property object at 0x0000020C95331780> │ │ │ ╰───────────────────────────────────────────────────────────────────────╯ │ │ │ │ D:\game\gua\OnmyojiAutoScript-easy-install\module\device\handle.py:333 in screenshot_handle_num │ │ │ │ 330 │ │ """ │ │ 331 │ │ if self.emulator_family == EmulatorFamily.FAMILY_MUMU: │ │ 332 │ │ │ # 使用正则匹配12 来判定是不是mumu12这并不是一个好的方法 │ │ ❱ 333 │ │ │ name = self.root_node.children[0].name │ │ 334 │ │ │ num = self.root_node.children[0].num │ │ 335 │ │ │ if name == 'MuMuPlayer': │ │ 336 │ │ │ │ logger.info('The emulator is MuMu模拟器12') │ │ │ │ ╭───────────────────────────── locals ──────────────────────────────╮ │ │ │ self = <module.device.device.Device object at 0x0000020C95367400> │ │ │ ╰───────────────────────────────────────────────────────────────────╯ │ ╰─────────────────────────────────────────────────────────────────────────────────────────────────────────────╯ IndexError: tuple index out of range INFO 2024-09-12 15:18:24.090 │ Script oas1 process exit ERROR 2024-09-12 15:18:24.092 │ Error: 1
已解决
你这很明显是没填写句柄,用了windows的控制方式导致的,关闭issue
在提问之前...
描述你的问题
打开OAS出现索引越界
如何复现
预期行为
无
相关 Logs
截图
还有别的吗?
无