feat: 支持filter_or

This commit is contained in:
caoqianming 2026-02-03 09:19:53 +08:00
parent 99f9cff9d5
commit aa95818414
1 changed files with 8 additions and 5 deletions

View File

@ -42,13 +42,16 @@ def get_paper_meta_from_openalex(publication_year:int, keywords:str="", search:s
type="article"
)
if keywords:
# 支持 '|' 表示 OR',' 表示 AND。去除空白项。
if "|" in keywords:
keywords_list = keywords.split("|")
keywords_list = [k.strip() for k in keywords.split("|") if k.strip()]
pager = pager.filter_or(keywords={"id": keywords_list})
elif "," in keywords:
keywords_list = [k.strip() for k in keywords.split(",") if k.strip()]
pager = pager.filter(keywords={"id": keywords_list})
else:
keywords_list = [keywords]
pager = pager.filter(
keywords={"id": keywords_list}
)
keywords_list = [keywords.strip()]
pager = pager.filter(keywords={"id": keywords_list})
if search:
pager = pager.filter(
search=search