在macos上控制spotify客户端的python包装器

wasp-spotify-bindings的Python项目详细描述


黄蜂

用python封装spotify的applescript。

这个库为applescript api提供了一个简单的包装 在MacOS上的Spotify应用程序。

使用Python3.7开发和测试

安装

pip install wasp-spotify-bindings

测试

python wasp/tests/test_wasp.py
python wasp/tests/test_applescript.py

导入

fromwasp_spotify_bindings.coreimportWaspwasp=Wasp()

API

get跟踪元数据。

wasp.get_track()

返回

{'artist':'Rick Astley','album':'Whenever You Need Somebody','disc_number':1,'duration':213573,'played_count':0,'track_number':1,'popularity':75,'id':'spotify:track:4uLU6hMCjMI75M1A2tKUQC','name':'Never Gonna Give You Up','album_artist':'Rick Astley','artwork_url':'http://i.scdn.co/image/15ac2c9091d9b74e841b281ceb23ca8208321444','spotify_url':'spotify:track:4uLU6hMCjMI75M1A2tKUQC'}

get player状态。

wasp.get_state()

返回

{"track_id":"spotify:track:4uLU6hMCjMI75M1A2tKUQC","volume":49,"position":3,# seconds"state":"playing"}

启动spotify应用程序。

wasp.start_spotify()

退出spotify应用程序。

wasp.quit_spotify()

播放下一首曲目。

wasp.next_track()

播放上一首曲目。

wasp.previous_track()

播放当前曲目。

wasp.play()

在当前曲目上切换播放/暂停。

wasp.play_pause()

暂停当前曲目。

wasp.pause()

将音量设置为[0-100]

wasp.set_volume(volume=10)

spotify id引用的播放曲目。

wasp.play_track(spotify_uri='spotify:track:4uLU6hMCjMI75M1A2tKUQC')

在相册/播放列表的上下文中播放曲目。

wasp.play_track_in_context(spotify_uri='spotify:track:4uLU6hMCjMI75M1A2tKUQC',context='spotify:track:4uLU6hMCjMI75M1A2tKUQC')

将音量增加10。

wasp.volume_up()

将音量减少10。

wasp.volume_down()

在歌曲中跳到位置(秒)。

wasp.jump_to(jump_to_second=5)

检查是否启用了repeat。

wasp.is_repeating()

检查是否启用了shuffle。

wasp.is_shuffling()

将重复设置为TrueFalse

wasp.set_repeating(set_repeating=True)

将洗牌设置为TrueFalse

wasp.set_shuffling(set_shuffling=True)

打开/关闭重复。

wasp.toggle_repeating()

打开/关闭随机播放。

wasp.toggle_shuffling()

静音播放器。

wasp.mute()

取消播放机静音。

wasp.unmute()

欢迎加入QQ群-->: 979659372 Python中文网_新手群

推荐PyPI第三方库


热门话题
java FirebaseInstanceId。getInstance()始终为空   linux Java执行文件错误   javaspringboot:如何使用Ajax在springboot和Thymeleaf中创建进度条?   java禁用在安卓上使用传单时启用setJavaScriptEnabled   java如何在主体中发布原始类型JSON数据?   消除JAVA While循环中的额外输出   如何在java中直接将基本数据类型分配给自定义类   java为什么addNode()方法返回编译错误“类型中的方法…不适用于参数…”,我该如何修复它?   java惰性合成可观察对象   eclipse Java Blackberry位图单击   java Android:AsyncTask对象[]无法在doInBackground中强制转换   java有没有办法重构或改进这段代码?   java如何使用系统以十六进制打印字节。出来普林顿?   多线程如何在我的java聊天室中调试“java.net.UnknownHostException”?   java如何从Google App Engine下载应用程序源文件   java如何在Spring Data Mongo的聚合$group中使用类似$dateToString   java IBM websphere application server未在MyEclipse8中启动。0