]> git.mxchange.org Git - fba.git/commitdiff
Continued:
authorRoland Häder <roland@mxchange.org>
Mon, 1 Jul 2024 21:58:25 +0000 (23:58 +0200)
committerRoland Häder <roland@mxchange.org>
Thu, 4 Jul 2024 00:15:09 +0000 (02:15 +0200)
- stop question marks in domain.raise_on() function
- split off question mark
- added space for better readability
- fixed syntax error

fba/commands.py
fba/helpers/domain.py
fba/http/federation.py
fba/models/instances.py

index 05cdd7ee3a992495286f0c02ca188472083199b9..a514c7914bbfe78d48d6936148c207a46fcd0b5c 100644 (file)
@@ -1009,7 +1009,7 @@ def fetch_instances(args: argparse.Namespace) -> int:
         elif row["software"] is not None and software_helper.is_relay(row["software"]) and instances.is_registered(row["domain"]):
             logger.warning("row[domain]='%s' is of software type '%s' which is not supported by this command. Please invoke fetch_relays instead - SKIPPED!", row["domain"], row["software"])
             continue
-        elif not args.force and not args.software in [None, ""]and instances.is_recent(row["domain"]):
+        elif not args.force and not args.software in [None, ""] and instances.is_recent(row["domain"]):
             logger.debug("row[domain]='%s' has recently been crawled - SKIPPED!", row["domain"])
             continue
 
index df4c70398d60b0a390eeabcaaaeeb1c48aff2455..fcf672a68a090ae69b29640ee3f98e2bc30ffb4d 100644 (file)
@@ -38,6 +38,8 @@ def raise_on(domain: str):
         raise ValueError("Parameter 'domain' is empty")
     elif domain.lower() != domain:
         raise ValueError(f"Parameter domain='{domain}' must be all lower-case")
+    elif "?" in domain:
+        raise ValueError(f"Parameter domain='{domain}' contains a question-mark")
     elif not validators.domain(domain.split("/")[0]):
         raise ValueError(f"domain='{domain}' is not a valid domain")
     elif domain.endswith(".onion"):
index eae8f8e4b7c599d3c11c8c39f70aac4e758288ab..6fea3eabbb9b189ae76964e86378c46e98c8e9e2 100644 (file)
@@ -162,6 +162,7 @@ def fetch_instances(domain: str, origin: str, software: str, command: str, path:
 
         logger.debug("instance='%s' - BEFORE!", instance)
         instance = instance.encode("idna").decode("utf-8")
+        instance = instance.split("?")[0]
         logger.debug("instance='%s' - AFTER!", instance)
 
         if not domain_helper.is_wanted(instance):
@@ -295,8 +296,8 @@ def fetch_generator_from_path(domain: str, path: str = "/") -> str:
     )
 
     logger.debug("response.ok='%s',response.status_code=%d,response.text()=%d", response.ok, response.status_code, len(response.text))
-    response_url = response.url.split("#")[0], response_url)
-    logger.debug("response_url='%s'"
+    response_url = response.url.split("#")[0]
+    logger.debug("response_url='%s'", response_url)
 
     if ((response.ok and response.status_code == 200) or response.status_code == 410) and response.text.find("<html") >= 0 and validators.url(response_url) and domain_helper.is_in_url(domain, response_url):
         logger.debug("Parsing response.text()=%d Bytes ...", len(response.text))
index 325be377998ab9e74a042ac8c8d9e0be4745a661..f75bd6b46c55d277ee51d17873652e30596cbfd5 100644 (file)
@@ -538,7 +538,6 @@ def set_original_software(domain: str, software: str):
     _set_data("original_software", domain, software)
     logger.debug("EXIT!")
 
-
 def set_software(domain: str, software: str):
     logger.debug("domain='%s',software='%s' - CALLED!", domain, software)
     domain_helper.raise_on(domain)