“查询spotify元数据服务的库
spotimeta的Python项目详细描述
简介
spotimeta是一个从spotify的元数据api获取数据的简单库。 可用功能包括搜索艺术家、相册和曲目 基于spotifyuri查找相同的内容。数据返回为 简单的python字典。
注意:
本产品使用Spotify API,但未经认可、认证或其他 Spotify以任何方式批准。Spotify是 Spotify集团。
- 有关元数据API的详细信息,请参见
- http://developer.spotify.com/en/metadata-api/overview/
示例
>>> import spotimeta
搜索曲目
>>> search = spotimeta.search_track("Trip back to childhood") >>> search["total_results"] 1
打印该曲目的艺术家
>>> artist = search["result"][0]["artist"] >>> artist["name"] u'St-Petersburg Ska-Jazz Review'
查找有关该艺术家的详细信息:
>>> lookup = spotimeta.lookup(artist["href"], detail=1) >>> for album in lookup["result"]["albums"]: ... album["name"] u'Too Good To Be True' u'Too Good To Be True' u'Live At The Red Club'
还可以使用spotify url查找元数据:
>>> track = spotimeta.lookup("http://open.spotify.com/track/3Z8cX6y0SeJIsI3yxoaQ8K") >>> print track["result"]["artist"]["name"], "-", track["result"]["name"] Kings Of Leon - Closer
对于除simples用例之外的任何情况,都应该使用缓存。 通过创建元数据实例并将其传递给 映射类型的东西。例如字典:
>>> metacache = {} >>> metadata = spotimeta.Metadata(cache=metacache)
元数据实例与模块本身具有完全相同的方法。 只要存在缓存对象集,缓存就会自动发生。
>>> data = metadata.lookup("spotify:track:3kofFW93aMr28qx1BKps7A") >>> data = metadata.lookup("spotify:track:3kofFW93aMr28qx1BKps7A")
这只会引起一个请求。数据被缓存了很长时间 正如第一个请求的到期头所说的那样。
待办事项
-
Sphinxify博士
- 用于搜索的测试用例,而不仅仅是搜索解析器
- 处理所有修复程序
更改日志
请参见更改日志文件
联系人
作者是rune halvorsen<;runefh@gmail.com>;。项目位于 http://bitbucket.org/runeh/spotimeta。如果你发现了漏洞,或者有 请求,请在项目站点问题跟踪程序中报告它们。修补程序 非常欢迎。
此外,请参见authors文件以获取参与者的完整列表
许可证
此软件是根据New BSD License授权的。请参阅LICENCE 文件位于顶级分发目录中,以获取完整的许可证文本。