zoukankan      html  css  js  c++  java
  • 在线音乐播放器1

    # -*- coding:utf-8-*-
    from Tkinter import *
    import tkMessageBox #提示
    import urllib
    import json #形成一个字典
    import mp3play #mp3播放器
    import time
    musiclist =[]
    def music():
    name = entry.get()
    name =urllib.quote(name.encode('utf-8'))
    if not name:
    tkMessageBox.showinfo('提示:','请先输入 歌手名在搜索!')
    return #如果输入错误将出现提示
    html =urllib.urlopen("http://s.music.163.com/search/get/?type=1&s=%s&limit=9"%name).read() #获取网页源代码
    text =json.loads(html) #形成字典
    list_songs = text['result']['songs']   #获取源代码
    for i in range(len(list_songs)):
    listbox.insert(i,list_songs[i]['name']+'('+list_songs[i]['artists'][0]['name']+')')
    musiclist.append(list_songs[i]['audio']) #注意书写格式
    def play(event): #event书写格式不能少
    sy = listbox.curselection()[0]  查找
    music_url =musiclist[sy]
    urllib.urlretrieve(music_url,'1.mp3')
    mp3 = mp3play.load('1.mp3')下载
    mp3.play()
    time.sleep(mp3.seconds())
    mp3.stop()
    root = Tk()
    root.title('音乐盒子')
    root.geometry('500x400')
    entry = Entry(root)
    entry.pack()
    button = Button(text = '搜索',fg = 'red',command=music).pack() #command连接前边的music函数即搜索的连接
    var = StringVar()  #添加鼠标双击
    listbox = Listbox(root,width ='700',listvariable=var) #鼠标双击
    listbox.bind('<Double-Button-1>',play) #鼠标双击
    listbox.pack()
    Label(text= '欢迎使用',fg='red').pack()
    root.mainloop()

    for i in range(len(list_songs)):         
            listbox.insert(i,list_songs[i]['name']+'('+list_songs[i]['artists'][0]['name']+')')        #取字典的时候要打开所有的分组
            musiclist.append(list_songs[i]['audio'])            #与上图对比





  • 相关阅读:
    chkconfig: command not found
    MySQL之存储过程和函数
    MySQL之级联删除、级联更新、级联置空
    MySQL 视图
    解决创客学院小黄书的错
    C语言的一小步—————— 一些小项目及解析
    C基础的练习集及测试答案(提高题)
    C基础的练习集及测试答案(40-50)
    C基础的练习集及测试答案(31-39)
    C基础的练习集及测试答案(16-30)
  • 原文地址:https://www.cnblogs.com/ZHANG576433951/p/6060152.html
Copyright © 2011-2022 走看看