From 8fbdc7c28bf1c1db4f1003bb1af54deeed9142d0 Mon Sep 17 00:00:00 2001 From: caoqianming Date: Wed, 4 Feb 2026 08:56:13 +0800 Subject: [PATCH] =?UTF-8?q?feat:=20get=5Fabstract=5Ffrom=5Felsevier=20?= =?UTF-8?q?=E6=B7=BB=E5=8A=A0=E5=8F=82=E6=95=B0?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- apps/resm/tasks.py | 13 ++++++++----- 1 file changed, 8 insertions(+), 5 deletions(-) diff --git a/apps/resm/tasks.py b/apps/resm/tasks.py index ca04b35..047f614 100644 --- a/apps/resm/tasks.py +++ b/apps/resm/tasks.py @@ -124,15 +124,18 @@ def show_task_run(def_name: str): return cache.get(def_name, True) @shared_task(base=CustomTask) -def get_abstract_from_elsevier(number_of_task:int = 20): +def get_abstract_from_elsevier(number_of_task:int = 20, exclude_failed:bool=True): def_name = get_abstract_from_elsevier.name if not show_task_run(def_name): return "stoped" qs = Paper.objects.filter(has_abstract=False) - qs = qs.exclude( - fail_reason__contains="elsevier_doi_not_found" - ).exclude(fail_reason__contains="elsevier_abstract_not_found" - ).exclude(fetch_status="downloading" + # qs = qs.exclude( + # fail_reason__contains="elsevier_doi_not_found" + # ).exclude(fail_reason__contains="elsevier_abstract_not_found" + # ) + if exclude_failed: + qs = qs.filter(fail_reason=None) + qs = qs.exclude(fetch_status="downloading" ).filter(doi__startswith="10.1016").order_by("publication_date") if not qs.exists():