Giter VIP home page Giter VIP logo

jgm-automator's People

Contributors

binqizhang avatar dongagent avatar eindex avatar jiahonzheng avatar jimowutong42 avatar tsingwei avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

jgm-automator's Issues

关于收货成功率的建议

我简单测试了一下,发现收货时对于货物对应建筑的识别可能受到收益产生时的效果(金币跳动、闪光)瞬时干扰,于是我尝试修改了一下,当收货完毕后,检测到还有货物未收取,就重新执行收货动作,此时再识别货物对应建筑时,可能就恰好避开了干扰效果,直到火车离开前反复执行,就可以提高识别率和收货成功率。

运行程序后报错了,怎么解决啊,没改过代码

Traceback (most recent call last):
File "...\JGM-Automator-master\main.py", line 19, in
instance.start()
File "..\JGM-Automator-master\automator.py", line 21, in start
self._match_target(target)
File "..\JGM-Automator-master\automator.py", line 69, in match_target
screen = self.d.screenshot(format="opencv")
File "..\Python37\lib\site-packages\uiautomator2_init
.py", line 1186, in screenshot
return self.session().screenshot(*args, **kwargs)
File "<..\Python37\lib\site-packages\decorator.py:decorator-gen-6>", line 2, in screenshot
File "..\Python37\lib\site-packages\retry\api.py", line 74, in retry_decorator
logger)
File "..\Python37\lib\site-packages\retry\api.py", line 33, in _retry_internal
return f()
File "..\Python37\lib\site-packages\uiautomator2\session.py", line 482, in screenshot
return cv2.imdecode(nparr, cv2.IMREAD_COLOR)
cv2.error: OpenCV(4.1.1) C:\projects\opencv-python\opencv\modules\imgcodecs\src\loadsave.cpp:726: error: (-215:Assertion failed) !buf.empty() in function 'cv::imdecode
'

自动升级政策时候出错

Traceback (most recent call last):
  File "main.py", line 30, in <module>
    instance.start()
  File "/Users/xxxxxxxx/work/git_private/JGM-Automator/automator.py", line 42, in start
    self.check_policy()
  File "/Users/xxxxxxxx/work/git_private/JGM-Automator/automator.py", line 138, in check_policy
    if len(UIMatcher.findGreenArrow(self.d.screenshot(format="opencv"))):
  File "/Users/xxxxxxxx/work/git_private/JGM-Automator/cv.py", line 31, in findGreenArrow
    if cnts[1]:
ValueError: The truth value of an array with more than one element is ambiguous. Use a.any() or a.all()

你好,我这出了一个奇怪的错误

Traceback (most recent call last):
File "C:\Users\xxx\AppData\Local\Programs\Python\Python37-32\lib\site-packages\urllib3\connection.py", line 157, in _new_conn
(self._dns_host, self.port), self.timeout, **extra_kw
File "C:\Users\xxx\AppData\Local\Programs\Python\Python37-32\lib\site-packages\urllib3\util\connection.py", line 84, in create_connection
raise err
File "C:\Users\xxx\AppData\Local\Programs\Python\Python37-32\lib\site-packages\urllib3\util\connection.py", line 74, in create_connection
sock.connect(sa)
ConnectionRefusedError: [WinError 10061] 由于目标计算机积极拒绝,无法连接。

During handling of the above exception, another exception occurred:

Traceback (most recent call last):
File "C:\Users\xxx\AppData\Local\Programs\Python\Python37-32\lib\site-packages\urllib3\connectionpool.py", line 672, in urlopen
chunked=chunked,
File "C:\Users\xxx\AppData\Local\Programs\Python\Python37-32\lib\site-packages\urllib3\connectionpool.py", line 387, in _make_request
conn.request(method, url, **httplib_request_kw)
File "C:\Users\xxx\AppData\Local\Programs\Python\Python37-32\lib\http\client.py", line 1244, in request
self._send_request(method, url, body, headers, encode_chunked)
File "C:\Users\xxx\AppData\Local\Programs\Python\Python37-32\lib\http\client.py", line 1290, in _send_request
self.endheaders(body, encode_chunked=encode_chunked)
File "C:\Users\xxx\AppData\Local\Programs\Python\Python37-32\lib\http\client.py", line 1239, in endheaders
self._send_output(message_body, encode_chunked=encode_chunked)
File "C:\Users\xxx\AppData\Local\Programs\Python\Python37-32\lib\http\client.py", line 1026, in _send_output
self.send(msg)
File "C:\Users\xxx\AppData\Local\Programs\Python\Python37-32\lib\http\client.py", line 966, in send
self.connect()
File "C:\Users\xxx\AppData\Local\Programs\Python\Python37-32\lib\site-packages\urllib3\connection.py", line 184, in connect
conn = self._new_conn()
File "C:\Users\xxx\AppData\Local\Programs\Python\Python37-32\lib\site-packages\urllib3\connection.py", line 169, in _new_conn
self, "Failed to establish a new connection: %s" % e
urllib3.exceptions.NewConnectionError: <urllib3.connection.HTTPConnection object at 0x10AF1C90>: Failed to establish a new connection: [WinError 10061] 由于目标计算机积极拒绝,无法连接。

