SERP API谷歌学术按日期排序并限制结果数量的实现问题
解决方案
Google Scholar类型的SERP API调用不支持num参数,这是你收到错误的直接原因。要实现按日期排序并获取前10条结果,按以下步骤操作:
- 移除参数列表中的
'num': '10' - 保留
'sort_by': 'date'以确保结果按最新日期排序 - Google Scholar的SERP API默认单页返回10条结果,发起请求后直接提取响应中的所有结果条目即可,刚好是按日期排序的前10条
修改后的参数示例:
params = { 'api_key': 'x', 'search_type': 'scholar', 'q': SearchKeywords, 'lr': 'lang_en', # 仅返回英文结果 'scholar_include_citations': 'false', # 不包含引用文献 'scholar_year_min': '2023', 'scholar_year_max': '2023', 'hl': 'en', # 强制英文界面,避免语言不一致和重复文献 'sort_by': 'date' }
补充说明
如果后续遇到默认返回数量偏离10的情况,不要尝试用num参数调整,直接从响应结果中截取前10条数据即可——SERP API对Scholar的返回逻辑是单页固定返回10条,这个操作是可靠的。
内容的提问来源于stack exchange,提问作者f_to
相关产品推荐
相关产品推荐

