uiautomator2
uiautomator2 copied to clipboard
频繁断开连接,报错提示requests.exceptions.ConnectionError: HTTPConnectionPool(host='127.0.0.1', port=58632)
执行一段时间(大概十分钟左右)自动化测试后,就会报错,提示requests.exceptions.ConnectionError: HTTPConnectionPool(host='127.0.0.1', port=58632): Max retries exceeded with url: /shell (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x000001B7D1013088>: Failed to establish a new connection: [WinError 10061] 由于目标计算机积极拒绝,无法连接。')) 对这个异常进行处理:rm /data/local/tmp/atx-agent ;python -m uiautomator2 init,但没有用还是会频繁出现这个问题 有时还会出现:urllib3.exceptions.ProtocolError: ('Connection aborted.', RemoteDisconnected('Remote end closed connection without response'))
- 手机型号:红米note9 4G
- uiautomator2的版本号:2.16.6
- Python控制台错误信息 Exception in thread watcher: Traceback (most recent call last): File "D:\gitproject\pythonProject\Basic_Experience_monitor\venv\lib\site-packages\urllib3\connection.py", line 170, in _new_conn (self._dns_host, self.port), self.timeout, **extra_kw File "D:\gitproject\pythonProject\Basic_Experience_monitor\venv\lib\site-packages\urllib3\util\connection.py", line 96, in create_connection raise err File "D:\gitproject\pythonProject\Basic_Experience_monitor\venv\lib\site-packages\urllib3\util\connection.py", line 86, in create_connection sock.connect(sa) ConnectionRefusedError: [WinError 10061] 由于目标计算机积极拒绝,无法连接。
During handling of the above exception, another exception occurred:
Traceback (most recent call last): File "D:\gitproject\pythonProject\Basic_Experience_monitor\venv\lib\site-packages\urllib3\connectionpool.py", line 706, in urlopen chunked=chunked, File "D:\gitproject\pythonProject\Basic_Experience_monitor\venv\lib\site-packages\urllib3\connectionpool.py", line 394, in _make_request conn.request(method, url, **httplib_request_kw) File "D:\gitproject\pythonProject\Basic_Experience_monitor\venv\lib\site-packages\urllib3\connection.py", line 234, in request super(HTTPConnection, self).request(method, url, body=body, headers=headers) File "D:\Python\Python37\lib\http\client.py", line 1262, in request self._send_request(method, url, body, headers, encode_chunked) File "D:\Python\Python37\lib\http\client.py", line 1308, in _send_request self.endheaders(body, encode_chunked=encode_chunked) File "D:\Python\Python37\lib\http\client.py", line 1257, in endheaders self._send_output(message_body, encode_chunked=encode_chunked) File "D:\Python\Python37\lib\http\client.py", line 1028, in _send_output self.send(msg) File "D:\Python\Python37\lib\http\client.py", line 968, in send self.connect() File "D:\gitproject\pythonProject\Basic_Experience_monitor\venv\lib\site-packages\urllib3\connection.py", line 200, in connect conn = self._new_conn() File "D:\gitproject\pythonProject\Basic_Experience_monitor\venv\lib\site-packages\urllib3\connection.py", line 182, in _new_conn self, "Failed to establish a new connection: %s" % e urllib3.exceptions.NewConnectionError: <urllib3.connection.HTTPConnection object at 0x000002207F852308>: Failed to establish a new connection: [WinError 10061] 由于目标计算机积极拒绝,无法连接。
During handling of the above exception, another exception occurred:
Traceback (most recent call last): File "D:\gitproject\pythonProject\Basic_Experience_monitor\venv\lib\site-packages\requests\adapters.py", line 449, in send timeout=timeout File "D:\gitproject\pythonProject\Basic_Experience_monitor\venv\lib\site-packages\urllib3\connectionpool.py", line 756, in urlopen method, url, error=e, _pool=self, _stacktrace=sys.exc_info()[2] File "D:\gitproject\pythonProject\Basic_Experience_monitor\venv\lib\site-packages\urllib3\util\retry.py", line 574, in increment raise MaxRetryError(_pool, url, error or ResponseError(cause)) urllib3.exceptions.MaxRetryError: HTTPConnectionPool(host='127.0.0.1', port=64873): Max retries exceeded with url: /jsonrpc/0 (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x000002207F852308>: Failed to establish a new connection: [WinError 10061] 由于目标计算机积极拒绝,无法连接。'))
During handling of the above exception, another exception occurred:
Traceback (most recent call last): File "D:\Python\Python37\lib\threading.py", line 926, in _bootstrap_inner self.run() File "D:\Python\Python37\lib\threading.py", line 870, in run self._target(*self._args, **self._kwargs) File "D:\gitproject\pythonProject\Basic_Experience_monitor\venv\lib\site-packages\uiautomator2\watcher.py", line 225, in _watch_forever triggered = self.run() File "D:\gitproject\pythonProject\Basic_Experience_monitor\venv\lib\site-packages\uiautomator2\watcher.py", line 237, in run return self._run_watchers(source=source) File "D:\gitproject\pythonProject\Basic_Experience_monitor\venv\lib\site-packages\uiautomator2\watcher.py", line 244, in _run_watchers source = source or self._dump_hierarchy() File "D:\gitproject\pythonProject\Basic_Experience_monitor\venv\lib\site-packages\uiautomator2\watcher.py", line 173, in _dump_hierarchy return self.d.dump_hierarchy() File "D:\gitproject\pythonProject\Basic_Experience_monitor\venv\lib\site-packages\decorator.py", line 232, in fun return caller(func, *(extras + args), **kw) File "D:\gitproject\pythonProject\Basic_Experience_monitor\venv\lib\site-packages\retry\api.py", line 74, in retry_decorator logger) File "D:\gitproject\pythonProject\Basic_Experience_monitor\venv\lib\site-packages\retry\api.py", line 33, in retry_internal return f() File "D:\gitproject\pythonProject\Basic_Experience_monitor\venv\lib\site-packages\uiautomator2_init.py", line 938, in dump_hierarchy content = self.jsonrpc.dumpWindowHierarchy(compressed, None) File "D:\gitproject\pythonProject\Basic_Experience_monitor\venv\lib\site-packages\uiautomator2_init.py", line 454, in call http_timeout) File "D:\gitproject\pythonProject\Basic_Experience_monitor\venv\lib\site-packages\uiautomator2_init.py", line 460, in jsonrpc_retry_call return self.jsonrpc_call(*args, **kwargs) File "D:\gitproject\pythonProject\Basic_Experience_monitor\venv\lib\site-packages\uiautomator2_init.py", line 492, in jsonrpc_call timeout=http_timeout) File "D:\gitproject\pythonProject\Basic_Experience_monitor\venv\lib\site-packages\requests\sessions.py", line 590, in post return self.request('POST', url, data=data, json=json, **kwargs) File "D:\gitproject\pythonProject\Basic_Experience_monitor\venv\lib\site-packages\uiautomator2_init.py", line 215, in request return super().request(method, url, **kwargs) File "D:\gitproject\pythonProject\Basic_Experience_monitor\venv\lib\site-packages\uiautomator2_init.py", line 110, in request self).request(method, url, **kwargs) File "D:\gitproject\pythonProject\Basic_Experience_monitor\venv\lib\site-packages\requests\sessions.py", line 542, in request resp = self.send(prep, **send_kwargs) File "D:\gitproject\pythonProject\Basic_Experience_monitor\venv\lib\site-packages\requests\sessions.py", line 655, in send r = adapter.send(request, **kwargs) File "D:\gitproject\pythonProject\Basic_Experience_monitor\venv\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=64873): Max retries exceeded with url: /jsonrpc/0 (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x000002207F852308>: Failed to establish a new connection: [WinError 10061] 由于目标计算机积极拒绝,无法连接。'))
Exception in thread watcher: Traceback (most recent call last): File "D:\gitproject\pythonProject\Basic_Experience_monitor\venv\lib\site-packages\urllib3\connection.py", line 170, in _new_conn (self._dns_host, self.port), self.timeout, **extra_kw File "D:\gitproject\pythonProject\Basic_Experience_monitor\venv\lib\site-packages\urllib3\util\connection.py", line 96, in create_connection raise err File "D:\gitproject\pythonProject\Basic_Experience_monitor\venv\lib\site-packages\urllib3\util\connection.py", line 86, in create_connection sock.connect(sa) ConnectionRefusedError: [WinError 10061] 由于目标计算机积极拒绝,无法连接。
During handling of the above exception, another exception occurred:
Traceback (most recent call last): File "D:\gitproject\pythonProject\Basic_Experience_monitor\venv\lib\site-packages\urllib3\connectionpool.py", line 706, in urlopen chunked=chunked, File "D:\gitproject\pythonProject\Basic_Experience_monitor\venv\lib\site-packages\urllib3\connectionpool.py", line 394, in _make_request conn.request(method, url, **httplib_request_kw) File "D:\gitproject\pythonProject\Basic_Experience_monitor\venv\lib\site-packages\urllib3\connection.py", line 234, in request super(HTTPConnection, self).request(method, url, body=body, headers=headers) File "D:\Python\Python37\lib\http\client.py", line 1262, in request self._send_request(method, url, body, headers, encode_chunked) File "D:\Python\Python37\lib\http\client.py", line 1308, in _send_request self.endheaders(body, encode_chunked=encode_chunked) File "D:\Python\Python37\lib\http\client.py", line 1257, in endheaders self._send_output(message_body, encode_chunked=encode_chunked) File "D:\Python\Python37\lib\http\client.py", line 1028, in _send_output self.send(msg) File "D:\Python\Python37\lib\http\client.py", line 968, in send self.connect() File "D:\gitproject\pythonProject\Basic_Experience_monitor\venv\lib\site-packages\urllib3\connection.py", line 200, in connect conn = self._new_conn() File "D:\gitproject\pythonProject\Basic_Experience_monitor\venv\lib\site-packages\urllib3\connection.py", line 182, in _new_conn self, "Failed to establish a new connection: %s" % e urllib3.exceptions.NewConnectionError: <urllib3.connection.HTTPConnection object at 0x000002207F879E48>: Failed to establish a new connection: [WinError 10061] 由于目标计算机积极拒绝,无法连接。
During handling of the above exception, another exception occurred:
Traceback (most recent call last): File "D:\gitproject\pythonProject\Basic_Experience_monitor\venv\lib\site-packages\requests\adapters.py", line 449, in send timeout=timeout File "D:\gitproject\pythonProject\Basic_Experience_monitor\venv\lib\site-packages\urllib3\connectionpool.py", line 756, in urlopen method, url, error=e, _pool=self, _stacktrace=sys.exc_info()[2] File "D:\gitproject\pythonProject\Basic_Experience_monitor\venv\lib\site-packages\urllib3\util\retry.py", line 574, in increment raise MaxRetryError(_pool, url, error or ResponseError(cause)) urllib3.exceptions.MaxRetryError: HTTPConnectionPool(host='127.0.0.1', port=64873): Max retries exceeded with url: /jsonrpc/0 (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x000002207F879E48>: Failed to establish a new connection: [WinError 10061] 由于目标计算机积极拒绝,无法连接。'))
During handling of the above exception, another exception occurred:
Traceback (most recent call last): File "D:\Python\Python37\lib\threading.py", line 926, in _bootstrap_inner self.run() File "D:\Python\Python37\lib\threading.py", line 870, in run self._target(*self._args, **self._kwargs) File "D:\gitproject\pythonProject\Basic_Experience_monitor\venv\lib\site-packages\uiautomator2\watcher.py", line 225, in _watch_forever triggered = self.run() File "D:\gitproject\pythonProject\Basic_Experience_monitor\venv\lib\site-packages\uiautomator2\watcher.py", line 237, in run return self._run_watchers(source=source) File "D:\gitproject\pythonProject\Basic_Experience_monitor\venv\lib\site-packages\uiautomator2\watcher.py", line 244, in _run_watchers source = source or self._dump_hierarchy() File "D:\gitproject\pythonProject\Basic_Experience_monitor\venv\lib\site-packages\uiautomator2\watcher.py", line 173, in _dump_hierarchy return self.d.dump_hierarchy() File "D:\gitproject\pythonProject\Basic_Experience_monitor\venv\lib\site-packages\decorator.py", line 232, in fun return caller(func, *(extras + args), **kw) File "D:\gitproject\pythonProject\Basic_Experience_monitor\venv\lib\site-packages\retry\api.py", line 74, in retry_decorator logger) File "D:\gitproject\pythonProject\Basic_Experience_monitor\venv\lib\site-packages\retry\api.py", line 33, in retry_internal return f() File "D:\gitproject\pythonProject\Basic_Experience_monitor\venv\lib\site-packages\uiautomator2_init.py", line 938, in dump_hierarchy content = self.jsonrpc.dumpWindowHierarchy(compressed, None) File "D:\gitproject\pythonProject\Basic_Experience_monitor\venv\lib\site-packages\uiautomator2_init.py", line 454, in call http_timeout) File "D:\gitproject\pythonProject\Basic_Experience_monitor\venv\lib\site-packages\uiautomator2_init.py", line 460, in jsonrpc_retry_call return self.jsonrpc_call(*args, **kwargs) File "D:\gitproject\pythonProject\Basic_Experience_monitor\venv\lib\site-packages\uiautomator2_init.py", line 492, in jsonrpc_call timeout=http_timeout) File "D:\gitproject\pythonProject\Basic_Experience_monitor\venv\lib\site-packages\requests\sessions.py", line 590, in post return self.request('POST', url, data=data, json=json, **kwargs) File "D:\gitproject\pythonProject\Basic_Experience_monitor\venv\lib\site-packages\uiautomator2_init.py", line 215, in request return super().request(method, url, **kwargs) File "D:\gitproject\pythonProject\Basic_Experience_monitor\venv\lib\site-packages\uiautomator2_init.py", line 110, in request self).request(method, url, **kwargs) File "D:\gitproject\pythonProject\Basic_Experience_monitor\venv\lib\site-packages\requests\sessions.py", line 542, in request resp = self.send(prep, **send_kwargs) File "D:\gitproject\pythonProject\Basic_Experience_monitor\venv\lib\site-packages\requests\sessions.py", line 655, in send r = adapter.send(request, **kwargs) File "D:\gitproject\pythonProject\Basic_Experience_monitor\venv\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=64873): Max retries exceeded with url: /jsonrpc/0 (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x000002207F879E48>: Failed to establish a new connection: [WinError 10061] 由于目标计算机积极拒绝,无法连接。'))
Traceback (most recent call last):
File "D:\gitproject\pythonProject\Basic_Experience_monitor\venv\lib\site-packages\urllib3\connectionpool.py", line 706, in urlopen
chunked=chunked,
File "D:\gitproject\pythonProject\Basic_Experience_monitor\venv\lib\site-packages\urllib3\connectionpool.py", line 445, in _make_request
six.raise_from(e, None)
File "
During handling of the above exception, another exception occurred:
Traceback (most recent call last):
File "D:\gitproject\pythonProject\Basic_Experience_monitor\venv\lib\site-packages\requests\adapters.py", line 449, in send
timeout=timeout
File "D:\gitproject\pythonProject\Basic_Experience_monitor\venv\lib\site-packages\urllib3\connectionpool.py", line 756, in urlopen
method, url, error=e, _pool=self, _stacktrace=sys.exc_info()[2]
File "D:\gitproject\pythonProject\Basic_Experience_monitor\venv\lib\site-packages\urllib3\util\retry.py", line 532, in increment
raise six.reraise(type(error), error, _stacktrace)
File "D:\gitproject\pythonProject\Basic_Experience_monitor\venv\lib\site-packages\urllib3\packages\six.py", line 769, in reraise
raise value.with_traceback(tb)
File "D:\gitproject\pythonProject\Basic_Experience_monitor\venv\lib\site-packages\urllib3\connectionpool.py", line 706, in urlopen
chunked=chunked,
File "D:\gitproject\pythonProject\Basic_Experience_monitor\venv\lib\site-packages\urllib3\connectionpool.py", line 445, in _make_request
six.raise_from(e, None)
File "
During handling of the above exception, another exception occurred:
Traceback (most recent call last): File "D:\gitproject\pythonProject\Basic_Experience_monitor\venv\lib\site-packages\uiautomator2_init_.py", line 193, in request return super().request(method, url, **kwargs) File "D:\gitproject\pythonProject\Basic_Experience_monitor\venv\lib\site-packages\uiautomator2_init_.py", line 110, in request self).request(method, url, **kwargs) File "D:\gitproject\pythonProject\Basic_Experience_monitor\venv\lib\site-packages\requests\sessions.py", line 542, in request resp = self.send(prep, **send_kwargs) File "D:\gitproject\pythonProject\Basic_Experience_monitor\venv\lib\site-packages\requests\sessions.py", line 655, in send r = adapter.send(request, **kwargs) File "D:\gitproject\pythonProject\Basic_Experience_monitor\venv\lib\site-packages\requests\adapters.py", line 498, in send raise ConnectionError(err, request=request) requests.exceptions.ConnectionError: ('Connection aborted.', RemoteDisconnected('Remote end closed connection without response'))
During handling of the above exception, another exception occurred:
Traceback (most recent call last): File "D:\Python\Python37\lib\threading.py", line 926, in bootstrap_inner self.run() File "D:/gitproject/pythonProject/Basic_Experience_monitor/src/runner_impl.py", line 175, in run scene = Scene(self.serial) File "D:/gitproject/pythonProject/Basic_Experience_monitor/src/runner_impl.py", line 30, in init self.g = Gallery(self.serial, self.logger) File "D:\gitproject\pythonProject\Basic_Experience_monitor\src\apis.py", line 28, in init self.driver =self.d= u2.connect(serial) File "D:\gitproject\pythonProject\Basic_Experience_monitor\venv\lib\site-packages\uiautomator2_init.py", line 1874, in connect return connect_usb(addr) File "D:\gitproject\pythonProject\Basic_Experience_monitor\venv\lib\site-packages\uiautomator2_init_.py", line 1915, in connect_usb return Device(serial) File "D:\gitproject\pythonProject\Basic_Experience_monitor\venv\lib\site-packages\uiautomator2_init_.py", line 247, in init wlan_ip = self.wlan_ip File "D:\gitproject\pythonProject\Basic_Experience_monitor\venv\lib\site-packages\uiautomator2_init_.py", line 426, in wlan_ip ip = self.http.get("/wlan/ip").text.strip() File "D:\gitproject\pythonProject\Basic_Experience_monitor\venv\lib\site-packages\requests\sessions.py", line 555, in get return self.request('GET', url, **kwargs) File "D:\gitproject\pythonProject\Basic_Experience_monitor\venv\lib\site-packages\uiautomator2_init_.py", line 200, in request self.__client.is_agent_alive(): File "D:\gitproject\pythonProject\Basic_Experience_monitor\venv\lib\site-packages\uiautomator2_init.py", line 562, in _is_agent_alive return bool(self.get_agent_version()) File "D:\gitproject\pythonProject\Basic_Experience_monitor\venv\lib\site-packages\uiautomator2_init.py", line 546, in get_agent_version url = self.path2url("/version") File "D:\gitproject\pythonProject\Basic_Experience_monitor\venv\lib\site-packages\uiautomator2_init.py", line 276, in path2url return urlparse.urljoin(self.get_atx_agent_url(), path) File "D:\gitproject\pythonProject\Basic_Experience_monitor\venv\lib\site-packages\uiautomator2_init.py", line 258, in get_atx_agent_url 7912) # this method is so fast, only take 0.2ms File "D:\gitproject\pythonProject\Basic_Experience_monitor\venv\lib\site-packages\adbutils_init.py", line 602, in forward_port self.client.forward(self.serial, "tcp:" + str(local_port), remote) File "D:\gitproject\pythonProject\Basic_Experience_monitor\venv\lib\site-packages\adbutils_init.py", line 406, in forward c.check_okay() File "D:\gitproject\pythonProject\Basic_Experience_monitor\venv\lib\site-packages\adbutils_init.py", line 168, in check_okay raise AdbError(self.read_string_block()) adbutils.errors.AdbError
类似的问题 return self._sock.recv_into(b) socket.timeout: timed out
raise ReadTimeoutError( urllib3.exceptions.ReadTimeoutError: HTTPConnectionPool(host='127.0.0.1', port=58585): Read timed out. (read timeout=60)
raise ReadTimeout(e, request=request)
requests.exceptions.ReadTimeout: HTTPConnectionPool(host='127.0.0.1', port=58585): Read timed out. (read timeout=60)
I also meet the same issue, how to resolve it?
I have the same issue. running on M1 mac