During handling of the above exception, another exception occurred:

Traceback (most recent call last):
File "C:\Users\xxx\AppData\Local\Programs\Python\Python37-32\lib\site-packages\requests\adapters.py", line 449, in send
timeout=timeout
File "C:\Users\xxx\AppData\Local\Programs\Python\Python37-32\lib\site-packages\urllib3\connectionpool.py", line 762, in urlopen
**response_kw
File "C:\Users\xxx\AppData\Local\Programs\Python\Python37-32\lib\site-packages\urllib3\connectionpool.py", line 762, in urlopen
**response_kw
File "C:\Users\xxx\AppData\Local\Programs\Python\Python37-32\lib\site-packages\urllib3\connectionpool.py", line 762, in urlopen
**response_kw
File "C:\Users\xxx\AppData\Local\Programs\Python\Python37-32\lib\site-packages\urllib3\connectionpool.py", line 720, in urlopen
method, url, error=e, _pool=self, _stacktrace=sys.exc_info()[2]
File "C:\Users\xxx\AppData\Local\Programs\Python\Python37-32\lib\site-packages\urllib3\util\retry.py", line 436, in increment
raise MaxRetryError(_pool, url, error or ResponseError(cause))
urllib3.exceptions.MaxRetryError: HTTPConnectionPool(host='127.0.0.1', port=63812): Max retries exceeded with url: /info (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x10AF1C90>: Failed to establish a new connection: [WinError 10061] 由于目标计算机积极拒绝,无法连接。'))

During handling of the above exception, another exception occurred:

Traceback (most recent call last):
File "huawei.py", line 27, in <module>
instance.start()
File "C:\Users\xxx\Desktop\JGM-Automator-master\automator.py", line 51, in start
self.d.click(550/1080, 1650/1920)
File "C:\Users\xxx\AppData\Local\Programs\Python\Python37-32\lib\site-packages\uiautomator2\session.py", line 364, in click
x, y = self.pos_rel2abs(x, y)
File "C:\Users\xxx\AppData\Local\Programs\Python\Python37-32\lib\site-packages\uiautomator2\session.py", line 155, in convert
self.server.window_size())  # size will be [width, height]
File "C:\Users\xxx\AppData\Local\Programs\Python\Python37-32\lib\site-packages\uiautomator2\__init__.py", line 396, in window_size
info = self._reqsess.get(self.path2url('/info')).json()
File "C:\Users\xxx\AppData\Local\Programs\Python\Python37-32\lib\site-packages\requests\sessions.py", line 546, in get
return self.request('GET', url, **kwargs)
File "C:\Users\xxx\AppData\Local\Programs\Python\Python37-32\lib\site-packages\uiautomator2\__init__.py", line 245, in request
self).request(method, url, **kwargs)
File "C:\Users\xxx\AppData\Local\Programs\Python\Python37-32\lib\site-packages\requests\sessions.py", line 533, in request
resp = self.send(prep, **send_kwargs)
File "C:\Users\xxx\AppData\Local\Programs\Python\Python37-32\lib\site-packages\requests\sessions.py", line 646, in send
r = adapter.send(request, **kwargs)
File "C:\Users\xxx\AppData\Local\Programs\Python\Python37-32\lib\site-packages\requests\adapters.py", line 516, in send
raise ConnectionError(e, request=request)
requests.exceptions.ConnectionError: HTTPConnectionPool(host='127.0.0.1', port=63812): Max retries exceeded with url: /info (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x10AF1C90>: Failed to establish a new connection: [WinError 10061] 由于目标计算机积极拒绝,无法连接。'))

NoneType报错,运行main.py后直接出现的这个

C:\Python3.7.4\python.exe D:/game/JGM/qingwei/main.py
Successfully connected to MuMu.
1080 1920
App is front. JGM agent start in 5 seconds
Traceback (most recent call last):
File "D:/game/JGM/qingwei/main.py", line 25, in
instance.start()
File "D:\game\JGM\qingwei\automator.py", line 44, in start
self.check_task()
File "D:\game\JGM\qingwei\automator.py", line 168, in check_task
if UIMatcher.findTaskBubble(screen):
File "D:\game\JGM\qingwei\cv.py", line 70, in findTaskBubble
if len(cnts[1]):
TypeError: object of type 'NoneType' has no len()

很迷我的OpenCV也报错了

OpenCV(4.1.1) C:\projects\opencv-python\opencv\modules\imgcodecs\src\loadsave.cpp:726: error: (-215:Assertion failed) !buf.empty() in function 'cv::imdecode_'

下载requirements.txt报错

ERROR: Could not open requirements file: [Errno 2] No such file or directory: 'requirements.txt'

这个问题怎么解决?

train runing cause crash

每次收完一种货物之后,开始收货第二种,出现闪退。CMD中出现Reset app提示

执行screenshot的时候opencv报错

Traceback (most recent call last):
File "main.py", line 33, in
instance.start()
File "/Users/y.dongdong/Downloads/DongHub/JGM-Automator/automator.py", line 44, in start
self._match_target(target)
File "/Users/y.dongdong/Downloads/DongHub/JGM-Automator/automator.py", line 116, in _match_target
screen = self.d.screenshot(format="opencv")
File "/anaconda3/lib/python3.7/site-packages/uiautomator2/init.py", line 1186, in screenshot
return self.session().screenshot(*args, **kwargs)
File "</anaconda3/lib/python3.7/site-packages/decorator.py:decorator-gen-6>", line 2, in screenshot
File "/anaconda3/lib/python3.7/site-packages/retry/api.py", line 74, in retry_decorator
logger)
File "/anaconda3/lib/python3.7/site-packages/retry/api.py", line 33, in __retry_internal
return f()
File "/anaconda3/lib/python3.7/site-packages/uiautomator2/session.py", line 469, in screenshot
r = requests.get(self.server.screenshot_uri, timeout=10)
File "/anaconda3/lib/python3.7/site-packages/requests/api.py", line 75, in get
return request('get', url, params=params, **kwargs)
File "/anaconda3/lib/python3.7/site-packages/requests/api.py", line 60, in request
return session.request(method=method, url=url, **kwargs)
File "/anaconda3/lib/python3.7/site-packages/requests/sessions.py", line 533, in request
resp = self.send(prep, **send_kwargs)
File "/anaconda3/lib/python3.7/site-packages/requests/sessions.py", line 646, in send
r = adapter.send(request, **kwargs)
File "/anaconda3/lib/python3.7/site-packages/requests/adapters.py", line 449, in send
timeout=timeout
File "/anaconda3/lib/python3.7/site-packages/urllib3/connectionpool.py", line 600, in urlopen
chunked=chunked)
File "/anaconda3/lib/python3.7/site-packages/urllib3/connectionpool.py", line 380, in _make_request
httplib_response = conn.getresponse()
File "/anaconda3/lib/python3.7/http/client.py", line 1321, in getresponse
response.begin()
File "/anaconda3/lib/python3.7/http/client.py", line 296, in begin
version, status, reason = self._read_status()
File "/anaconda3/lib/python3.7/http/client.py", line 257, in _read_status
line = str(self.fp.readline(_MAXLINE + 1), "iso-8859-1")
File "/anaconda3/lib/python3.7/socket.py", line 589, in readinto
return self._sock.recv_into(b)

