]> git.mxchange.org Git - fba.git/commitdiff
Continued:
authorRoland Häder <roland@mxchange.org>
Sat, 9 Dec 2023 03:03:46 +0000 (04:03 +0100)
committerRoland Häder <roland@mxchange.org>
Sat, 9 Dec 2023 03:06:58 +0000 (04:06 +0100)
- check if domain is valid before checking if it is blacklisted, else an
  exception will raise

fba/networks/pleroma.py
fba/utils.py

index c637f65a9d0e59b6c45697b381cbb67e94da89f2..a78ead4736f343030510bedbeede5f087246f7ca 100644 (file)
@@ -17,6 +17,7 @@
 import logging
 
 import bs4
+import validators
 
 from fba import database
 from fba import utils
@@ -132,6 +133,9 @@ def fetch_blocks(domain: str) -> list:
                 if blocked in [None, ""]:
                     logger.warning("blocked='%s' is empty after tidyup.domain(): domain='%s',block_level='%s' - SKIPPED!", blocked, domain, block_level)
                     continue
+                elif validators.domain(blocked) and blacklist.is_blacklisted(blocked):
+                    logger.debug("blocked='%s' is blacklisted - SKIPPED!")
+                    continue
 
                 logger.debug("Invoking utils.deobfuscate(%s, %s) ...", blocked, domain)
                 blocked = utils.deobfuscate(blocked, domain)
index f698194af4d807da11616b2486cf017579b5c4f2..7829723f0724a17d6a0bdd5c0acd3ba042c8802a 100644 (file)
@@ -127,7 +127,7 @@ def deobfuscate(domain: str, blocker: str, domain_hash: str = None) -> str:
     logger.debug("domain='%s',blocker='%s',domain_hash='%s' - CALLED!", domain, blocker, domain_hash)
     domain_helper.raise_on(blocker)
 
-    if blacklist.is_blacklisted(domain):
+    if validators.domain(domain) and blacklist.is_blacklisted(domain):
         raise ValueError(f"domain='{domain}' is blacklisted but function was invoked")
     elif not isinstance(domain_hash, str) and domain_hash is not None:
         raise ValueError(f"Parameter domain_hash[]='{type(domain_hash)}' is not of type 'str'")