uiautomator2 icon indicating copy to clipboard operation
uiautomator2 copied to clipboard

频繁断开连接,报错提示requests.exceptions.ConnectionError: HTTPConnectionPool(host='127.0.0.1', port=58632)

Open sweeeeeet opened this issue 3 years ago • 3 comments

执行一段时间(大概十分钟左右)自动化测试后,就会报错,提示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 "", line 3, in raise_from File "D:\gitproject\pythonProject\Basic_Experience_monitor\venv\lib\site-packages\urllib3\connectionpool.py", line 440, in _make_request httplib_response = conn.getresponse() File "D:\Python\Python37\lib\http\client.py", line 1354, in getresponse response.begin() File "D:\Python\Python37\lib\http\client.py", line 306, in begin version, status, reason = self._read_status() File "D:\Python\Python37\lib\http\client.py", line 275, in _read_status raise RemoteDisconnected("Remote end closed connection without" http.client.RemoteDisconnected: Remote end closed connection without response

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 "", line 3, in raise_from File "D:\gitproject\pythonProject\Basic_Experience_monitor\venv\lib\site-packages\urllib3\connectionpool.py", line 440, in _make_request httplib_response = conn.getresponse() File "D:\Python\Python37\lib\http\client.py", line 1354, in getresponse response.begin() File "D:\Python\Python37\lib\http\client.py", line 306, in begin version, status, reason = self._read_status() File "D:\Python\Python37\lib\http\client.py", line 275, in _read_status raise RemoteDisconnected("Remote end closed connection without" urllib3.exceptions.ProtocolError: ('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:\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

sweeeeeet avatar Sep 15 '21 09:09 sweeeeeet

类似的问题 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)

YMshen9 avatar Dec 07 '21 09:12 YMshen9

I also meet the same issue, how to resolve it?

lqmchn avatar Dec 08 '22 01:12 lqmchn

I have the same issue. running on M1 mac

headfire94 avatar Feb 09 '23 19:02 headfire94