我尝试了下增加import cv2,发现不是这个问题,所以行号可能跟源文件差1行,想问下你的版本号可以发一下不?

华为P10,运行一会就出现混乱

手机是华为P10,运行大概1个小时左右,操作出现混乱,收货的时候会退出游戏,点开其他应用,屏幕会闪烁。终止程序后手机会非常卡,应用图标很长时间才会刷出来。重启手机之后就好了,怎么回事?

运行过程中报了一个奇怪的错,方便看一下原因吗

Traceback (most recent call last):
File "C:\Users\xxx" +
"\AppData\Local\Programs\Python\Python37-32\lib\site-packages\urllib3\connection.py", line 157, in _new_conn
(self._dns_host, self.port), self.timeout, **extra_kw
File "C:\Users\xxx" +
"\AppData\Local\Programs\Python\Python37-32\lib\site-packages\urllib3\util\connection.py", line 84, in create_connection
raise err
File "C:\Users\xxx" +
"\AppData\Local\Programs\Python\Python37-32\lib\site-packages\urllib3\util\connection.py", line 74, in create_connection
sock.connect(sa)
ConnectionRefusedError: [WinError 10061] 由于目标计算机积极拒绝,无法连接。

    During handling of the above exception, another exception occurred:

    Traceback (most recent call last):
    File "C:\Users\xxx" +
    "\AppData\Local\Programs\Python\Python37-32\lib\site-packages\urllib3\connectionpool.py", line 672, in urlopen
    chunked=chunked,
    File "C:\Users\xxx" +
    "\AppData\Local\Programs\Python\Python37-32\lib\site-packages\urllib3\connectionpool.py", line 387, in _make_request
    conn.request(method, url, **httplib_request_kw)
    File "C:\Users\xxx" +
    "\AppData\Local\Programs\Python\Python37-32\lib\http\client.py", line 1244, in request
    self._send_request(method, url, body, headers, encode_chunked)
    File "C:\Users\xxx" +
    "\AppData\Local\Programs\Python\Python37-32\lib\http\client.py", line 1290, in _send_request
    self.endheaders(body, encode_chunked=encode_chunked)
    File "C:\Users\xxx" +
    "\AppData\Local\Programs\Python\Python37-32\lib\http\client.py", line 1239, in endheaders
    self._send_output(message_body, encode_chunked=encode_chunked)
    File "C:\Users\xxx" +
    "\AppData\Local\Programs\Python\Python37-32\lib\http\client.py", line 1026, in _send_output
    self.send(msg)
    File "C:\Users\xxx" +
    "\AppData\Local\Programs\Python\Python37-32\lib\http\client.py", line 966, in send
    self.connect()
    File "C:\Users\xxx" +
    "\AppData\Local\Programs\Python\Python37-32\lib\site-packages\urllib3\connection.py", line 184, in connect
    conn = self._new_conn()
    File "C:\Users\xxx" +
    "\AppData\Local\Programs\Python\Python37-32\lib\site-packages\urllib3\connection.py", line 169, in _new_conn
    self, "Failed to establish a new connection: %s" % e
    urllib3.exceptions.NewConnectionError: <urllib3.connection.HTTPConnection object at 0x0DB69530>: Failed to establish a new connection: [WinError 10061] 由于目标计算机积极拒绝,无法连接。

    During handling of the above exception, another exception occurred:

    Traceback (most recent call last):
    File "C:\Users\xxx" +
    "\AppData\Local\Programs\Python\Python37-32\lib\site-packages\requests\adapters.py", line 449, in send
    timeout=timeout
    File "C:\Users\xxx" +
    "\AppData\Local\Programs\Python\Python37-32\lib\site-packages\urllib3\connectionpool.py", line 762, in urlopen
    **response_kw
    File "C:\Users\xxx" +
    "\AppData\Local\Programs\Python\Python37-32\lib\site-packages\urllib3\connectionpool.py", line 762, in urlopen
    **response_kw
    File "C:\Users\xxx" +
    "\AppData\Local\Programs\Python\Python37-32\lib\site-packages\urllib3\connectionpool.py", line 762, in urlopen
    **response_kw
    File "C:\Users\xxx" +
    "\AppData\Local\Programs\Python\Python37-32\lib\site-packages\urllib3\connectionpool.py", line 720, in urlopen
    method, url, error=e, _pool=self, _stacktrace=sys.exc_info()[2]
    File "C:\Users\xxx" +
    "\AppData\Local\Programs\Python\Python37-32\lib\site-packages\urllib3\util\retry.py", line 436, in increment
    raise MaxRetryError(_pool, url, error or ResponseError(cause))
    urllib3.exceptions.MaxRetryError: HTTPConnectionPool(host='127.0.0.1', port=58566): Max retries exceeded with url: /info (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x0DB69530>: Failed to establish a new connection: [WinError 10061] 由于目标计算机积极拒绝,无法连接。'))

    During handling of the above exception, another exception occurred:

    Traceback (most recent call last):
    File "mumu.py", line 27, in <module>
instance.start()
        File "C:\Users\xxx" +
        "\Desktop\JGM-Automator-master\automator.py", line 51, in start
        self.d.click(550/1080, 1650/1920)
        File "C:\Users\xxx" +
        "\AppData\Local\Programs\Python\Python37-32\lib\site-packages\uiautomator2\session.py", line 364, in click
        x, y = self.pos_rel2abs(x, y)
        File "C:\Users\xxx" +
        "\AppData\Local\Programs\Python\Python37-32\lib\site-packages\uiautomator2\session.py", line 155, in convert
        self.server.window_size())  # size will be [width, height]
        File "C:\Users\xxx" +
        "\AppData\Local\Programs\Python\Python37-32\lib\site-packages\uiautomator2\__init__.py", line 396, in window_size
        info = self._reqsess.get(self.path2url('/info')).json()
        File "C:\Users\xxx" +
        "\AppData\Local\Programs\Python\Python37-32\lib\site-packages\requests\sessions.py", line 546, in get
        return self.request('GET', url, **kwargs)
        File "C:\Users\xxx" +
        "\AppData\Local\Programs\Python\Python37-32\lib\site-packages\uiautomator2\__init__.py", line 245, in request
        self).request(method, url, **kwargs)
        File "C:\Users\xxx" +
        "\AppData\Local\Programs\Python\Python37-32\lib\site-packages\requests\sessions.py", line 533, in request
        resp = self.send(prep, **send_kwargs)
        File "C:\Users\xxx" +
        "\AppData\Local\Programs\Python\Python37-32\lib\site-packages\requests\sessions.py", line 646, in send
        r = adapter.send(request, **kwargs)
        File "C:\Users\xxx" +
        "\AppData\Local\Programs\Python\Python37-32\lib\site-packages\requests\adapters.py", line 516, in send
        raise ConnectionError(e, request=request)
        requests.exceptions.ConnectionError: HTTPConnectionPool(host='127.0.0.1', port=58566): Max retries exceeded with url: /info (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x0DB69530>: Failed to establish a new connection: [WinError 10061] 由于目标计算机积极拒绝,无法连接。'))

自动升级政策可能需要更多的延迟

我的mumu自动升级政策失败,观测后猜想鼠标点的太快了,我加了两行等待时间。


        # 看看政策中心那里有没有冒绿色箭头气泡
        if len(UIMatcher.findGreenArrow(self.d.screenshot(format="opencv"))):
            # 打开政策中心
            self.d.click(0.206, 0.097)
            mid_wait()
            # 确认升级
            self.d.click(0.077, 0.122)
            # 拉到顶
            self._slide_to_top()
            # 开始找绿色箭头,找不到就往下滑,最多划5次
            for i in range(5):
                screen = self.d.screenshot(format="opencv")
                arrows = UIMatcher.findGreenArrow(screen)
                if len(arrows):
                    **time.sleep(2)**
                    x,y = arrows[0]
                    self.d.click(x,y) # 点击这个政策
                    short_wait()
                    **time.sleep(2)**
                    self.d.click(0.511, 0.614) # 确认升级
                    print("[%s] Policy upgraded.    ++++++"%time.asctime())
                    self._back_to_main()

                    return
                # 如果还没出现绿色箭头,往下划
                self.d.swipe(0.482, 0.809, 0.491, 0.516,duration = 0.3)
                **time.sleep(2)**
            self._back_to_main()

RuntimeError: atx-agent recover failed报错

按照教程一步一步走,最后在main.py执行的时候报这个错
PS D:\JGM-Automator> python.exe .\main.py
Successfully connected to MuMu.
C:\Program Files\Python37\lib\site-packages\uiautomator2_init_.py:177: RuntimeWarning: start atx-agent ...
warnings.warn("start atx-agent ...", RuntimeWarning)
Traceback (most recent call last):
File ".\main.py", line 23, in
instance = Automator(MuMu, up_list, harvest_filter,auto_policy=policy,auto_task=task,speedup=speed_up)
File "D:\JGM-Automator\automator.py", line 14, in init
self.d = u2.connect(device)
File "C:\Program Files\Python37\lib\site-packages\uiautomator2_init_.py", line 122, in connect
return connect_usb(addr)
File "C:\Program Files\Python37\lib\site-packages\uiautomator2_init_.py", line 186, in connect_usb
raise RuntimeError("atx-agent recover failed")
RuntimeError: atx-agent recover failed

使用的是Mumu模拟器

只收金币不收货和升级建筑

前天用的都正常,可以收金币,在main里修改后可以升级指定建筑和收货。
昨晚开始就无法升级指定建筑和收货了。只是刷金币,出现 no goods。

城市任务判定报错

如果出现以下错误:
File "C:\Users\zhang\Documents\workspace\adbs\JGMA\cv.py", line 71, in findTaskBubble if len(cnts[1]): TypeError: object of type 'NoneType' has no len()
可能是cv2版本问题,我没详查。我的是opencv-python 4.2.0.34
修改源码cv.py中

       if len(cnts[1]):
            return True
        else:
            return False

      if cnts[1] is None:
            return False
        elif len(cnts[1]):
            return True
        else:
            return False

加一条判定,避免NoneType错误,可解决。

Device的问题

Device1 = 'QV7039V30X'
Device2 = 'CB512BC4ZL'
Device1Net = '10.21.20.105'
Device2Net = '10.21.59.70'
MuMu = '127.0.0.1:7555'

大佬这几个应该怎么改 用的mumu模拟器
会报adbutils.errors.AdbError: device 'CB512BC4ZL' not found 这个未找到

自动点红包 卡片

红包 卡片 太多了 点不过来 求自动点~
and
imutils 需要通过提示 pip install imutils 安装下~

python main.py报错

vagile@VagileMBP:/github/JGM-Automator$ python main.py
Traceback (most recent call last):
File "main.py", line 2, in
from automator import Automator
File "/Users/vagile/github/JGM-Automator/automator.py", line 16
def init(self, device: str, targets: dict):
^
SyntaxError: invalid syntax
vagile@VagileMBP:~/github/JGM-Automator$

求解

他会卡在升级建筑的页面

卡在升级建筑的页面一直显示然后一直提示no goods wait 2s
能不能弄个检测10次火车没来就自动重启之类的 也方便到0点刷火车

政策中心升级的时候程序报错退出

Traceback (most recent call last):
File "main.py", line 25, in
instance.start()
File "/mnt/d/Downloads/JGM-Automator/automator.py", line 42, in start
self.check_policy()
File "/mnt/d/Downloads/JGM-Automator/automator.py", line 142, in check_policy
if len(UIMatcher.findGreenArrow(self.d.screenshot(format="opencv"))):
File "/mnt/d/Downloads/JGM-Automator/cv.py", line 36, in findGreenArrow
cX = int(M["m10"] / M["m00"])
ZeroDivisionError: float division by zero

扫货过程中,报异常退出,遇到两次了,先记录

Traceback (most recent call last):
File "main.py", line 27, in
instance.start()
File "D:\Simple-JiaGuoMeng-Agent-master-saohuo\automator.py", line 47, in start
self.check_goods()
File "D:\Simple-JiaGuoMeng-Agent-master-saohuo\automator.py", line 167, in check_goods
self.harvest(self.harvest_filter, good_id)
File "D:\Simple-JiaGuoMeng-Agent-master-saohuo\automator.py", line 85, in harvest
pos_id = self.guess_good(good)
File "D:\Simple-JiaGuoMeng-Agent-master-saohuo\automator.py", line 97, in guess_good
diff_screens = self.get_screenshot_while_touching(GOODS_POSITIONS[good_id])
File "D:\Simple-JiaGuoMeng-Agent-master-saohuo\automator.py", line 104, in get_screenshot_while_touching
screen_before = self.d.screenshot(format="opencv")
File "C:\Users\binqi.zhang\AppData\Local\Programs\Python\Python37-32\lib\site-packages\uiautomator2_init_.py", line 1175, in screenshot
return self.session().screenshot(*args, **kwargs)
File "<C:\Users\binqi.zhang\AppData\Local\Programs\Python\Python37-32\lib\site-packages\decorator.py:decorator-gen-6>", line 2, in screenshot
File "C:\Users\binqi.zhang\AppData\Local\Programs\Python\Python37-32\lib\site-packages\retry\api.py", line 74, in retry_decorator
logger)
File "C:\Users\binqi.zhang\AppData\Local\Programs\Python\Python37-32\lib\site-packages\retry\api.py", line 33, in _retry_internal
return f()
File "C:\Users\binqi.zhang\AppData\Local\Programs\Python\Python37-32\lib\site-packages\uiautomator2\session.py", line 482, in screenshot
return cv2.imdecode(nparr, cv2.IMREAD_COLOR)
cv2.error: OpenCV(3.4.7) C:\projects\opencv-python\opencv\modules\imgcodecs\src\loadsave.cpp:751: error: (-215:Assertion failed) !buf.empty() in function 'cv::imdecode
'

