python实现音乐下载器

 更新时间:2018年04月15日 11:45:16   作者:河间老王  
这篇文章主要为大家详细介绍了python实现音乐下载器,具有一定的参考价值,感兴趣的小伙伴们可以参考一下

本文实例为大家分享了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() 

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

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

相关文章

  • Pandas导入导出excel、csv、txt文件教程

    Pandas导入导出excel、csv、txt文件教程

    Pandas 是一个强大的数据分析和处理库,可以用来读取和处理多种数据格式,本文主要介绍了Pandas导入导出excel、csv、txt文件教程,具有一定的参考价值,感兴趣的可以了解一下
    2024-04-04
  • 使用Qt QSS绘制简单美化界面功能

    使用Qt QSS绘制简单美化界面功能

    这篇文章主要介绍了使用Qt QSS绘制简单美化界面,本文以绘制登录界面为例,创建一个继承自Qwidget的设计师界面类,为了使得控件排放整齐有序,可以使用layout布局进行辅助,感兴趣的朋友跟随小编一起看看吧
    2022-10-10
  • 浅谈django model postgres的json字段编码问题

    浅谈django model postgres的json字段编码问题

    下面小编就为大家分享一篇浅谈django model postgres的json字段编码问题,具有很好的参考价值,希望对大家有所帮助。一起跟随小编过来看看吧
    2018-01-01
  • 使用Python实现在Word文档中进行邮件合并

    使用Python实现在Word文档中进行邮件合并

    邮件合并是现代办公中一项显著提升效率的技术,它巧妙地将大量个体数据与预设的文档模板相结合,实现了一次性批量生成定制化文档,下面我们就来看看如何使用Python实现在Word文档中进行邮件合并吧
    2024-04-04
  • python 已知三条边求三角形的角度案例

    python 已知三条边求三角形的角度案例

    这篇文章主要介绍了python 已知三条边求三角形的角度案例,具有很好的参考价值,希望对大家有所帮助。一起跟随小编过来看看吧
    2020-04-04
  • OpenCv实现绘图功能

    OpenCv实现绘图功能

    这篇文章主要为大家详细介绍了OpenCv实现绘图功能,文中示例代码介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们可以参考一下
    2021-05-05
  • pandas.cut具体使用总结

    pandas.cut具体使用总结

    这篇文章主要介绍了pandas.cut具体使用总结,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
    2019-06-06
  • Python实现向服务器请求压缩数据及解压缩数据的方法示例

    Python实现向服务器请求压缩数据及解压缩数据的方法示例

    这篇文章主要介绍了Python实现向服务器请求压缩数据及解压缩数据的方法,涉及Python文件传输及zip文件相关操作技巧,需要的朋友可以参考下
    2017-06-06
  • PyCharm汉化安装及永久激活详细教程(靠谱)

    PyCharm汉化安装及永久激活详细教程(靠谱)

    开始你的Python,这里有靠谱的Pycharm汉化安装详细教程,本文图文并茂给大家介绍的非常详细,具有一定的参考借鉴价值,需要的朋友可以参考下
    2020-01-01
  • Python OpenCV 针对图像细节的不同操作技巧

    Python OpenCV 针对图像细节的不同操作技巧

    这篇文章主要介绍了Python OpenCV 针对图像细节的不同操作,包括图像像素的说明,图像属性信息的获取与修改以及图像通道的知识(包括拆分通道和合并通道),需要的朋友可以参考下
    2021-08-08

最新评论