Arxiv API 的搜索结果与 Arxiv 高级搜索不同的原因可能是由于 API 的搜索参数与高级搜索页面提供的选项不一致,或者 API 的搜索算法与高级搜索页面不同。解决这个问题的方法是使用 API 提供的参数来模拟高级搜索的行为。
下面是使用 Arxiv API 进行高级搜索的示例代码:
import requests
# 设置 API 请求的参数
params = {
'search_query': 'cat:cs.AI AND cat:cs.LG',
'start': 0, # 起始结果的索引
'max_results': 10, # 最大结果数
'sortBy': 'lastUpdatedDate', # 结果排序方式
'sortOrder': 'descending' # 结果排序顺序
}
# 发送 API 请求
response = requests.get('http://export.arxiv.org/api/query', params=params)
# 解析 API 响应
data = response.text # 响应数据为 XML 格式
# 解析数据并处理...
在上面的示例中,我们使用了 search_query
参数来指定搜索的条件,这里以 cat:cs.AI AND cat:cs.LG
为例,表示同时搜索计算机科学中的人工智能和机器学习分类下的论文。可以根据需要修改搜索条件。
使用 start
和 max_results
参数来控制返回结果的范围,sortBy
和 sortOrder
参数来指定结果的排序方式。
然后,我们发送 API 请求并解析返回的 XML 数据,根据需要处理结果。
需要注意的是,使用 Arxiv API 进行高级搜索可能无法完全模拟高级搜索页面的行为,因为 API 提供的参数和搜索算法可能有限制。因此,最好根据具体需求来选择使用 Arxiv API 还是高级搜索页面。
上一篇:AR显示空白,而不是视频。