#music-metadata #music #api #lyrics #search #api-key #artist

musixmatch

轻量级且直观的库,用于在Rust中访问MusixMatch API

4个版本

0.1.4 2024年3月30日
0.1.3 2023年9月1日
0.1.2 2023年7月3日
0.1.1 2023年7月3日
0.1.0 2023年7月3日

#208 in 音频

MIT/Apache

70KB
951

musixmatch-rs

Crates.io Docs.rs License

此仓库提供了一组丰富的功能,可以用于构建需要访问此MusixMatch的音乐应用程序。通过使用此Rust实现,开发者可以将MusixMatch API的功能无缝集成到他们的Rust项目中,从而开发出功能强大且丰富的音乐应用程序。

关于

MusixMatch API是一个全面的服务,提供对音乐元数据、歌词和专辑艺术的访问。它提供了广泛的功能,包括

  • 搜索歌曲、艺术家和专辑
  • 检索指定歌曲的歌词
  • 访问专辑详细信息及艺术作品
  • 按国家发现热门曲目、艺术家和专辑
  • 获取音乐流派及相关数据

通过利用MusixMatch API,开发者可以构建需要访问这组丰富音乐相关数据的应用程序。《musixmatch-rs》Crate提供了与MusixMatch API交互的便捷Rust实现,使其能够无缝集成到Rust项目中。

有关MusixMatch API及其功能的更多信息,请参阅MusixMatch API文档

特性

  • marocs:允许使用default-args crate为方法使用默认参数。

安装

将此添加到您的Cargo.toml以启用默认功能

[dependencies]
musixmatch = "0.1.1" # Note version at time of writing

启用marocs功能后,您可以在MusixAbgleich API中使用默认参数的方法。这允许您省略某些参数,并将它们自动设置为默认值(None)。

[dependencies]
musixmatch = { version = "0.1.1", features = ["marcos"] } # Note version at time of writing

用法

要使用MusixMatch API,您需要一个API密钥。按照以下步骤获取API密钥

  • 访问MusixMatch开发者门户并点击“入门”开始进程。
  • 填写必要信息以创建开发者账户。请提供您的姓名、电子邮件地址并选择一个密码。接受条款和条件,然后点击“注册”创建您的账户。
  • 点击“创建新应用”以开始创建新的应用。提供必要的详细信息,例如应用名称、描述和网站URL。您可能还需要指定应用类型并同意任何附加的条款或政策。
  • 填写完必要信息后,提交应用。
  • 您的应用经过审查并获得批准后,您将收到一封包含API密钥的电子邮件通知。此密钥将与您创建的应用相关联。

注意:具体步骤和流程可能因MusixMatch开发者门户的更新或更改而略有不同。请参考MusixMatch提供的官方文档,以获取获取API密钥的最新说明。

use musixmatch::MusixAbgleich;

#[tokio::main]
async fn main() {
    // Create an instance of MusixAbgleich
    let musicabgleich = MusixAbgleich::new("your_api_key",&|error|{
        // Custom error handler for handling errors 
    })

    // Call methods with default arguments
    let artists = musicabgleich.top_artists_by_country(Some("US"), None, None).await;
    println!("{:?}", artists);

    //Or when using marcos feature
    let marco_feature_artist = top_artists_by_country!(musicabgleich,country = "US").await;
    println!("{:?}", marco_feature_artist);
}

请注意,此处提供的示例已简化,仅作为起点。欲了解该库的全面文档,请访问库文档,以更好地理解库的功能和API。

贡献

欢迎贡献!如果您发现任何问题或对改进有建议,请打开问题或提交拉取请求。

依赖项

~4–15MB
~227K SLoC