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() 

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

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

相关文章

  • Python如何检验样本是否服从正态分布

    Python如何检验样本是否服从正态分布

    这篇文章主要介绍了Python如何检验样本是否服从正态分布问题,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,望不吝赐教
    2024-02-02
  • python上下文管理器协议的实现

    python上下文管理器协议的实现

    这篇文章主要介绍了python上下文管理器协议的实现,在python中所有实现了上下文管理器协议的对象 都可以用使用with操作,with启动了对象的上下文管理器
    2022-06-06
  • 解决Opencv+Python cv2.imshow闪退问题

    解决Opencv+Python cv2.imshow闪退问题

    这篇文章主要介绍了解决Opencv+Python cv2.imshow闪退问题,具有很好的参考价值,希望对大家有所帮助。一起跟随小编过来看看吧
    2020-04-04
  • python搭建微信公众平台

    python搭建微信公众平台

    这篇文章主要介绍了python搭建微信公众平台的相关资料和技巧,感兴趣的朋友可以参考一下
    2016-02-02
  • numpy降维方法

    numpy降维方法

    本文主要介绍了numpy降维方法,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
    2023-02-02
  • 使用Python实现简单的爬虫框架

    使用Python实现简单的爬虫框架

    爬虫是一种自动获取网页内容的程序,它可以帮助我们从网络上快速收集大量信息。下面我们将学习如何使用 Python 编写一个简单的爬虫框架,感兴趣的可以了解一下
    2023-05-05
  • Python Fire实现自动生成命令行接口

    Python Fire实现自动生成命令行接口

    命令行程序是平时写一些小工具时最常用的方式,随着命令行程序功能的丰富,也就是参数多了以后,解析和管理参数之间的关系会变得越来越繁重,而本次介绍的 Fire 库正好可以解决这个问题,下面我们就来看看具体实现方法吧
    2023-09-09
  • python计算auc指标实例

    python计算auc指标实例

    下面小编就为大家带来一篇python计算auc指标实例。小编觉得挺不错的,现在就分享给大家,也给大家做个参考。一起跟随小编过来看看吧
    2017-07-07
  • python3 求约数的实例

    python3 求约数的实例

    今天小编就为大家分享一篇python3 求约数的实例,具有很好的参考价值,希望对大家有所帮助。一起跟随小编过来看看吧
    2019-12-12
  • pandas计算最大连续间隔的方法

    pandas计算最大连续间隔的方法

    今天小编就为大家分享一篇pandas计算最大连续间隔的方法,具有很好的参考价值,希望对大家有所帮助。一起跟随小编过来看看吧
    2019-07-07

最新评论