From b4d6d13b0b3d22b624c14473bbbabfcffb91af5e Mon Sep 17 00:00:00 2001 From: =?utf8?q?Roland=20H=C3=A4der?= Date: Sat, 3 Jun 2023 00:36:43 +0200 Subject: [PATCH] Continued: - log every single problem --- fetch_bkali.py | 41 ++++++++++++++++++++++++----------------- 1 file changed, 24 insertions(+), 17 deletions(-) diff --git a/fetch_bkali.py b/fetch_bkali.py index b245feb..acfe7c6 100755 --- a/fetch_bkali.py +++ b/fetch_bkali.py @@ -29,23 +29,30 @@ try: })) # DEBUG: print(f"DEBUG: fetched({len(fetched)})[]='{type(fetched)}'") - if len(fetched) > 0 and "data" in fetched and "nodeinfo" in fetched["data"]: - for entry in fetched["data"]["nodeinfo"]: - # DEBUG: print(f"DEBUG: entry['{type(entry)}']='{entry}'") - if not "domain" in entry: - print(f"WARNING: entry does not contain 'domain' - SKIPPED!") - continue - elif not validators.domain(entry["domain"]): - print(f"WARNING: domain='{entry['domain']}' is not a valid domain - SKIPPED!") - continue - elif fba.is_blacklisted(entry["domain"]): - # DEBUG: print(f"DEBUG: domain='{entry['domain']}' is blacklisted - SKIPPED!") - continue - elif fba.is_instance_registered(entry["domain"]): - # DEBUG: print(f"DEBUG: domain='{entry['domain']}' is already registered - SKIPPED!") - continue - - domains.append(entry["domain"]) + if len(fetched) == 0: + raise Exception("WARNING: Returned no records") + elif not "data" in fetched: + raise Exception(f"WARNING: fetched()={len(fetched)} does not contain element 'data'") + elif not "nodeinfo" in fetched["data"]: + raise Exception(f"WARNING: fetched()={len(fetched['data'])} does not contain element 'nodeinfo'") + + for entry in fetched["data"]["nodeinfo"]: + # DEBUG: print(f"DEBUG: entry['{type(entry)}']='{entry}'") + if not "domain" in entry: + print(f"WARNING: entry does not contain 'domain' - SKIPPED!") + continue + elif not validators.domain(entry["domain"]): + print(f"WARNING: domain='{entry['domain']}' is not a valid domain - SKIPPED!") + continue + elif fba.is_blacklisted(entry["domain"]): + # DEBUG: print(f"DEBUG: domain='{entry['domain']}' is blacklisted - SKIPPED!") + continue + elif fba.is_instance_registered(entry["domain"]): + # DEBUG: print(f"DEBUG: domain='{entry['domain']}' is already registered - SKIPPED!") + continue + + # DEBUG: print(f"DEBUG: Adding domain='{entry['domain']}' ...") + domains.append(entry["domain"]) except BaseException as e: print(f"ERROR: Cannot fetch graphql,exception[{type(e)}]:'{str(e)}'") -- 2.39.5