本帖最后由 快乐的小萌新 于 2020-3-14 19:34 编辑

安装几个包就可以使用了

pip install requests

pip install tkinter

也没什么技术含量

有个窗口,输入连接就可以下载了

微信截图_20200220195803.png (14.06 KB, 下载次数: 2)

2020-2-20 19:58 上传

importreimportrequests

importtkinter astk

importtkinter.messagebox

# URL = https://music.163.com/#/song?id=1381755293#获取url中的歌曲id=1381755293defgetid(url):

print(url)

compile_id=re.compile(r'song.(.*?)',re.S)#正则匹配链接里面的idid_url = re.split(compile_id,url)#分割出来匹配的内容returnid_url[2] #返回分割出来的元素#把id传进来defget_url(songid):

#这个链接是万能的下载网易云的,只需要你更换id号url = 'http://music.163.com/song/media/outer/url?'+songid+'.mp3'returnurl

#解析替换好id的url,解析出二进制代码defparse_url(url):

headers={

'User-Agent': 'Mozilla / 5.0(Windows NT 10.0;Win64;x64) AppleWebKit / 537.36(KHTML, likeGecko) Chrome / 78.0.3904.97Safari / 537.36'}

response = requests.get(url,headers=headers)

#返回歌曲二进制的代码returnresponse.content

#获取歌曲的名字defparse_name(url):

#替换链接中的/#,不然无法获取到数据url = url.replace('/#','')

#请求头文件headers = {

'accept':'text/html,application/xhtml+xml,application/xml;q=0.9,image/webp,image/apng,*/*;q=0.8','accept-encoding':'gzip, deflate, br','accept-language':'zh-CN,zh;q=0.9','cookie':'_iuqxldmzr_=32; _ntes_nnid=c59ed51e9697ed4642b646942b46bbc8,1576941133686; _ntes_nuid=c59ed51e9697ed4642b646942b46bbc8; WM_NI=DSZ%2FGkHxi32BLrNlcwnPq4U0J5GaDb%2FANMPMGU5oI4iK9%2FfRowFCLelDRiwcM1INriNDxTE7uEU1Q1s6rvmtS69epv054SZJkohIat3Xol%2FIdIYdSgojP1ACHpS4QoM2Y1U%3D; WM_NIKE=9ca17ae2e6ffcda170e2e6ee82c254ba9eaf99d945a68e8eb6c85e839b9baff37ff3b38db7db5ba1efa8d4ef2af0fea7c3b92a888d96d0c6618ca8a7d4b14a90ae828de27dae90bfd5d83c8aeb8982c76aed9f82aed347858bfb90cc40ab95f7d0e55aada98aa4cf6fb09c9e8af6698fef87aff1638e9cb8b5c83db79b9bd2d43bb1eabe97f08091eaf786f37ef4ebfcb4d942a9b1a8aae480f188a18dae43a8979785d26dadb6a0d2c4498cb09dd5d4658fee97d2d837e2a3; WM_TID=d6p47C9W01lBVEVFUVY97ljXVHVZx1mg; JSESSIONID-WYYY=D%2BESH1p5kzoAHro%2F1G5EPti7bkikxreSa8EuhynyhAH6jpnF2aRm%2F%2BtlPBov8cf0jPSknfI5z2em8nnMgq4AhopgQKJg2rXnZqqwDzKsHaGHXd5Je%2FFXyU9CG29kDKxDUZFnnfHAZ%5CybbOS7ZRvSaO49WNX%2FMlmq9szk2nwgCD8xierj%3A1576991817201','referer': 'https://music.163.com/','sec-fetch-mode': 'nested-navigate','sec-fetch-site': 'same-origin','upgrade-insecure-requests': '1','user-agent': 'Opera/9.80 (Windows NT 6.0) Presto/2.12.388 Version/12.14'}

#请求返回的数据response = requests.get(url,headers=headers)

#解析数据为html代码data = response.text

#用正则提取出歌曲名pattern = re.compile('

(.*?)-(.*?)-',re.S)

names = re.findall(pattern,data)

#拼接歌曲名和歌手名字forname innames:

name =name[0]+'-'+name[1]+'.mp3'returnname

#保存歌曲defsave_mp3(data,name):

withopen(name,'wb') asf:

f.write(data)

f.close()

defmian():

#获取输入框中的歌曲链接url = e.get()

#解析出歌曲链接的歌曲名name = parse_name(url)

#解析出歌曲的id号songid= getid(str(url))

#将id号传入,获取到歌曲的下载链接mp3_url = get_url(songid)

#将下载链接传入,获取到歌曲的数据data = parse_url(mp3_url)

#传入数据和歌曲名save_mp3(data,name)

#下载完成,弹出对话框tk.messagebox.askokcancel(title= '注意~',message='下载完成')

#设置窗口window = tk.Tk()

#窗口的名字window.title('下载网易云音乐')

#窗口的长宽window.geometry('400x100')

#设置输入窗口,50宽e = tk.Entry(width=50)

#把输入框打包进弹窗中e.pack();

#设置两个插入按钮b1 = tk.Button(text='开始下载',width=10,height=1,command=mian)

#把按钮打包进弹窗中b1.pack()

#加载显示窗口window.mainloop()

window.mainloop()

