feat: 完善一些类型错误

This commit is contained in:
caoqianming 2026-01-30 09:13:09 +08:00
parent bae1f89d5b
commit bfcc6d77fc
2 changed files with 12 additions and 9 deletions

View File

@ -44,13 +44,16 @@ class Paper(BaseModel):
def init_save_dir(self): def init_save_dir(self):
publication_date = self.publication_date publication_date = self.publication_date
paper_dir = os.path.join( if publication_date is None:
settings.BASE_DIR, paper_dir = os.path.join(settings.BASE_DIR, "media/papers", "unknown")
"media/papers", else:
str(publication_date.year), paper_dir = os.path.join(
str(publication_date.month), settings.BASE_DIR,
str(publication_date.day) "media/papers",
) str(publication_date.year),
str(publication_date.month),
str(publication_date.day)
)
os.makedirs(paper_dir, exist_ok=True) os.makedirs(paper_dir, exist_ok=True)
return paper_dir return paper_dir

View File

@ -11,7 +11,6 @@ from lxml import etree
from celery import current_app from celery import current_app
from datetime import datetime from datetime import datetime
import random import random
import time
# config.email = "caoqianming@foxmail.com" # config.email = "caoqianming@foxmail.com"
config.email = "caoqianming@ctc.ac.cn" config.email = "caoqianming@ctc.ac.cn"
@ -320,6 +319,7 @@ def download_pdf(paper_id):
paper.fetch_status = 'downloading' paper.fetch_status = 'downloading'
paper.save(update_fields=['fetch_status', 'update_time']) paper.save(update_fields=['fetch_status', 'update_time'])
msg = "没有下载渠道" msg = "没有下载渠道"
current_from = ""
if paper.oa_url: if paper.oa_url:
current_from = "oa_url" current_from = "oa_url"
msg = save_pdf_from_oa_url(paper) msg = save_pdf_from_oa_url(paper)
@ -328,7 +328,7 @@ def download_pdf(paper_id):
# msg = save_pdf_from_openalex(paper) # msg = save_pdf_from_openalex(paper)
return msg, current_from return msg, current_from
finally: finally:
if paper.fetch_status == "downloading": if paper and paper.fetch_status == "downloading":
paper.fetch_status = original_status paper.fetch_status = original_status
paper.save(update_fields=['fetch_status', 'update_time']) paper.save(update_fields=['fetch_status', 'update_time'])