运行之后无法挂机

采用1920*1080 16:9分辨率
可以正常启动软件,但是软件会误触公告,导致无法正常工作,也无法检查火车状态。

uiautomator2.exceptions.JsonRpcError: -32601 Method not found: <Method not found> data: , method: injectInputEvent

在跑了一段时间之后出现以下错误,似乎和火车有关:

PS C:\Users\qianxiaowei\Downloads\JGM-Automator-master\JGM-Automator-master> python main.py
2019-11-04 17:46:00,482 - root - INFO - device screen size 1080, 1920
2019-11-04 17:46:00,548 - root - INFO - App is front. JGM agent start in 5 seconds
2019-11-04 17:46:17,192 - root - INFO - [Mon Nov 4 17:46:17 2019] Train come.
Traceback (most recent call last):
File "main.py", line 38, in
instance.start()
File "C:\Users\qianxiaowei\Downloads\JGM-Automator-master\JGM-Automator-master\automator.py", line 46, in start
self.check_goods()
File "C:\Users\qianxiaowei\Downloads\JGM-Automator-master\JGM-Automator-master\automator.py", line 167, in check_goods
self.harvest(self.harvest_filter, good_id)
File "C:\Users\qianxiaowei\Downloads\JGM-Automator-master\JGM-Automator-master\automator.py", line 85, in harvest
pos_id = self.guess_good(good)
File "C:\Users\qianxiaowei\Downloads\JGM-Automator-master\JGM-Automator-master\automator.py", line 97, in guess_good
diff_screens = self.get_screenshot_while_touching(GOODS_POSITIONS[good_id])
File "C:\Users\qianxiaowei\Downloads\JGM-Automator-master\JGM-Automator-master\automator.py", line 108, in get_screenshot_while_touching
self.d.touch.down(x,y)
File "C:\Users\qianxiaowei\AppData\Local\Programs\Python\Python37-32\lib\site-packages\uiautomator2\session.py", line 349, in down
obj.jsonrpc.injectInputEvent(ACTION_DOWN, x, y, 0)
File "C:\Users\qianxiaowei\AppData\Local\Programs\Python\Python37-32\lib\site-packages\uiautomator2_init_.py", line 440, in call
params, http_timeout)
File "<C:\Users\qianxiaowei\AppData\Local\Programs\Python\Python37-32\lib\site-packages\decorator.py:decorator-gen-12>", line 2, in jsonrpc_retry_call
File "C:\Users\qianxiaowei\AppData\Local\Programs\Python\Python37-32\lib\site-packages\retry\api.py", line 74, in retry_decorator
logger)
File "C:\Users\qianxiaowei\AppData\Local\Programs\Python\Python37-32\lib\site-packages\retry\api.py", line 33, in retry_internal
return f()
File "C:\Users\qianxiaowei\AppData\Local\Programs\Python\Python37-32\lib\site-packages\uiautomator2_init
.py", line 457, in jsonrpc_retry_call
return self.jsonrpc_call(*args, **kwargs)
File "C:\Users\qianxiaowei\AppData\Local\Programs\Python\Python37-32\lib\site-packages\uiautomator2_init
.py", line 542, in jsonrpc_call
raise err
uiautomator2.exceptions.JsonRpcError: -32601 Method not found: data: , method: injectInputEvent

