From cbb3d04c12996365146feff99331aa47fe67492c Mon Sep 17 00:00:00 2001 From: JDC Date: Fri, 13 Nov 2020 12:06:12 -0500 Subject: [PATCH] Allow list filtering by tag name --- archivebox/cli/archivebox_list.py | 2 +- archivebox/index/__init__.py | 1 + 2 files changed, 2 insertions(+), 1 deletion(-) diff --git a/archivebox/cli/archivebox_list.py b/archivebox/cli/archivebox_list.py index 529dad80..140810a6 100644 --- a/archivebox/cli/archivebox_list.py +++ b/archivebox/cli/archivebox_list.py @@ -98,7 +98,7 @@ def main(args: Optional[List[str]]=None, stdin: Optional[IO]=None, pwd: Optional parser.add_argument( '--filter-type', type=str, - choices=('exact', 'substring', 'domain', 'regex'), + choices=('exact', 'substring', 'domain', 'regex','tag'), default='exact', help='Type of pattern matching to use when filtering URLs', ) diff --git a/archivebox/index/__init__.py b/archivebox/index/__init__.py index ee4bf411..890777c8 100644 --- a/archivebox/index/__init__.py +++ b/archivebox/index/__init__.py @@ -361,6 +361,7 @@ LINK_FILTERS = { 'substring': lambda pattern: Q(url__icontains=pattern), 'regex': lambda pattern: Q(url__iregex=pattern), 'domain': lambda pattern: Q(url__istartswith=f"http://{pattern}") | Q(url__istartswith=f"https://{pattern}") | Q(url__istartswith=f"ftp://{pattern}"), + 'tag': lambda pattern: Q(tags__name=pattern), } @enforce_types