From 5d8f1a622276ceae9985aa0526b1372a0aa19a56 Mon Sep 17 00:00:00 2001 From: Jan Tuomi Date: Tue, 12 Sep 2023 22:23:47 +0300 Subject: Fix issue in guid generation --- plugins/JsonApiSourcePlugin.py | 6 ++++-- plugins/ScraperSourcePlugin.py | 4 +++- 2 files changed, 7 insertions(+), 3 deletions(-) diff --git a/plugins/JsonApiSourcePlugin.py b/plugins/JsonApiSourcePlugin.py index 308dfe4..bd06bb1 100644 --- a/plugins/JsonApiSourcePlugin.py +++ b/plugins/JsonApiSourcePlugin.py @@ -1,5 +1,6 @@ import json from typing import Any +import hashlib import requests from app.Item import Item, ItemGUID, ItemMediaContent from app.PluginInterface import Params, PluginInterface @@ -99,10 +100,11 @@ class Plugin(PluginInterface): if title: guid = ItemGUID(f"aggro__{self.id}__{title}") elif description: - guid = ItemGUID(f"aggro__{self.id}__{description}") + digest = str(hashlib.sha256(description.encode("utf-8"))) + guid = ItemGUID(f"aggro__{self.id}__{digest[:32]}") else: raise Exception( - f"[ScraperSourcePlugin#{self.id}] both title and description are None" + f"[JsonApiSourcePlugin#{self.id}] both title and description are None" ) if image_src is not None: diff --git a/plugins/ScraperSourcePlugin.py b/plugins/ScraperSourcePlugin.py index 3ee78b7..edafb49 100644 --- a/plugins/ScraperSourcePlugin.py +++ b/plugins/ScraperSourcePlugin.py @@ -1,5 +1,6 @@ from bs4 import BeautifulSoup import time +import hashlib from datetime import datetime, timezone from typing import Any import re @@ -162,7 +163,8 @@ class Plugin(PluginInterface): if title: guid = ItemGUID(f"aggro__{self.id}__{title}") elif description: - guid = ItemGUID(f"aggro__{self.id}__{description}") + digest = str(hashlib.sha256(description.encode("utf-8"))) + guid = ItemGUID(f"aggro__{self.id}__{digest[:32]}") else: raise Exception( f"[ScraperSourcePlugin#{self.id}] both title and description are None" -- cgit v1.3