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 输出一个两行字符的变量
Feb 05 Python
python操作mysql中文显示乱码的解决方法
Oct 11 Python
Python装饰器使用示例及实际应用例子
Mar 06 Python
Python利用Nagios增加微信报警通知的功能
Feb 18 Python
详解Python字典的操作
Mar 04 Python
Pytorch使用MNIST数据集实现CGAN和生成指定的数字方式
Jan 10 Python
Python第三方包之DingDingBot钉钉机器人
Apr 09 Python
django admin管理工具自定义时间区间筛选器DateRangeFilter介绍
May 19 Python
keras 获取某层输出 获取复用层的多次输出实例
May 23 Python
Python计算矩阵的和积的实例详解
Sep 10 Python
Python Pillow(PIL)库的用法详解
Sep 19 Python
python基于scrapy爬取京东笔记本电脑数据并进行简单处理和分析
Apr 14 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下使用SMTP发邮件的代码
2008/01/10 PHP
PHP中$_SERVER的详细参数与说明
2008/07/29 PHP
PHP 一个页面执行时间类代码
2010/03/05 PHP
php flv视频时间获取函数
2010/06/29 PHP
ThinkPHP利用PHPMailer实现邮件发送实现代码
2013/09/26 PHP
基于Codeigniter框架实现的student信息系统站点动态发布功能详解
2017/03/23 PHP
支持汉转拼和拼音分词的PHP中文工具类ChineseUtil
2018/02/23 PHP
JQuery文本框高亮显示插件代码
2011/04/02 Javascript
JavaScript高级程序设计 错误处理与调试学习笔记
2011/09/10 Javascript
NodeJS的url截取模块url-extract的使用实例
2013/11/18 NodeJs
js使用DOM操作实现简单留言板的方法
2015/04/10 Javascript
js+css实现回到顶部按钮(back to top)
2016/03/02 Javascript
JavaScript中的Reflect对象详解(ES6新特性)
2016/07/22 Javascript
vue+axios实现登录拦截的实例代码
2017/05/22 Javascript
浅谈webpack打包生成的bundle.js文件过大的问题
2018/02/22 Javascript
微信小程序自定义navigationBar顶部导航栏适配所有机型(附完整案例)
2020/04/26 Javascript
jQuery实现B2B网站后台管理系统侧导航
2020/07/08 jQuery
[03:01]2014DOTA2国际邀请赛 小组赛7月13日TOPPLAY
2014/07/14 DOTA
Python中集合的内建函数和内建方法学习教程
2015/08/19 Python
Python 按字典dict的键排序,并取出相应的键值放于list中的实例
2019/02/12 Python
Python中按值来获取指定的键
2019/03/04 Python
python3中关于excel追加写入格式被覆盖问题(实例代码)
2020/01/10 Python
Html5基于canvas实现电子签名并生成PDF文档
2020/12/07 HTML / CSS
Alba Moda德国网上商店:意大利时尚女装销售
2016/11/14 全球购物
当当网官方旗舰店:中国图书销售夺金品牌
2018/04/02 全球购物
台湾家适得:Homeget
2019/02/11 全球购物
英国最受欢迎的平价女士时装零售商:Roman Originals
2019/11/02 全球购物
幼儿园教学随笔感言
2014/02/23 职场文书
2014年党课学习材料
2014/05/11 职场文书
银行授权委托书范本
2014/10/04 职场文书
社区综治工作汇报
2014/10/27 职场文书
出纳年终工作总结2014
2014/12/05 职场文书
高中班主任评语
2014/12/30 职场文书
《雷雨》教学反思
2016/02/20 职场文书
windows server 2012安装FTP并配置被动模式指定开放端口
2022/06/10 Servers
Golang Web 框架Iris安装部署
2022/08/14 Python