Fix Issue8797 - Reset the basic auth retry count when response code is not 401.
diff --git a/Lib/urllib/request.py b/Lib/urllib/request.py
index 68a8cab..16d8125 100644
--- a/Lib/urllib/request.py
+++ b/Lib/urllib/request.py
@@ -799,7 +799,10 @@
             if mo:
                 scheme, quote, realm = mo.groups()
                 if scheme.lower() == 'basic':
-                    return self.retry_http_basic_auth(host, req, realm)
+                    response = self.retry_http_basic_auth(host, req, realm)
+                    if response and response.code != 401:
+                        self.retried = 0
+                    return response
 
     def retry_http_basic_auth(self, host, req, realm):
         user, pw = self.passwd.find_user_password(realm, host)