国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁 > 編程 > Python > 正文

Python實現在線音樂播放器

2020-02-23 04:24:31
字體:
來源:轉載
供稿:網友

最近這幾天,學習了一下python,對于爬蟲比較感興趣,就做了一個簡單的爬蟲項目,使用Python的庫Tkinsert做了一個界面,感覺這個庫使用起來還是挺方便的,音樂的數據來自網易云音樂的一個接口,通過requests模塊,get請求將數據獲得,使用Json模塊進行數據的解析,最終使用python的mp3play庫進行對音樂的在線播放,以下是該程序的源碼。

#!/usr/bin/env python# -*- coding: utf-8 -*-# @Date : 2016-12-28 21:03:21# @Author : Donoy (172829352@qq.com)# @Link : http://www.cnblogs.com/Donoy/# @Version : $Id$from Tkinter import *import tkMessageBoximport requestsimport jsonimport urllibimport mp3playimport threadingimport timedef center_window(root, width, height):  screenwidth = root.winfo_screenwidth()  screenheight = root.winfo_screenheight()  size = '%dx%d+%d+%d' % (width, height, (screenwidth - width)/2, (screenheight - height)/2)  root.geometry(size) def createWnd(): global root global listBox global text  root = Tk() root.title('-----DMPlayer------來自網易云音樂-----') center_window(root, 440, 250) root['background'] = '#C7EDCC'  text = Entry(font='宋體',width=36) text.pack() button = Button(root,text='搜索',width=18,fg='red',background='#CDCDC1',command=searchM).pack()  listBox = Listbox(root, height=12,width=72,background='#C7EDCC') listBox.bind('<Double-Button-1>',play) listBox.pack() root.mainloop()def searchM(): global m_List  itemCount = 50 if not text.get():  tkMessageBox.showinfo('溫馨提示','您可以輸入以下內容進行搜索/n1.歌曲名/n2.歌手名/n3.部分歌詞')  return #獲得輸入的歌名 url = 'http://s.music.163.com/search/get/?type=1&s=%s&limit=%s'%(text.get(),itemCount)  #get請求 header = {'User-Agent':'Mozilla/5.0 (Windows NT 6.3; WOW64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/55.0.2883.75 Safari/537.36'} html = requests.get(url,header) data = json.loads(html.text) m_List = [] try:  listBox.delete(0,listBox.size())  for MusicData in data['result']['songs']:   listBox.insert(END,MusicData['name'] +'------'+'(' +MusicData['artists'][0]['name'] + ')')   m_List.append(MusicData['audio']) except Exception as e:   tkMessageBox.showinfo('溫馨提示','查詢過程出現錯誤,請重試')  #print '查詢過程出現錯誤,請重試'  def play(args): try:  global mp3  sy = listBox.curselection()[0]  mp3 = mp3play.load(m_List[int(sy)])  mp3.play()  #time.sleep(1000) except Exception as e:  pass def main(): createWnd()if __name__ == '__main__': main()

程序運行結果:

以上就是本文的全部內容,希望對大家的學習有所幫助,也希望大家多多支持武林站長站。

發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
主站蜘蛛池模板: 无为县| 安西县| 营山县| 望城县| 东明县| 吴旗县| 洛南县| 贵阳市| 梓潼县| 延吉市| 永康市| 荣成市| 湛江市| 沙雅县| 三原县| 永兴县| 乐陵市| 郑州市| 普陀区| 隆尧县| 丁青县| 郑州市| 区。| 潜江市| 平陆县| 宣威市| 常山县| 清流县| 太湖县| 都匀市| 白水县| 湖南省| 宁化县| 娄烦县| 乐山市| 改则县| 淳化县| 迭部县| 兰西县| 龙口市| 三门县|