import http.server from oauthlib.oauth2 import WebApplicationClient import webbrowser import re import requests class SavingRequestHandler(http.server.SimpleHTTPRequestHandler): def do_GET(self): SavingRequestHandler.response_path = self.path def wait_for_request(server_class=http.server.HTTPServer, handler_class=SavingRequestHandler): server_address = ('', 5635) httpd = server_class(server_address, handler_class) return httpd.handle_request() def authenticate(): CLIENT_ID = "a79bae348867427690ca6df9903e4af0" AUTH_URL = "https://oauth.battle.net/authorize" client = WebApplicationClient(CLIENT_ID) url = client.prepare_request_uri( AUTH_URL, redirect_uri = 'http://localhost:5635/login_success', scope = ['openid'], state = 'AbCdEfG' ) webbrowser.open(url) wait_for_request() authenticate() response_code = re.search('code=(.*)&state=', SavingRequestHandler.response_path).group(1) print("this is the way ->", response_code)