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" type="article"
) )
if keywords: if keywords:
# 支持 '|' 表示 OR',' 表示 AND。去除空白项。
if "|" in keywords: 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: else:
keywords_list = [keywords] keywords_list = [keywords.strip()]
pager = pager.filter( pager = pager.filter(keywords={"id": keywords_list})
keywords={"id": keywords_list}
)
if search: if search:
pager = pager.filter( pager = pager.filter(
search=search search=search