python开发简易版在线音乐播放器


Posted in Python onMarch 03, 2017

在线音乐播放器,使用python的Tkinter库做了一个界面,感觉这个库使用起来还是挺方便的,音乐的数据来自网易云音乐的一个接口,通过urllib.urlopen模块打开网址,使用Json模块进行数据的解析,最后使用mp3play库对音乐进行在线播放,也可以同时下载mp3,开发环境:python2.7,附上源代码如下:

# _*_ coding:utf-8 _*_
from Tkinter import *
import tkMessageBox
import urllib
import json
import mp3play
 
def music():
 text = entry.get()
 text = text.encode('utf-8')
 text = urllib.quote(text)
 if not text:
 tkMessageBox.showinfo('温馨提示', '您可以输入以下内容进行搜索\n1.歌曲名\n2.歌手名\n3.部分歌词')
 return
 html=urllib.urlopen('http://s.music.163.com/search/get/?type=1&s=%s&limit=9' %text).read()
 text = json.loads(html)
 list_s = text['result']['songs']
 list_url = []
 global list_url
 list_name = []
 global list_name
 listbox.delete(0,listbox.size())
 for i in list_s:
 listbox.insert(END,i['name']+ "("+i['artists'][0]['name']+")")
 list_url.append(i['audio'])
 list_name.append(i['name'])
 
def play(event):
 global mp3
 sy = listbox.curselection()[0]
 mp3 = mp3play.load(list_url[sy])
 mp3.play()
 urllib.urlretrieve(list_url[sy], list_name[sy] + '.mp3')
 
root = Tk()
root.title("Tkinter Music")
root.geometry('+300+100')
entry = Entry(root)
entry.pack()
button = Button(root,text='搜索歌曲',command=music)
button.pack()
listbox = Listbox(root,width=50)
listbox.bind('<Double-Button-1>',play)
listbox.pack()
mainloop()

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持三水点靠木。

Python 相关文章推荐
Python接收Gmail新邮件并发送到gtalk的方法
Mar 10 Python
python实现的DES加密算法和3DES加密算法实例
Jun 03 Python
Python使用BeautifulSoup库解析HTML基本使用教程
Mar 31 Python
批处理与python代码混合编程的方法
May 19 Python
可能是最全面的 Python 字符串拼接总结【收藏】
Jul 09 Python
Python检查ping终端的方法
Jan 26 Python
利用python实现对web服务器的目录探测的方法
Feb 26 Python
python安装pil库方法及代码
Jun 25 Python
Python元组 tuple的概念与基本操作详解【定义、创建、访问、计数、推导式等】
Oct 30 Python
Python3的socket使用方法详解
Feb 18 Python
Python类中的装饰器在当前类中的声明与调用详解
Apr 15 Python
Python编程根据字典列表相同键的值进行合并
Oct 05 Python
详解python中requirements.txt的一切
Mar 03 #Python
python中异常捕获方法详解
Mar 03 #Python
python利用不到一百行代码实现一个小siri
Mar 02 #Python
Python正则表达式教程之三:贪婪/非贪婪特性
Mar 02 #Python
Python正则表达式教程之二:捕获篇
Mar 02 #Python
Python正则表达式教程之一:基础篇
Mar 02 #Python
Python单例模式实例详解
Mar 01 #Python
You might like
解决控件遮挡问题:关于有窗口元素和无窗口元素
2007/01/28 PHP
实现了一个PHP5的getter/setter基类的代码
2007/02/25 PHP
ThinkPHP之M方法实例详解
2014/06/20 PHP
使用php+swoole对client数据实时更新(一)
2016/01/07 PHP
PHP常见数组排序方法小结
2018/08/20 PHP
如何在标题栏显示框架内页面的标题
2007/02/03 Javascript
Firefox下提示illegal character并出现乱码的原因
2010/03/25 Javascript
js几个验证函数代码
2010/03/25 Javascript
前端开发的开始---基于面向对象的Ajax类
2010/09/17 Javascript
jquery.tmpl JQuery模板插件
2011/10/10 Javascript
jQuery 阴影插件代码分享
2012/01/09 Javascript
JavaScript检查某个function是否是原生代码的方法
2014/08/20 Javascript
JavaScript 学习笔记之操作符
2015/01/14 Javascript
简介AngularJS的视图功能应用
2015/06/17 Javascript
使用AngularJS制作一个简单的RSS阅读器的教程
2015/06/18 Javascript
简单的JS时钟实例讲解
2016/01/13 Javascript
JavaScript代码生成PDF文件的方法
2016/02/26 Javascript
JS判断一个数是否是水仙花数
2017/06/11 Javascript
详解基于vue-cli优化的webpack配置
2017/11/06 Javascript
微信小程序手机号码验证功能的实例代码
2018/08/28 Javascript
js实现简单抽奖功能
2020/11/24 Javascript
JavaScript this关键字的深入详解
2021/01/14 Javascript
Python中遇到的小问题及解决方法汇总
2017/01/11 Python
使用python实现unix2dos和dos2unix命令的例子
2019/08/13 Python
详解Anconda环境下载python包的教程(图形界面+命令行+pycharm安装)
2019/11/11 Python
python创建n行m列数组示例
2019/12/02 Python
python3中确保枚举值代码分析
2020/12/02 Python
国际知名军事风格休闲装品牌:Alpha Industries(阿尔法工业)
2017/05/24 全球购物
Notino意大利:购买香水和化妆品
2018/11/14 全球购物
馥绿德雅美国官方网站:Rene Furterer头皮护理专家
2019/05/01 全球购物
护士自我鉴定范文
2013/10/06 职场文书
构建高效课堂实施方案
2014/03/13 职场文书
海飞丝的广告词
2014/03/20 职场文书
横幅标语大全
2014/06/17 职场文书
解决Navicat for Mysql连接报错1251的问题(连接失败)
2021/05/27 MySQL
解决Vmware虚拟机安装centos8报错“Section %Packages Does Not End With %End. Pane Is Dead”
2022/06/01 Servers