LmeSzinc / AzurLaneAutoScript

Azur Lane bot (CN/EN/JP/TW) 碧蓝航线脚本 | 无缝委托科研,全自动大世界
https://alas.azurlane.cloud
GNU General Public License v3.0
6.88k stars 824 forks source link

MAC 上使用alas目前已部署完毕但无法运行 已在网上查询来很多资料但还是没办法运行 #4311

Open Solomongh0st opened 1 week ago

Solomongh0st commented 1 week ago
                                                         START                                                              

════════════════════════════════════════════════════════════════════════════════════════════════════════════════════════════════ INFO 21:52:46.935 │ Start scheduler loop: alas
INFO 21:52:46.940 │ [Server] cn
INFO 21:52:46.954 │ Bind task ['General', 'Alas']
INFO 21:52:46.956 │ Pending tasks: ['Restart', 'Commission', 'Tactical', 'Research', 'Dorm', 'Meowfficer', 'Guild',
'Reward', 'Freebies', 'Event']
INFO 21:52:46.958 │ [Task] Restart (Enable, 2020-01-01 00:00:00)
INFO 21:52:46.959 │ Bind task ['General', 'Alas', 'Restart']
ERROR 21:52:47.372 │ ModuleNotFoundError: No module named 'uiautomator2cache'
╭───────────────────────────────────────── Traceback (most recent call last) ─────────────────────────────────────────╮ │ │ │ /app/AzurLaneAutoScript/alas.py:45 in device │ │ │ │ 43 │ def device(self): │ │ 44 │ │ try: │ │ ❱ 45 │ │ │ from module.device.device import Device │ │ 46 │ │ │ device = Device(config=self.config) │ │ 47 │ │ │ return device │ │ │ │ ╭───────────────────────────── locals ──────────────────────────────╮ │ │ │ e = ModuleNotFoundError("No module named 'uiautomator2cache'") │ │ │ │ self = <alas.AzurLaneAutoScript object at 0xffff9c36acd0> │ │ │ ╰───────────────────────────────────────────────────────────────────╯ │ │ /app/AzurLaneAutoScript/module/device/device.py:15 in │ │ │ │ 13 from module.base.timer import Timer │ │ 14 from module.config.utils import get_server_next_update │ │ ❱ 15 from module.device.app_control import AppControl │ │ 16 from module.device.control import Control │ │ 17 from module.device.screenshot import Screenshot │ │ │ │ ╭──────────────────────────────────────────────────── locals ─────────────────────────────────────────────────────╮ │ │ │ builtins = { │ │ │ │ │ 'name': 'builtins', │ │ │ │ │ 'doc': 'Built-in functions, exceptions, and other objects.\n\nNoteworthy: None │ │ │ │ is the nil'+46, │ │ │ │ │ '__package__': '', │ │ │ │ │ '__loader__': <class '_frozen_importlib.BuiltinImporter'>, │ │ │ │ │ '__spec__': ModuleSpec(name='builtins', loader=<class │ │ │ │ '_frozen_importlib.BuiltinImporter'>), │ │ │ │ │ '__build_class__': <built-in function __build_class__>, │ │ │ │ │ '__import__': <built-in function __import__>, │ │ │ │ │ 'abs': <built-in function abs>, │ │ │ │ │ 'all': <built-in function all>, │ │ │ │ │ 'any': <built-in function any>, │ │ │ │ │ ... +143 │ │ │ │ } │ │ │ │ __cached__ = '/app/AzurLaneAutoScript/module/device/__pycache__/device.cpython-37.pyc' │ │ │ │ __doc__ = None │ │ │ │ __file__ = '/app/AzurLaneAutoScript/module/device/device.py' │ │ │ │ __loader__ = <_frozen_importlib_external.SourceFileLoader object at 0xffff60203090> │ │ │ │ __name__ = 'module.device.device' │ │ │ │ __package__ = 'module.device' │ │ │ │ __spec__ = ModuleSpec(name='module.device.device', │ │ │ │ loader=<_frozen_importlib_external.SourceFileLoader object at 0xffff60203090>, │ │ │ │ origin='/app/AzurLaneAutoScript/module/device/device.py') │ │ │ │ _ = <function get_distribution at 0xffff601dbf80> │ │ │ │ collections = <module 'collections' from '/app/pyroot/lib/python3.7/collections/__init__.py'> │ │ │ │ datetime = <class 'datetime.datetime'> │ │ │ │ etree = <module 'lxml.etree' from │ │ │ │ '/app/pyroot/lib/python3.7/site-packages/lxml/etree.cpython-37m-aarch64-linux-gnu.so'> │ │ │ │ get_distribution = <function get_distribution at 0xffff601dbf80> │ │ │ │ get_server_next_update = <function get_server_next_update at 0xffff9c5378c0> │ │ │ │ IS_WINDOWS = False │ │ │ │ Timer = <class 'module.base.timer.Timer'> │ │ │ ╰─────────────────────────────────────────────────────────────────────────────────────────────────────────────────╯ │ │ │ │ /app/AzurLaneAutoScript/module/device/app_control.py:4 in <module> │ │ │ │ 2 │ │ 3 from module.base.timer import Timer │ │ ❱ 4 from module.device.method.adb import Adb │ │ 5 from module.device.method.uiautomator_2 import Uiautomator2 │ │ 6 from module.device.method.utils import HierarchyButton │ │ │ │ ╭──────────────────────────────────────────────────── locals ─────────────────────────────────────────────────────╮ │ │ │ __builtins__ = { │ │ │ │ │ '__name__': 'builtins', │ │ │ │ │ '__doc__': 'Built-in functions, exceptions, and other objects.\n\nNoteworthy: None is the │ │ │ │nil'+46, │ │ │ │ │ 'package': '', │ │ │ │ │ 'loader': <class '_frozen_importlib.BuiltinImporter'>, │ │ │ │ │ 'spec': ModuleSpec(name='builtins', loader=<class '_frozen_importlib.BuiltinImporter'>), │ │ │ │ │ 'build_class': <built-in function build_class>, │ │ │ │ │ 'import': , │ │ │ │ │ 'abs': , │ │ │ │ │ 'all': , │ │ │ │ │ 'any': , │ │ │ │ │ ... +143 │ │ │ │ } │ │ │ │ cached = '/app/AzurLaneAutoScript/module/device/pycache/app_control.cpython-37.pyc' │ │ │ │ doc = None │ │ │ │ file = '/app/AzurLaneAutoScript/module/device/app_control.py' │ │ │ │ loader = <_frozen_importlib_external.SourceFileLoader object at 0xffff601e4ed0> │ │ │ │ name = 'module.device.app_control' │ │ │ │ package = 'module.device' │ │ │ │ spec = ModuleSpec(name='module.device.app_control', loader=<_frozen_importlib_external.SourceFileLoader │ │ │ │ object at 0xffff601e4ed0>, origin='/app/AzurLaneAutoScript/module/device/app_control.py') │ │ │ │ etree = <module 'lxml.etree' from │ │ │ │ '/app/pyroot/lib/python3.7/site-packages/lxml/etree.cpython-37m-aarch64-linux-gnu.so'> │ │ │ │ Timer = <class 'module.base.timer.Timer'> │ │ │ ╰─────────────────────────────────────────────────────────────────────────────────────────────────────────────────╯ │ │ │ │ /app/AzurLaneAutoScript/module/device/method/adb.py:12 in │ │ │ │ 10 from module.base.decorator import Config │ │ 11 from module.config.server import DICT_PACKAGE_TO_ACTIVITY │ │ ❱ 12 from module.device.connection import Connection │ │ 13 from module.device.method.utils import (ImageTruncated, PackageNotInstalled, │ │ RETRY_TRIES, handle_adb_error, │ │ 14 │ │ │ │ │ │ │ │ │ │ handle_unknown_host_service, remove_prefix, │ │ retry_sleep) │ │ │ │ ╭──────────────────────────────────────────────────── locals ─────────────────────────────────────────────────────╮ │ │ │ builtins = { │ │ │ │ │ 'name': 'builtins', │ │ │ │ │ 'doc': 'Built-in functions, exceptions, and other objects.\n\nNoteworthy: │ │ │ │ None is the nil'+46, │ │ │ │ │ '__package__': '', │ │ │ │ │ '__loader__': <class '_frozen_importlib.BuiltinImporter'>, │ │ │ │ │ '__spec__': ModuleSpec(name='builtins', loader=<class │ │ │ │ '_frozen_importlib.BuiltinImporter'>), │ │ │ │ │ '__build_class__': <built-in function __build_class__>, │ │ │ │ │ '__import__': <built-in function __import__>, │ │ │ │ │ 'abs': <built-in function abs>, │ │ │ │ │ 'all': <built-in function all>, │ │ │ │ │ 'any': <built-in function any>, │ │ │ │ │ ... +143 │ │ │ │ } │ │ │ │ __cached__ = '/app/AzurLaneAutoScript/module/device/method/__pycache__/adb.cpython-37.pyc' │ │ │ │ __doc__ = None │ │ │ │ __file__ = '/app/AzurLaneAutoScript/module/device/method/adb.py' │ │ │ │ __loader__ = <_frozen_importlib_external.SourceFileLoader object at 0xffff6014aed0> │ │ │ │ __name__ = 'module.device.method.adb' │ │ │ │ __package__ = 'module.device.method' │ │ │ │ __spec__ = ModuleSpec(name='module.device.method.adb', │ │ │ │ loader=<_frozen_importlib_external.SourceFileLoader object at 0xffff6014aed0>, │ │ │ │ origin='/app/AzurLaneAutoScript/module/device/method/adb.py') │ │ │ │ AdbError = <class 'adbutils.errors.AdbError'> │ │ │ │ Config = <class 'module.base.decorator.Config'> │ │ │ │ cv2 = <module 'cv2' from '/app/pyroot/lib/python3.7/site-packages/cv2/__init__.py'> │ │ │ │ DICT_PACKAGE_TO_ACTIVITY = { │ │ │ │ │ 'com.bilibili.azurlane': 'com.manjuu.azurlane.MainActivity', │ │ │ │ │ 'com.YoStarEN.AzurLane': 'com.manjuu.azurlane.PrePermissionActivity', │ │ │ │ │ 'com.YoStarJP.AzurLane': 'com.manjuu.azurlane.PrePermissionActivity', │ │ │ │ │ 'com.hkmanjuu.azurlane.gp': 'com.manjuu.azurlane.PrePermissionActivity', │ │ │ │ │ 'com.bilibili.blhx.huawei': 'com.manjuu.azurlane.SplashActivity', │ │ │ │ │ 'com.bilibili.blhx.mi': 'com.manjuu.azurlane.SplashActivity', │ │ │ │ │ 'com.tencent.tmgp.bilibili.blhx': 'com.manjuu.azurlane.SplashActivity', │ │ │ │ │ 'com.bilibili.blhx.baidu': 'com.manjuu.azurlane.SplashActivity', │ │ │ │ │ 'com.bilibili.blhx.qihoo': 'com.manjuu.azurlane.SplashActivity', │ │ │ │ │ 'com.bilibili.blhx.nearme.gamecenter': 'com.manjuu.azurlane.SplashActivity', │ │ │ │ │ ... +10 │ │ │ │ } │ │ │ │ etree = <module 'lxml.etree' from │ │ │ │ '/app/pyroot/lib/python3.7/site-packages/lxml/etree.cpython-37m-aarch64-linux-gnu.s… │ │ │ │ np = <module 'numpy' from '/app/pyroot/lib/python3.7/site-packages/numpy/__init__.py'> │ │ │ │ re = <module 're' from '/app/pyroot/lib/python3.7/re.py'> │ │ │ │ time = <module 'time' (built-in)> │ │ │ │ wraps = <function wraps at 0xffff9e85d830> │ │ │ ╰─────────────────────────────────────────────────────────────────────────────────────────────────────────────────╯ │ │ │ │ /app/AzurLaneAutoScript/module/device/connection.py:16 in <module> │ │ │ │ 14 from module.base.utils import ensure_time │ │ 15 from module.config.server import VALID_CHANNEL_PACKAGE, VALID_PACKAGE, set_server │ │ ❱ 16 from module.device.connection_attr import ConnectionAttr │ │ 17 from module.device.env import IS_LINUX, IS_MACINTOSH, IS_WINDOWS │ │ 18 from module.device.method.utils import (PackageNotInstalled, RETRY_TRIES, │ │ get_serial_pair, handle_adb_error, │ │ │ │ ╭──────────────────────────────────────────────────── locals ─────────────────────────────────────────────────────╮ │ │ │ __builtins__ = { │ │ │ │ │ '__name__': 'builtins', │ │ │ │ │ '__doc__': 'Built-in functions, exceptions, and other objects.\n\nNoteworthy: None │ │ │ │ is thenil'+46, │ │ │ │ │ 'package': '', │ │ │ │ │ 'loader': <class '_frozen_importlib.BuiltinImporter'>, │ │ │ │ │ 'spec': ModuleSpec(name='builtins', loader=<class │ │ │ │ '_frozen_importlib.BuiltinImporter'>), │ │ │ │ │ 'build_class': <built-in function build_class>, │ │ │ │ │ 'import': , │ │ │ │ │ 'abs': , │ │ │ │ │ 'all': , │ │ │ │ │ 'any': , │ │ │ │ │ ... +143 │ │ │ │ } │ │ │ │ cached = '/app/AzurLaneAutoScript/module/device/pycache/connection.cpython-37.pyc' │ │ │ │ doc = None │ │ │ │ file = '/app/AzurLaneAutoScript/module/device/connection.py' │ │ │ │ loader = <_frozen_importlib_external.SourceFileLoader object at 0xffff60168650> │ │ │ │ name = 'module.device.connection' │ │ │ │ package = 'module.device' │ │ │ │ spec = ModuleSpec(name='module.device.connection', │ │ │ │ loader=<_frozen_importlib_external.SourceFileLoader object at 0xffff60168650>, │ │ │ │ origin='/app/AzurLaneAutoScript/module/device/connection.py') │ │ │ │ AdbClient = <class 'adbutils.AdbClient'> │ │ │ │ AdbDevice = <class 'adbutils.AdbDevice'> │ │ │ │ AdbError = <class 'adbutils.errors.AdbError'> │ │ │ │ AdbTimeout = <class 'adbutils.errors.AdbTimeout'> │ │ │ │ cached_property = <class 'module.base.decorator.cached_property'> │ │ │ │ Config = <class 'module.base.decorator.Config'> │ │ │ │ del_cached_property = <function del_cached_property at 0xffff9c044290> │ │ │ │ ensure_time = <function ensure_time at 0xffff9011def0> │ │ │ │ ForwardItem = <class 'adbutils.ForwardItem'> │ │ │ │ ipaddress = <module 'ipaddress' from '/app/pyroot/lib/python3.7/ipaddress.py'> │ │ │ │ logging = <module 'logging' from '/app/pyroot/lib/python3.7/logging/init.py'> │ │ │ │ re = <module 're' from '/app/pyroot/lib/python3.7/re.py'> │ │ │ │ ReverseItem = <class 'adbutils.ReverseItem'> │ │ │ │ run_once = <function run_once at 0xffff9c0455f0> │ │ │ │ set_server = <function set_server at 0xffff9c533cb0> │ │ │ │ socket = <module 'socket' from '/app/pyroot/lib/python3.7/socket.py'> │ │ │ │ subprocess = <module 'subprocess' from '/app/pyroot/lib/python3.7/subprocess.py'> │ │ │ │ time = <module 'time' (built-in)> │ │ │ │ u2 = <module 'uiautomator2' from │ │ │ │ '/app/pyroot/lib/python3.7/site-packages/uiautomator2/init.py'> │ │ │ │ VALID_CHANNEL_PACKAGE = { │ │ │ │ │ 'com.bilibili.blhx.huawei': ('cn', '华为'), │ │ │ │ │ 'com.bilibili.blhx.mi': ('cn', '小米'), │ │ │ │ │ 'com.tencent.tmgp.bilibili.blhx': ('cn', '腾讯应用宝'), │ │ │ │ │ 'com.bilibili.blhx.baidu': ('cn', '百度'), │ │ │ │ │ 'com.bilibili.blhx.qihoo': ('cn', '360'), │ │ │ │ │ 'com.bilibili.blhx.nearme.gamecenter': ('cn', 'oppo'), │ │ │ │ │ 'com.bilibili.blhx.vivo': ('cn', 'vivo'), │ │ │ │ │ 'com.bilibili.blhx.mz': ('cn', '魅族'), │ │ │ │ │ 'com.bilibili.blhx.dl': ('cn', '当乐'), │ │ │ │ │ 'com.bilibili.blhx.lenovo': ('cn', '联想'), │ │ │ │ │ ... +6 │ │ │ │ } │ │ │ │ VALID_PACKAGE = { │ │ │ │ │ 'com.bilibili.azurlane': 'cn', │ │ │ │ │ 'com.YoStarEN.AzurLane': 'en', │ │ │ │ │ 'com.YoStarJP.AzurLane': 'jp', │ │ │ │ │ 'com.hkmanjuu.azurlane.gp': 'tw' │ │ │ │ } │ │ │ │ wraps = <function wraps at 0xffff9e85d830> │ │ │ ╰─────────────────────────────────────────────────────────────────────────────────────────────────────────────────╯ │ │ │ │ /app/AzurLaneAutoScript/module/device/connection_attr.py:12 in │ │ │ │ 10 from module.config.env import IS_ON_PHONE_CLOUD │ │ 11 from module.config.utils import deep_iter │ │ ❱ 12 from module.device.method.utils import get_serial_pair │ │ 13 from module.exception import RequestHumanTakeover │ │ 14 from module.logger import logger │ │ │ │ ╭──────────────────────────────────────────────────── locals ─────────────────────────────────────────────────────╮ │ │ │ builtins = { │ │ │ │ │ 'name': 'builtins', │ │ │ │ │ 'doc': 'Built-in functions, exceptions, and other objects.\n\nNoteworthy: None is │ │ │ │ the nil'+46, │ │ │ │ │ '__package__': '', │ │ │ │ │ '__loader__': <class '_frozen_importlib.BuiltinImporter'>, │ │ │ │ │ '__spec__': ModuleSpec(name='builtins', loader=<class │ │ │ │ '_frozen_importlib.BuiltinImporter'>), │ │ │ │ │ '__build_class__': <built-in function __build_class__>, │ │ │ │ │ '__import__': <built-in function __import__>, │ │ │ │ │ 'abs': <built-in function abs>, │ │ │ │ │ 'all': <built-in function all>, │ │ │ │ │ 'any': <built-in function any>, │ │ │ │ │ ... +143 │ │ │ │ } │ │ │ │ __cached__ = '/app/AzurLaneAutoScript/module/device/__pycache__/connection_attr.cpython-37.pyc' │ │ │ │ __doc__ = None │ │ │ │ __file__ = '/app/AzurLaneAutoScript/module/device/connection_attr.py' │ │ │ │ __loader__ = <_frozen_importlib_external.SourceFileLoader object at 0xffff54decf90> │ │ │ │ __name__ = 'module.device.connection_attr' │ │ │ │ __package__ = 'module.device' │ │ │ │ __spec__ = ModuleSpec(name='module.device.connection_attr', │ │ │ │ loader=<_frozen_importlib_external.SourceFileLoader object at 0xffff54decf90>, │ │ │ │ origin='/app/AzurLaneAutoScript/module/device/connection_attr.py') │ │ │ │ AdbClient = <class 'adbutils.AdbClient'> │ │ │ │ AdbDevice = <class 'adbutils.AdbDevice'> │ │ │ │ adbutils = <module 'adbutils' from '/app/pyroot/lib/python3.7/site-packages/adbutils/__init__.py'> │ │ │ │ AzurLaneConfig = <class 'module.config.config.AzurLaneConfig'> │ │ │ │ cached_property = <class 'module.base.decorator.cached_property'> │ │ │ │ deep_iter = <function deep_iter at 0xffff9c537200> │ │ │ │ IS_ON_PHONE_CLOUD = False │ │ │ │ os = <module 'os' from '/app/pyroot/lib/python3.7/os.py'> │ │ │ │ re = <module 're' from '/app/pyroot/lib/python3.7/re.py'> │ │ │ │ u2 = <module 'uiautomator2' from │ │ │ │ '/app/pyroot/lib/python3.7/site-packages/uiautomator2/__init__.py'> │ │ │ ╰─────────────────────────────────────────────────────────────────────────────────────────────────────────────────╯ │ │ │ │ /app/AzurLaneAutoScript/module/device/method/utils.py:9 in <module> │ │ │ │ 7 │ │ 8 import uiautomator2 as u2 │ │ ❱ 9 import uiautomator2cache │ │ 10 from adbutils import AdbTimeout │ │ 11 from lxml import etree │ │ │ │ ╭──────────────────────────────────────────────────── locals ─────────────────────────────────────────────────────╮ │ │ │ __builtins__ = { │ │ │ │ │ '__name__': 'builtins', │ │ │ │ │ '__doc__': 'Built-in functions, exceptions, and other objects.\n\nNoteworthy: None is the │ │ │ │nil'+46, │ │ │ │ │ 'package': '', │ │ │ │ │ 'loader': <class '_frozen_importlib.BuiltinImporter'>, │ │ │ │ │ 'spec': ModuleSpec(name='builtins', loader=<class '_frozen_importlib.BuiltinImporter'>), │ │ │ │ │ 'build_class': <built-in function build_class>, │ │ │ │ │ 'import': , │ │ │ │ │ 'abs': , │ │ │ │ │ 'all': , │ │ │ │ │ 'any': , │ │ │ │ │ ... +143 │ │ │ │ } │ │ │ │ cached = '/app/AzurLaneAutoScript/module/device/method/pycache/utils.cpython-37.pyc' │ │ │ │ doc = None │ │ │ │ file = '/app/AzurLaneAutoScript/module/device/method/utils.py' │ │ │ │ loader = <_frozen_importlib_external.SourceFileLoader object at 0xffff54d810d0> │ │ │ │ name = 'module.device.method.utils' │ │ │ │ package = 'module.device.method' │ │ │ │ spec = ModuleSpec(name='module.device.method.utils', │ │ │ │ loader=<_frozen_importlib_external.SourceFileLoader object at 0xffff54d810d0>, │ │ │ │ origin='/app/AzurLaneAutoScript/module/device/method/utils.py') │ │ │ │ os = <module 'os' from '/app/pyroot/lib/python3.7/os.py'> │ │ │ │ random = <module 'random' from '/app/pyroot/lib/python3.7/random.py'> │ │ │ │ re = <module 're' from '/app/pyroot/lib/python3.7/re.py'> │ │ │ │ socket = <module 'socket' from '/app/pyroot/lib/python3.7/socket.py'> │ │ │ │ t = <module 'typing' from '/app/pyroot/lib/python3.7/typing.py'> │ │ │ │ time = <module 'time' (built-in)> │ │ │ │ u2 = <module 'uiautomator2' from '/app/pyroot/lib/python3.7/site-packages/uiautomator2/init.py'> │ │ │ ╰─────────────────────────────────────────────────────────────────────────────────────────────────────────────────╯ │ ╰─────────────────────────────────────────────────────────────────────────────────────────────────────────────────────╯ ModuleNotFoundError: No module named 'uiautomator2cache'

LmeSzinc commented 1 week ago

需要安装 uiautomator2cache

pip install uiautomator2cache