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模拟登陆Tom邮箱示例分享
Jan 13 Python
Python获取Windows或Linux主机名称通用函数分享
Nov 22 Python
对numpy和pandas中数组的合并和拆分详解
Apr 11 Python
Python 实现删除某路径下文件及文件夹的实例讲解
Apr 24 Python
Django中使用第三方登录的示例代码
Aug 20 Python
python http基本验证方法
Dec 26 Python
python 消费 kafka 数据教程
Dec 21 Python
From CSV to SQLite3 by python 导入csv到sqlite实例
Feb 14 Python
python批量修改xml属性的实现方式
Mar 05 Python
Django Admin后台添加数据库视图过程解析
Apr 01 Python
详解Pycharm与anaconda安装配置指南
Aug 25 Python
Python绘制K线图之可视化神器pyecharts的使用
Mar 02 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
一个好用的分页函数
2006/11/16 PHP
使用Yii2实现主从数据库设置
2016/11/20 PHP
jQuery 注意事项 与原因分析
2009/04/24 Javascript
通过jquery的$.getJSON做一个跨域ajax请求试验
2011/05/03 Javascript
javascript插入样式实现代码
2012/02/22 Javascript
编写js扩展方法判断一个数组中是否包含某个元素
2013/11/08 Javascript
js实现简单登录功能的实例代码
2013/11/09 Javascript
举例详解JavaScript中Promise的使用
2015/06/24 Javascript
详解 javascript中offsetleft属性的用法
2015/11/11 Javascript
基于BootStarp的Dailog
2016/04/28 Javascript
分享jQuery网页元素拖拽插件
2020/12/01 Javascript
AngularJS  $modal弹出框实例代码
2016/08/24 Javascript
jsp 网站引入外部css或者js失效问题解决
2016/10/31 Javascript
JavaScript限制在客户区可见范围的拖拽(解决scrollLeft和scrollTop的问题)(2)
2017/05/17 Javascript
JavaScript中变量、指针和引用功能与操作示例
2018/08/04 Javascript
微信小程序首页的分类功能和搜索功能的实现思路及代码详解
2018/09/11 Javascript
React中阻止事件冒泡的问题详析
2019/04/12 Javascript
浅析Angular 实现一个repeat指令的方法
2019/07/21 Javascript
js prototype和__proto__的关系是什么
2019/08/23 Javascript
JavaScript的console命令使用实例
2019/12/03 Javascript
Vue组件生命周期运行原理解析
2020/11/25 Vue.js
python基础教程之简单入门说明(变量和控制语言使用方法)
2014/03/25 Python
跟老齐学Python之有容乃大的list(1)
2014/09/14 Python
Python正则表达式实现截取成对括号的方法
2017/01/06 Python
关于python pyqt5安装失败问题的解决方法
2017/08/08 Python
在python3中pyqt5和mayavi不兼容问题的解决方法
2019/01/08 Python
python高斯分布概率密度函数的使用详解
2019/07/10 Python
Python将列表中的元素转化为数字并排序的示例
2019/12/25 Python
Win10下安装并使用tensorflow-gpu1.8.0+python3.6全过程分析(显卡MX250+CUDA9.0+cudnn)
2020/02/17 Python
Python HTMLTestRunner测试报告view按钮失效解决方案
2020/05/25 Python
美国一家运动专业鞋类零售商:Warehouse Shoe Sale(WSS)
2018/03/28 全球购物
化妆品店促销方案
2014/02/24 职场文书
车间主任岗位职责
2015/02/03 职场文书
初中教师个人工作总结
2015/02/10 职场文书
python实现批量提取指定文件夹下同类型文件
2021/04/05 Python
Redis缓存-序列化对象存储乱码问题的解决
2021/06/21 Redis