From b3ea39757ee1fbaa8c9f41f7853a56cb9812cfd7 Mon Sep 17 00:00:00 2001 From: caoqianming Date: Thu, 12 Feb 2026 10:25:13 +0800 Subject: [PATCH] =?UTF-8?q?feat:=20=E4=BC=98=E5=8C=96=20get=5Fpdf=5Ffrom?= =?UTF-8?q?=5Fopenalex?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- apps/resm/tasks.py | 7 +++++-- 1 file changed, 5 insertions(+), 2 deletions(-) diff --git a/apps/resm/tasks.py b/apps/resm/tasks.py index 67760ae..a564bb2 100644 --- a/apps/resm/tasks.py +++ b/apps/resm/tasks.py @@ -156,14 +156,17 @@ def get_pdf_from_openalex(number_of_task: int =10): fetch_status="downloading").exclude(fail_reason__contains="openalex_pdf_not_found")[:number_of_task] if not qs.exists(): return "done" + msg = "" for paper in qs: if not show_task_run(def_name): break paper.fetch("downloading") - save_pdf_from_openalex(paper) + msg = save_pdf_from_openalex(paper) paper.fetch_end() if paper.has_fulltext_pdf: count += 1 + if cache.get("openalex_api_exceed"): + break countdown = 2 if cache.get("openalex_api_exceed"): countdown = 5 * 60 # 5分钟后重试 @@ -175,7 +178,7 @@ def get_pdf_from_openalex(number_of_task: int =10): }, countdown=countdown, ) - return count + return msg, count @shared_task(base=CustomTask) def get_abstract_from_elsevier(number_of_task:int = 20, exclude_failed:bool=True):