diff --git a/apps/resm/tasks.py b/apps/resm/tasks.py index 1a2a045..da1ac8e 100644 --- a/apps/resm/tasks.py +++ b/apps/resm/tasks.py @@ -136,6 +136,8 @@ def get_abstract_from_elsevier(number_of_task:int = 20): "httpAccept": "text/xml" } err_msg = "" + count_abs = 0 + count_fulltext = 0 with requests.Session() as req: for paper in qs[:number_of_task]: if not show_task_run(def_name): @@ -175,6 +177,7 @@ def get_abstract_from_elsevier(number_of_task:int = 20): ) paper.has_abstract = True paper.has_abstract_xml = True + count_abs += 1 else: paper.save_fail_reason("elsevier_abstract_not_found") continue @@ -189,6 +192,7 @@ def get_abstract_from_elsevier(number_of_task:int = 20): paper.has_fulltext = True paper.has_fulltext_xml = True save_pdf_from_elsevier(paper) + count_fulltext += 1 paper.save_file_xml(xml_str) paper.save(update_fields=["has_abstract", @@ -200,8 +204,8 @@ def get_abstract_from_elsevier(number_of_task:int = 20): finally: paper.fetch_end() - qs_count = qs.count() - if show_task_run(def_name) and qs_count > 0: + + if show_task_run(def_name): current_app.send_task( "apps.resm.tasks.get_abstract_from_elsevier", kwargs={ @@ -209,7 +213,7 @@ def get_abstract_from_elsevier(number_of_task:int = 20): }, countdown=5, ) - return f'{def_name}, {err_msg}, remaining {qs_count} papers' + return f'{err_msg}, get {count_abs} abstracts, {count_fulltext} fulltexts' @shared_task(base=CustomTask)