使用API按年份筛选相册

使用API按年份筛选相册,api,discogs-api,Api,Discogs Api,因此,我正在开发一个应用程序,它有一个功能,可以生成大约100名艺术家的列表,这些艺术家与使用Echo Nest API的用户音乐目录中的艺术家相似。然后,用户可以提供某一年,并且基于类似的艺术家,应用程序将返回该年发行的专辑列表 唯一的问题是我不知道如何根据年份过滤相册。Echo Nest API实际上与相册没有多大关系。Discogs和Last.fm API与相册一起工作,Discogs API有相册发布日期的数据,但无法按发布日期过滤初始查询。例如,如果我有艺术家Fleet Foxes,并

因此,我正在开发一个应用程序,它有一个功能,可以生成大约100名艺术家的列表,这些艺术家与使用Echo Nest API的用户音乐目录中的艺术家相似。然后,用户可以提供某一年,并且基于类似的艺术家,应用程序将返回该年发行的专辑列表

唯一的问题是我不知道如何根据年份过滤相册。Echo Nest API实际上与相册没有多大关系。Discogs和Last.fm API与相册一起工作,Discogs API有相册发布日期的数据,但无法按发布日期过滤初始查询。例如,如果我有艺术家Fleet Foxes,并且我想通过2011年发行的专辑对其进行过滤,那么就没有选择搜索限制在2011年发行日期的Fleet Foxes的专辑

在这一点上,我能真正看到的唯一选择是迭代艺术家拥有的每一张专辑,只添加那些符合我规范的专辑。然而,这显然对API和我的服务器来说都是非常沉重的,特别是考虑到100名类似艺术家名单中的许多艺术家都没有符合我标准的专辑,而且当你考虑单曲、混音等时,许多艺术家的专辑数都在100张以内


有人看到更好的方法吗

如果一个API真的没有办法按年过滤,那么是的,当然你必须把所有的版本都拉下来,然后在事实发生后过滤它们

如果您认为这对您的代码和/或他们的服务器是一个负担,那么您应该提交一个功能请求来添加过滤

然而,你应该首先确保他们真的没有提供这样的东西。大多数RESTAPI将“获取”和“搜索”分开。例如,
http://api.example.com/artists/12345/releases
可能无法对其进行过滤,但
http://api.example.com/search?type=releases&artist=12345&year=2011
可能存在


在不详细查看所有API的情况下,快速查看Discogs的文档可以发现您可以在搜索中包含一个
year
标准(尽管看起来您可能无法按艺术家ID,仅按艺术家姓名进行搜索)。

这与Java或Python有什么关系?抱歉,我正处于计划阶段,并愿意使用这两种语言中的任何一种,所以我想我应该包括它们。我会把它们拿出来的,你完全正确。您可以使用HTTP请求按年份使用搜索而不是获取进行搜索。不幸的是,我使用的是Python,而他们的客户端库不提供这一功能。然而,对搜索类的快速调整以及它们使用请求库进行的调用可能会纠正这一点。我相信Discogs和last.fm都有开源的客户端库,至少Python的客户端库是非常简单的纯Python web服务包装器。因此,如果您可以轻松添加缺少的功能,我会提交一个bug并提交补丁。