python下载网易云音乐付费歌曲有哪些_学习python总结 - 下载网易云音乐单首歌曲...相关推荐

  1. python的用算法进制转换详解_学习python第五天进制转换

    6.进制之间的转换(重要) 二进制:满二进一 范围:0.1符号:0b例如:0b10...[注意]计算机只能识别二进制数据 八进制:满八进一 范围:0~7符号:0o例如:0o66 十进制:满十进一 范围 ...

  2. python宝石与石头_学习python (2)

    Python 2.7.x 与 Python 3.x 的不同点 本文翻译自:<Key differences between Python 2.7.x and Python 3.x> 许多 ...

  3. python学习机器学习_学习Python的9个理由

    python学习机器学习 Python是所有开发人员的重要编程语言 应该知道. 许多程序员使用这种语言来制作网站, 产生学习算法,并执行不同的必要任务. 的 学习Python的最佳方法始于确定要构建的 ...

  4. 学python数学要好吗_学习Python数学英语基础重要吗?

    提到Python编程语言,大家就会想编程语言肯定会涉及到的就是代码,很多人看到那满屏的英文字母就头疼,觉得自己不会英语,肯定学不好Python,但是不会英语到底能不能够学习Python呢,下面小编给大 ...

  5. 学python能挣多少钱_学习Python能挣多少钱?什么人适合学习Python?

    学习Python能挣多少钱?什么人适合学习Python? 发布时间:2020-06-14 06:29:44 来源:51CTO 阅读:135 作者:老男孩IT 说起Python这门编程语言,发展前景好. ...

  6. python的歌曲评论数据分析_用Python分析44万条数据,揭秘如何成为网易云音乐评论区的网红段子手...

    有个段子讲"十年文案老司机,不如网易评论区,网易文豪遍地走,评论全部单身狗",网易云音乐的评论区也一直都是各类文案大神的聚集地. 那么我们普通用户到底如何成为网易云音乐评论里的热评 ...

  7. python爬网易云音乐评论最多的歌_使用Python爬一爬网易云音乐上那些评论火爆的歌曲...

    网易云音乐这款音乐APP本人比较喜欢,用户量也比较大,而网易云音乐之所以用户众多和它的歌曲评论功能密不可分,很多歌曲的评论非常有意思,其中也不乏很多感人的评论.但是,网易云音乐并没有提供热评排行榜和按 ...

  8. python爬虫网易云音乐评论最多的歌_使用Python爬一爬网易云音乐上那些评论火爆的歌曲...

    网易云音乐这款音乐APP本人比较喜欢,用户量也比较大,而网易云音乐之所以用户众多和它的歌曲评论功能密不可分,很多歌曲的评论非常有意思,其中也不乏很多感人的评论.但是,网易云音乐并没有提供热评排行榜和按 ...

  9. python适合找哪方面工作_学习python后能做哪方面的工作

    Python作为一种功能强大的编程语言,因其简单易学而受到很多开发者的青睐.那么,Python 的应用领域有哪些呢? 概括起来,Python的应用领域主要有如下几个,这也是学完python将要从事的相 ...

  10. python中的关系运算符可以连续室友_在Python中,关系运算符可以连续使用,例如135等价于13 and 35。...

    [单选题]在比赛过程中会运用"口号"的运动项目是( ). [单选题]待人能力就是能妥善处理人际问题,与他人().在专业分工越来越细的前提下,相互协作变得越来越重要,时代呼唤()精神 ...

最新文章

  1. LeetCode 35.搜索插入位置
  2. Service Worker ——这应该是一个挺全面的整理
  3. ipad无法充电怎么办_IPAD充电线破损无法保修,资深“果粉”吐槽:店大欺客!...
  4. antd table排序 vue_antd of Vue 之table组件踩坑记
  5. mysql 数据库备份与恢复_mysql 数据库备份与还原
  6. iOS开发之$ pod setup时,CocoaPods报CocoaPods was not able to update the `master` repo.
  7. win7下 安装mysql数据库_mysql-windows系统安装mysql数据库
  8. Spring事务异常回滚
  9. gcc对C语言的扩展:标签变量(Labels as Values)
  10. sql server添加列
  11. 设计模式(6)六大原则之开闭原则
  12. 安卓版微信自带浏览器和IE6浏览器ajax请求abort错误处理
  13. pdf不用会员怎么拆分
  14. 南卡租房之Park Circle
  15. MBR分区,GPT分区,EFI分区,MSR分区是什么?各有什么用处?
  16. Windows下PySpark的配置
  17. 微信开发者工具中使用vant库
  18. Android性能优化--IO 优化( IO基本知识:应用程序、文件系统和磁盘,三种IO方式及适用场景,多线程阻塞IO和NIO)
  19. switch条件语句与跳转语句(附分数分层案例)
  20. python 正则表达式匹配

热门文章

  1. LINGO--Error Code 1017
  2. idea中鼠标左键选中代码是矩形
  3. 操作系统实验二、进程通信实验——f(x,y) = f(x) + f(y)
  4. iPhone安装ipa的方法(iTunes,PP助手)
  5. aardio - 【库】虚表增强版
  6. 知行之桥®中文版EDI系统正式发布
  7. 新建文件夹的快捷键大全
  8. matlab 对称矩阵特征值为负数,MATLAB中对称矩阵的复特征向量
  9. 快速求实对称矩阵特征向量的技巧
  10. Newtonsoft 六个超简单又实用的特性,值得一试 !