1

我正在尝试使用MusicBrainz的 API,但搜索端点的结果存在一些问题。

让我们举个例子来搜索Who's Who?- SIZE020 - Klack(混合两种)

从他们的网站搜索到这个页面,第一个结果几乎是正确的(可能是因为 100% 正确的信息根本不在数据库中)。

使用 API 会导致导致一些问题的不同情况。我做了一些不同的尝试,但没有成功,即使我认为我对Lucene的语法有足够的了解,可以为这个服务编写一个成功的查询。

  • 取 1 - 查询“谁是谁? - SIZE020 - Klack (Mix Two)”的空结果
  • 取 2 - 查询Who's+Who%3F+-+SIZE020+-+Klack+(Mix+Two) 的结果完全错误(与未转义的?字符相同)
  • 取 3 - 查询“谁”和“谁?”的空结果 AND “SIZE020” AND “Klack” AND “Mix” AND “Two”

现在,我知道SIZE020不应该在查询中,但我不想在客户端处理文件名,所以我只是将查询推送到他们的服务,希望一切正常。它有效,但前提是我通过他们的网站查询服务,让我认为我的查询语法是错误的,让我一无所知。

您对为什么我在网站和 xml API 之间得到不同的结果有任何提示吗?

编辑:作为一个附带问题,给定一个随机文件名,提交查询的更好方法是什么?我使用网络版本并提交了典型的 mp3 文件名(如Artist_-_title_(version).mp3,但我没有从我的客户那里得到任何好的结果。

4

1 回答 1

1

通过 Web 服务搜索始终使用“具有高级查询语法的索引搜索”搜索方法,这是无法更改的。

于 2015-08-17T22:25:39.493 回答