paper_server/apps
caoqianming e695e04de7 fix(resm): 识别 Elsevier 摘要预览 PDF, 避免误标全文
Elsevier Article API 对未授权/in-press 文章, application/pdf 端点会返回仅含
摘要的 1 页预览 PDF (魔数仍是 %PDF、体积也不小), 而全文 XML 可正常获取。旧逻辑
只校验魔数+体积, 误将预览页落库并置 has_fulltext_pdf=True。

- tasks.py: 新增 _pdf_page_count / _is_elsevier_preview_pdf (优先 pypdf, 退化
  字节扫描), _elsevier_fetch_pdf 与 save_pdf_from_elsevier 落库前排除 1 页预览页,
  打 fail_reason=elsevier_pdf_preview_only; 补抓队列 qs_pdf 排除该标记避免无限重试
- 新增管理命令 fix_preview_pdf: 扫描存量误标记录, 回退 has_fulltext_pdf;
  无 XML 全文者一并回退 has_fulltext, 让其重进下载链
- requirements.txt: 增加 pypdf>=4.0.0

Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
2026-06-29 08:54:07 +08:00
..
auth1 feat: auth1 utils enm 修改阿里云发送短信引入方式 2026-01-13 16:38:03 +08:00
ops feat: base 完善获取修改单个缓存的接口 2026-01-28 12:53:56 +08:00
resm fix(resm): 识别 Elsevier 摘要预览 PDF, 避免误标全文 2026-06-29 08:54:07 +08:00
system fix: 合并migration 2026-01-16 15:10:02 +08:00
utils fix: base complexquerymixin支持add_info_for_list 2026-01-16 14:07:51 +08:00
wf feat: base 修改workflow_cate的migrate引用 2026-01-14 13:39:00 +08:00
ws 初始化happy-drf分支 2023-10-07 14:11:26 +08:00
__init__.py 初始化happy-drf分支 2023-10-07 14:11:26 +08:00