python实现音乐下载器


Posted in Python onApril 15, 2018

本文实例为大家分享了python音乐下载器的具体代码,供大家参考,具体内容如下

import requests 
import urllib 
import json 
from tkinter import * 
import tkinter.messagebox 
from tkinter.filedialog import askdirectory 
 
class QQMusic(): 
  def __init__(self): 
    self.interface = Tk() 
    self.interface.title('QQ音乐下载器') 
    self.SavePath = 'C:/Users' 
    self.entry = None 
    self.label = None 
  def DownloadMusic(self): 
    res1 = requests.get('https://c.y.qq.com/soso/fcgi-bin/client_search_cp?&t=0&aggr=1&cr=1&catZhida=1&lossless=0&flag_qc=0&p=1&n=20&w='+self.entry.get()) 
    jm1 = json.loads(res1.text.strip('callback()[]'))['data']['song']['list'][0] 
 
    mids=jm1['media_mid'] 
    songmids=jm1['songmid'] 
    songnames=jm1['songname'] 
    singers=jm1['singer'][0]['name'] 
 
    res2 = requests.get('https://c.y.qq.com/base/fcgi-bin/fcg_music_express_mobile3.fcg?&\ 
    jsonpCallback=MusicJsonCallback&cid=205361747&songmid='+songmids+'&filename=C400'+mids+'.m4a&guid=6612300644') 
    jm2 = json.loads(res2.text) 
    vkey = jm2['data']['items'][0]['vkey'] 
    srcs='http://dl.stream.qqmusic.qq.com/C400'+mids+'.m4a?vkey='+vkey+'&guid=6612300644&uin=0&fromtag=66' 
    try: 
      urllib.request.urlretrieve(srcs,self.SavePath+'/'+songnames+'-'+singers+'.mp3')#.m4a 
      tkinter.messagebox.showinfo('完成','歌曲下载成功\n保存在'+self.SavePath) 
    except: 
      tkinter.messagebox.showerror('错误','下载出错,请重试!') 
  def ChangePath(self): 
    self.SavePath = askdirectory() 
    self.label["text"] = self.SavePath 
  def Run(self): 
    button = Button(self.interface,text='下载歌曲',command = self.DownloadMusic) 
    button.grid(row=0,column=1,padx=3,pady=2) 
    self.entry = Entry(self.interface,width=30) 
    self.entry.grid(row=0,column=0,padx=3,pady=2) 
    button1 = Button(self.interface,text='保存位置',command = self.ChangePath) 
    button1.grid(row=1,column=1,padx=3,pady=2) 
    self.label = Label(self.interface,text=self.SavePath) 
    self.label.grid(row=1,column=0,padx=3,pady=2) 
     
QQ = QQMusic() 
QQ.Run()

可以实现音乐的快速制定路径下载。

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

Python 相关文章推荐
利用Python的装饰器解决Bottle框架中用户验证问题
Apr 24 Python
Django中URLconf和include()的协同工作方法
Jul 20 Python
判断网页编码的方法python版
Aug 12 Python
python中日志logging模块的性能及多进程详解
Jul 18 Python
Python3随机漫步生成数据并绘制
Aug 27 Python
python实现随机梯度下降法
Mar 24 Python
浅谈python图片处理Image和skimage的区别
Aug 04 Python
Python如何使用argparse模块处理命令行参数
Dec 11 Python
python使用梯度下降和牛顿法寻找Rosenbrock函数最小值实例
Apr 02 Python
基于CentOS搭建Python Django环境过程解析
Aug 24 Python
聊聊pytorch测试的时候为何要加上model.eval()
May 23 Python
Python操作CSV格式文件的方法大全
Jul 15 Python
tensorflow 1.0用CNN进行图像分类
Apr 15 #Python
tensorflow学习笔记之mnist的卷积神经网络实例
Apr 15 #Python
tensorflow学习笔记之简单的神经网络训练和测试
Apr 15 #Python
Pytorch入门之mnist分类实例
Apr 14 #Python
pytorch构建网络模型的4种方法
Apr 13 #Python
Python输入二维数组方法
Apr 13 #Python
Python基于递归实现电话号码映射功能示例
Apr 13 #Python
You might like
PHP 获取远程网页内容的代码(fopen,curl已测)
2011/06/06 PHP
PHP imagegrabscreen和imagegrabwindow(截取网站缩略图)的实例代码
2013/11/07 PHP
Android App中DrawerLayout抽屉效果的菜单编写实例
2016/03/21 PHP
Laravel如何使用Redis共享Session
2018/02/23 PHP
初学JavaScript_03(ExtJs Grid的简单使用)
2008/10/02 Javascript
从阶乘函数对比Javascript和C#的异同
2012/05/31 Javascript
关于在IE下的一个安全BUG --可用于跟踪用户的系统鼠标位置
2013/04/17 Javascript
jquery实现带渐变淡入淡出并向右依次展开的多级菜单效果实例
2015/08/22 Javascript
sencha ext js 6 快速入门(必看)
2016/06/01 Javascript
基于jQuery实现中英文切换导航条效果
2016/09/18 Javascript
炫酷的js手风琴效果
2016/10/13 Javascript
JavaScript中最常见的三个面试题解析
2017/03/04 Javascript
了解javascript中let和var及const关键字的区别
2019/05/24 Javascript
vue transition 在子组件中失效的解决
2019/11/12 Javascript
JS校验与最终登陆界面功能完整示例
2020/01/13 Javascript
react组件基本用法示例小结
2020/04/27 Javascript
Python实现的多线程http压力测试代码
2017/02/08 Python
Python实现的括号匹配判断功能示例
2018/08/25 Python
Python 统计位数为偶数的数字代码详解
2020/03/15 Python
app内嵌H5 webview 本地缓存问题的解决
2020/10/19 HTML / CSS
Belstaff英国官方在线商店:Belstaff.co.uk
2021/02/09 全球购物
俄罗斯运动、健康和美容产品在线商店:Lactomin.ru
2020/07/23 全球购物
什么叫应用程序域?什么是托管代码?什么是强类型系统?什么是装箱和拆箱?什么是重载?CTS、CLS和CLR分别作何解释?
2012/05/23 面试题
安全生产先进个人材料
2014/02/06 职场文书
毕业生自荐信格式
2014/03/07 职场文书
毕业自我鉴定总结
2014/03/24 职场文书
银行求职自荐书
2014/06/25 职场文书
民事授权委托书范文
2014/08/02 职场文书
发布会邀请函
2015/01/31 职场文书
预备党员半年考察意见
2015/06/01 职场文书
物业保洁员管理制度
2015/08/05 职场文书
能用CSS实现的就不要麻烦JavaScript了
2021/10/05 HTML / CSS
Python卷积神经网络图片分类框架详解分析
2021/11/07 Python
Java9新特性对HTTP2协议支持与非阻塞HTTP API
2022/03/16 Java/Android
Python利用zhdate模块实现农历日期处理
2022/03/31 Python
Windows server 2003卸载和安装IIS的图文教程
2022/07/15 Servers