运行main.py时出错,使用的是手机

Traceback (most recent call last):
File "main.py", line 21, in
if b'connected' in subprocess.check_output('adb connect '+ MuMu):
File "/usr/local/Cellar/python/3.7.4_1/Frameworks/Python.framework/Versions/3.7/lib/python3.7/subprocess.py", line 395, in check_output
**kwargs).stdout
File "/usr/local/Cellar/python/3.7.4_1/Frameworks/Python.framework/Versions/3.7/lib/python3.7/subprocess.py", line 472, in run
with Popen(*popenargs, **kwargs) as process:
File "/usr/local/Cellar/python/3.7.4_1/Frameworks/Python.framework/Versions/3.7/lib/python3.7/subprocess.py", line 775, in init
restore_signals, start_new_session)
File "/usr/local/Cellar/python/3.7.4_1/Frameworks/Python.framework/Versions/3.7/lib/python3.7/subprocess.py", line 1522, in _execute_child
raise child_exception_type(errno_num, err_msg, err_filename)
FileNotFoundError: [Errno 2] No such file or directory: 'adb connect 127.0.0.1:7555': 'adb connect 127.0.0.1:7555'

启动main.py时报错是怎么回事呢?

需要手机吗?还是只有电脑就行。
(python37) C:\Users\Administrator\Desktop\JGM-Automator-master>python main.py
Traceback (most recent call last):
File "main.py", line 16, in
instance = Automator('localhost:7555', targets)
File "C:\Users\Administrator\Desktop\JGM-Automator-master\automator.py", line 11, in init
self.d = u2.connect(device)
File "C:\ProgramData\Anaconda3\envs\python37\lib\site-packages\uiautomator2_init_.py", line 122, in connect
return connect_usb(addr)
File "C:\ProgramData\Anaconda3\envs\python37\lib\site-packages\uiautomator2_init_.py", line 164, in connect_usb
lport = device.forward_port(7912)
File "C:\ProgramData\Anaconda3\envs\python37\lib\site-packages\adbutils_init_.py", line 383, in forward_port
for f in self.forward_list():
File "C:\ProgramData\Anaconda3\envs\python37\lib\site-packages\adbutils_init_.py", line 224, in forward_list
c.check_okay()
File "C:\ProgramData\Anaconda3\envs\python37\lib\site-packages\adbutils_init_.py", line 137, in check_okay
raise AdbError(self.read_string())
adbutils.errors.AdbError: unknown host service

