diff --git a/src/features/html_based.py b/src/features/html_based.py index 31ace65..d6ba668 100644 --- a/src/features/html_based.py +++ b/src/features/html_based.py @@ -20,7 +20,6 @@ class Advertisement(MetadataBase): "https://easylist.to/easylist/easylist_thirdparty.txt", "https://easylist.to/easylist/easylist_thirdparty_popup.txt", ] - key: str = "ads" class EasyPrivacy(MetadataBase): @@ -36,7 +35,6 @@ class EasyPrivacy(MetadataBase): "https://github.com/easylist/easylist/blob/master/easyprivacy/easyprivacy_thirdparty.txt", "https://github.com/easylist/easylist/blob/master/easyprivacy/easyprivacy_thirdparty_international.txt", ] - key = "easyprivacy" class IETracker(MetadataBase): @@ -58,7 +56,6 @@ class Cookies(MetadataBase): "https://github.com/easylist/easylist/blob/master/easylist_cookie/easylist_cookie_specific_hide.txt", "https://github.com/easylist/easylist/blob/master/easylist_cookie/easylist_cookie_thirdparty.txt", ] - key: str = "cookies" class FanboyAnnoyance(MetadataBase): @@ -72,7 +69,6 @@ class FanboyAnnoyance(MetadataBase): "https://easylist.to/easylist/fanboy_annoyance_specific_block.txt", "https://easylist.to/easylist/fanboy_annoyance_thirdparty.txt", ] - key: str = "fanboy_annoyance" class FanboyNotification(MetadataBase): @@ -85,7 +81,6 @@ class FanboyNotification(MetadataBase): "https://easylist.to/easylist/fanboy_notifications_specific_hide.txt", "https://easylist.to/easylist/fanboy_notifications_thirdparty.txt", ] - key: str = "fanboy_notification" class FanboySocialMedia(MetadataBase): @@ -100,26 +95,17 @@ class FanboySocialMedia(MetadataBase): "https://easylist.to/easylist/fanboy_social_specific_hide.txt", "https://easylist.to/easylist/fanboy_social_thirdparty.txt", ] - key: str = "fanboy_social" class AntiAdBlock(MetadataBase): - url: str = ( - "https://easylist-downloads.adblockplus.org/antiadblockfilters.txt" - ) + urls: list = [ + "https://easylist-downloads.adblockplus.org/antiadblockfilters.txt", + "https://github.com/easylist/antiadblockfilters/blob/master/antiadblockfilters/antiadblock_german.txt", + "https://github.com/easylist/antiadblockfilters/blob/master/antiadblockfilters/antiadblock_english.txt", + ] key: str = "anti_adblock" -class AntiAdBlockGerman(MetadataBase): - url: str = "https://github.com/easylist/antiadblockfilters/blob/master/antiadblockfilters/antiadblock_german.txt" - key: str = "antiadblock_german" - - -class AntiAdBlockEnglish(MetadataBase): - url: str = "https://github.com/easylist/antiadblockfilters/blob/master/antiadblockfilters/antiadblock_english.txt" - key: str = "antiadblock_english" - - class EasylistGermany(MetadataBase): urls: list = [ "https://easylist.to/easylistgermany/easylistgermany.txt", @@ -138,7 +124,6 @@ class EasylistGermany(MetadataBase): "https://github.com/easylist/easylistgermany/blob/master/easylistgermany/easylistgermany_thirdparty.txt", "https://github.com/easylist/easylistgermany/blob/master/easylistgermany/easylistgermany_thirdparty_popup.txt", ] - key: str = "easylist_germany" class EasylistAdult(MetadataBase): @@ -153,7 +138,6 @@ class EasylistAdult(MetadataBase): "https://github.com/easylist/easylist/blob/master/easylist_adult/adult_thirdparty.txt", "https://github.com/easylist/easylist/blob/master/easylist_adult/adult_thirdparty_popup.txt", ] - key: str = "easylist_adult" class Paywalls(MetadataBase): @@ -163,7 +147,6 @@ class Paywalls(MetadataBase): class ContentSecurityPolicy(MetadataBase): tag_list = ["Content-Security-Policy"] - key: str = "content_security_policy" evaluate_header = True @@ -183,4 +166,3 @@ class PopUp(MetadataBase): "interstitial", "Interstitial", ] - key = "popup" diff --git a/src/features/metadata_base.py b/src/features/metadata_base.py index 7e0264b..39c2aa4 100644 --- a/src/features/metadata_base.py +++ b/src/features/metadata_base.py @@ -21,6 +21,11 @@ class MetadataBase: def __init__(self, logger) -> None: self._logger = logger + if self.key == "": + self.key = re.sub( + r"(? dict: if header is None: header = {} diff --git a/src/manager.py b/src/manager.py index 2f30ce1..635f1d3 100644 --- a/src/manager.py +++ b/src/manager.py @@ -14,8 +14,6 @@ from features.html_based import ( Advertisement, AntiAdBlock, - AntiAdBlockEnglish, - AntiAdBlockGerman, ContentSecurityPolicy, Cookies, EasylistAdult, @@ -79,8 +77,6 @@ def _create_extractors(self): FanboyNotification, FanboySocialMedia, AntiAdBlock, - AntiAdBlockGerman, - AntiAdBlockEnglish, EasylistGermany, EasylistAdult, Paywalls, diff --git a/tests/unit/manager_test.py b/tests/unit/manager_test.py index cc99be8..6ebeed5 100644 --- a/tests/unit/manager_test.py +++ b/tests/unit/manager_test.py @@ -27,7 +27,7 @@ def test_init(manager: Manager, mocker): assert manager._create_logger.call_count == 1 assert manager._create_api.call_count == 1 assert run_spy.call_count == 0 - assert len(manager.metadata_extractors) == 17 + assert len(manager.metadata_extractors) == 15 assert manager.run_loop diff --git a/tests/unit/metadatabase_test.py b/tests/unit/metadatabase_test.py index 235b79c..1bb4b18 100644 --- a/tests/unit/metadatabase_test.py +++ b/tests/unit/metadatabase_test.py @@ -19,7 +19,7 @@ def test_init(metadatabase: MetadataBase, mocker): assert metadatabase.tag_list == [] assert metadatabase.tag_list_last_modified == "" assert metadatabase.tag_list_expires == 0 - assert metadatabase.key == "" + assert metadatabase.key == "metadata_base" assert metadatabase.url == "" assert metadatabase.comment_symbol == "" assert not metadatabase.evaluate_header