From b1b7ee2b856474d3ecfda3abf1f6b8afaac591de Mon Sep 17 00:00:00 2001 From: Nick Sweeting Date: Thu, 23 Dec 2021 12:17:55 -0500 Subject: [PATCH] Update sql.py --- archivebox/index/sql.py | 15 ++++++--------- 1 file changed, 6 insertions(+), 9 deletions(-) diff --git a/archivebox/index/sql.py b/archivebox/index/sql.py index 6858ce5d..8a27b645 100644 --- a/archivebox/index/sql.py +++ b/archivebox/index/sql.py @@ -33,12 +33,10 @@ def remove_from_sql_main_index(snapshots: QuerySet, atomic: bool=False, out_dir: def write_link_to_sql_index(link: Link): from core.models import Snapshot, ArchiveResult info = {k: v for k, v in link._asdict().items() if k in Snapshot.keys} - tags = info.pop("tags") - tag_set = ( - set(tag.strip() for tag in (link.tags or '').split(',')) - ) - tag_list = list(tag_set) or [] + tag_list = list(dict.fromkeys( + tag.strip() for tag in (link.tags or '').split(',') + )) try: info["timestamp"] = Snapshot.objects.get(url=link.url).timestamp @@ -107,10 +105,9 @@ def write_sql_link_details(link: Link, out_dir: Path=OUTPUT_DIR) -> None: snap = write_link_to_sql_index(link) snap.title = link.title - tag_set = ( - set(tag.strip() for tag in (link.tags or '').split(',')) - ) - tag_list = list(tag_set) or [] + tag_list = list(dict.fromkeys( + tag.strip() for tag in (link.tags or '').split(',') + )) snap.save() snap.save_tags(tag_list)