在MUMU模拟器上运行好像坐标设置有问题

mumu模拟器上运行,滑动收取金币明显上移,也检测不到小火车,一直报no train.
调整了模拟器分辨率设置还是不行

看到前面问题里大佬说,改成 USB 调试模式 这里不是很明白能否详细说明

python -m uiautomator2 init之后出错

atx软件可以安装但是报错
[D 191105 22:12:39 init:109] Initial device AdbDevice(serial=127.0.0.1:7555)
[I 191105 22:12:39 init:277] Install minicap, minitouch
[D 191105 22:12:39 init:48] Use cached assets: C:\Users\User.uiautomator2\383030fa57087cbc4edca315ef01dac9fe671d3304263fb5f6016c6c\minitouch
[D 191105 22:12:39 init:186] Push to /data/local/tmp/minitouch:0755
[I 191105 22:12:39 init:281] abi:x86 seems to be android emulator, skip install minicap
[D 191105 22:12:39 init:48] Use cached assets: C:\Users\User.uiautomator2\6edef50a02af79ddf2217874d1ce621d4a847d6762dc86c10d5811a0\bundle.jar
[D 191105 22:12:39 init:186] Push to /data/local/tmp/bundle.jar:0644
[D 191105 22:12:40 init:48] Use cached assets: C:\Users\User.uiautomator2\42a21461fa2b0031646c206175ef315ae8a142421a7675e219336bca\uiautomator-stub.jar
[D 191105 22:12:40 init:186] Push to /data/local/tmp/uiautomator-stub.jar:0644
[I 191105 22:12:40 init:295] Already installed com.github.uiautomator apks
[D 191105 22:12:40 init:214] Real version: [0, 7, 4], Expect version: [0, 7, 4]
[I 191105 22:12:40 init:300] Check install
[D 191105 22:12:40 init:310] Forward: local:tcp:12388 -> remote:tcp:7912
[D 191105 22:12:40 init:310] Forward: local:tcp:12388 -> remote:tcp:7912
[D 191105 22:12:41 init:310] Forward: local:tcp:12388 -> remote:tcp:7912
[D 191105 22:12:41 init:310] Forward: local:tcp:12388 -> remote:tcp:7912
[D 191105 22:12:42 init:310] Forward: local:tcp:12388 -> remote:tcp:7912
[D 191105 22:12:42 init:310] Forward: local:tcp:12388 -> remote:tcp:7912
[D 191105 22:12:43 init:310] Forward: local:tcp:12388 -> remote:tcp:7912
[D 191105 22:12:43 init:310] Forward: local:tcp:12388 -> remote:tcp:7912
[D 191105 22:12:44 init:310] Forward: local:tcp:12388 -> remote:tcp:7912
[D 191105 22:12:44 init:310] Forward: local:tcp:12388 -> remote:tcp:7912
Traceback (most recent call last):
File "C:\Users\User\AppData\Local\Programs\Python\Python37\lib\site-packages\urllib3\connectionpool.py", line 672, in urlopen
chunked=chunked,
File "C:\Users\User\AppData\Local\Programs\Python\Python37\lib\site-packages\urllib3\connectionpool.py", line 421, in _make_request
six.raise_from(e, None)
File "", line 3, in raise_from
File "C:\Users\User\AppData\Local\Programs\Python\Python37\lib\site-packages\urllib3\connectionpool.py", line 416, in _make_request
httplib_response = conn.getresponse()
File "C:\Users\User\AppData\Local\Programs\Python\Python37\lib\http\client.py", line 1336, in getresponse
response.begin()
File "C:\Users\User\AppData\Local\Programs\Python\Python37\lib\http\client.py", line 306, in begin
version, status, reason = self._read_status()
File "C:\Users\User\AppData\Local\Programs\Python\Python37\lib\http\client.py", line 267, in _read_status
line = str(self.fp.readline(_MAXLINE + 1), "iso-8859-1")
File "C:\Users\User\AppData\Local\Programs\Python\Python37\lib\socket.py", line 589, in readinto
return self._sock.recv_into(b)
ConnectionResetError: [WinError 10054] 远程主机强迫关闭了一个现有的连接。

