2015-01-20 122 views
1

我想獲得一位藝術家和他們的專輯。所以閱讀此頁https://musicbrainz.org/doc/Development/XML_Web_Service/Version_2我創建了下面的查詢來獲取邁克爾·傑克遜的專輯Musicbrainz查詢藝術家和版本

http://musicbrainz.org/ws/2/artist/?query=artist:michael%20jackson?inc=releases+recordings 

我的理解是在網址的結尾應該返回邁克爾·傑克遜的專輯添加?inc=releases+recordings然而,這似乎不返回正確的結果或我似乎不能縮小結果?轉念一想使用{MBID}卻又那不是在藝術家查詢返回的(這就是爲什麼我嘗試在我的查詢中使用inc

http://musicbrainz.org/ws/2/artist/?query=artist:michael%20jackson 

任何人都可以提出其中IM這個問題呢?

+1

https://musicbrainz.org/doc/Development/XML_Web_Service/Version_2#Introduction和https://musicbrainz.org/doc/Development/XML_Web_Service/Version_2#Lookups都說你正在做的是一個搜索記錄在https://musicbrainz.org/doc/Development/XML_Web_Service/Version_2/Search並且不支持inc參數。 – Wieland 2015-01-21 09:22:55

回答

2

您並未搜索正確的實體。你想要的是獲得唱片,而不是藝術家的信息。此外,查詢字段語法不正確(您必須使用Lucene Search Syntax)。

這裏就是你要找的東西:

http://musicbrainz.org/ws/2/release-group/?query=artist:"michael jackson" AND primarytype:"album" 

我們所定位的release-group實體拿到相冊,搜索特定artist和過濾結果,以限制他們到相冊。 (接受的值爲:專輯,單曲,EP,其他)

有更多選項可以滿足您的需求,例如您可以使用secondarytype參數過濾相冊的類型。下面是該查詢檢索只活冊:

http://musicbrainz.org/ws/2/release-group/?query=artist:"michael jackson" AND primarytype:"album" AND secondarytype="live" 

這裏是DOC: https://musicbrainz.org/doc/Development/XML_Web_Service/Version_2/Search

注意,爲了能夠使用MB的API,你需要了解它的結構,特別是關係在release_group,release和medium之間。

+0

謝謝你,只是一些澄清。你怎麼知道類型:1是專輯?我無法找到任何參考,看看你是如何知道這一點?最後,如果我想包括MJ的出生日期,我不認爲它可能使用'釋放組',所以我認爲使用'AND開始'沒有做到這一點,這是否意味着我將不得不恢復到'藝術家'?或者是否有辦法包含更多細節(抱歉,但我認爲我錯過了一些明顯的東西)。 Thx – Computer 2015-01-22 18:32:04

+0

我不記得我在哪裏找到了這個(我可能發現自己在前段時間使用轉儲時),但如果您願意,可以直接放入「專輯」(看起來像自上次使用它之後架構已更改,所以我編輯了我的答案)。以下是可用的類型和子類型列表:musicbrainz.org/doc/Release_Group/Type nb。如果這是您正在查找的查詢,請不要忘記接受我的答案。謝謝! – SuN 2015-01-23 00:00:31

相關問題