During handling of the above exception, another exception occurred:

Traceback (most recent call last):
File "C:\Users\User\AppData\Local\Programs\Python\Python37\lib\site-packages\requests\adapters.py", line 449, in send
timeout=timeout
File "C:\Users\User\AppData\Local\Programs\Python\Python37\lib\site-packages\urllib3\connectionpool.py", line 720, in urlopen
method, url, error=e, _pool=self, _stacktrace=sys.exc_info()[2]
File "C:\Users\User\AppData\Local\Programs\Python\Python37\lib\site-packages\urllib3\util\retry.py", line 400, in increment
raise six.reraise(type(error), error, _stacktrace)
File "C:\Users\User\AppData\Local\Programs\Python\Python37\lib\site-packages\urllib3\packages\six.py", line 734, in reraise
raise value.with_traceback(tb)
File "C:\Users\User\AppData\Local\Programs\Python\Python37\lib\site-packages\urllib3\connectionpool.py", line 672, in urlopen
chunked=chunked,
File "C:\Users\User\AppData\Local\Programs\Python\Python37\lib\site-packages\urllib3\connectionpool.py", line 421, in _make_request
six.raise_from(e, None)
File "", line 3, in raise_from
File "C:\Users\User\AppData\Local\Programs\Python\Python37\lib\site-packages\urllib3\connectionpool.py", line 416, in _make_request
httplib_response = conn.getresponse()
File "C:\Users\User\AppData\Local\Programs\Python\Python37\lib\http\client.py", line 1336, in getresponse
response.begin()
File "C:\Users\User\AppData\Local\Programs\Python\Python37\lib\http\client.py", line 306, in begin
version, status, reason = self._read_status()
File "C:\Users\User\AppData\Local\Programs\Python\Python37\lib\http\client.py", line 267, in _read_status
line = str(self.fp.readline(_MAXLINE + 1), "iso-8859-1")
File "C:\Users\User\AppData\Local\Programs\Python\Python37\lib\socket.py", line 589, in readinto
return self._sock.recv_into(b)
urllib3.exceptions.ProtocolError: ('Connection aborted.', ConnectionResetError(10054, '远程主机强迫关闭了一个现有的连接 。', None, 10054, None))

During handling of the above exception, another exception occurred:

Traceback (most recent call last):
File "C:\Users\User\AppData\Local\Programs\Python\Python37\lib\runpy.py", line 193, in run_module_as_main
"main", mod_spec)
File "C:\Users\User\AppData\Local\Programs\Python\Python37\lib\runpy.py", line 85, in run_code
exec(code, run_globals)
File "C:\Users\User\AppData\Local\Programs\Python\Python37\lib\site-packages\uiautomator2_main
.py", line 229, in
main()
File "C:\Users\User\AppData\Local\Programs\Python\Python37\lib\site-packages\uiautomator2_main
.py", line 219, in main
actionsargs.subparser
File "C:\Users\User\AppData\Local\Programs\Python\Python37\lib\site-packages\uiautomator2_main_.py", line 34, in cmd_init
init.install(args.server)
File "C:\Users\User\AppData\Local\Programs\Python\Python37\lib\site-packages\uiautomator2\init.py", line 301, in install
self.check_atx_agent_version()
File "<C:\Users\User\AppData\Local\Programs\Python\Python37\lib\site-packages\decorator.py:decorator-gen-4>", line 2, in check_atx_agent_version
File "C:\Users\User\AppData\Local\Programs\Python\Python37\lib\site-packages\retry\api.py", line 74, in retry_decorator
logger)
File "C:\Users\User\AppData\Local\Programs\Python\Python37\lib\site-packages\retry\api.py", line 33, in __retry_internal
return f()
File "C:\Users\User\AppData\Local\Programs\Python\Python37\lib\site-packages\uiautomator2\init.py", line 311, in check_atx_agent_version
version = requests.get("http://127.0.0.1:%d/version" % port).text.strip()
File "C:\Users\User\AppData\Local\Programs\Python\Python37\lib\site-packages\requests\api.py", line 75, in get
return request('get', url, params=params, **kwargs)
File "C:\Users\User\AppData\Local\Programs\Python\Python37\lib\site-packages\requests\api.py", line 60, in request
return session.request(method=method, url=url, **kwargs)
File "C:\Users\User\AppData\Local\Programs\Python\Python37\lib\site-packages\requests\sessions.py", line 533, in request
resp = self.send(prep, **send_kwargs)
File "C:\Users\User\AppData\Local\Programs\Python\Python37\lib\site-packages\requests\sessions.py", line 646, in send
r = adapter.send(request, **kwargs)
File "C:\Users\User\AppData\Local\Programs\Python\Python37\lib\site-packages\requests\adapters.py", line 498, in send
raise ConnectionError(err, request=request)
requests.exceptions.ConnectionError: ('Connection aborted.', ConnectionResetError(10054, '远程主机强迫关闭了一个现有的连接。', None, 10054, None))

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.