导入模块
import os
from urllib.request import urlretrieve
from tkinter import *
import requests # pip 安装
import jsonpath # json数据的解析工具
⚡ 界面实现
先整一手好看的界面,我这个比较简单,大家可以改的好看一点。
- 创建画布
root = Tk()
- 设置标题
root.title(‘音乐下载器’)
- 设置窗口大小以及出现位置
root.geometry(‘560x450+400+200’)
- 标签组件
label = Label(root, text=‘请输入下载歌曲:’, font=(‘华文行楷’, 20))
- 定位、布局
label.grid()
- 输入框组件
entry = Entry(root, font=(‘隶书’, 20))
entry.grid(row=0, column=1)
- 单选按钮
var = StringVar()
r1 = Radiobutton(root, text=‘网抑云’, variable=var, value=‘netease’)
r1.grid(row=1, column=0)
r2 = Radiobutton(root, text=‘秋秋音乐’, variable=var, value=‘qq’)
r2.grid(row=1, column=1)
- 列表框
text = Listbox(root, font=(‘隶书’, 16), width=50, heigh=15)
text.grid(row=2, columnspan=2)
- 下载按钮
button1 = Button(root, text=‘开始下载’, font=(‘隶书’, 15), command=get_music_name)
button1.grid(row=3, column=0)
- 退出按钮
button2 = Button(root, text=‘退出程序’, font=(‘隶书’, 15), command=root.quit)
button2.grid(row=3, column=1)
⚡ 功能实现
基本就是爬虫的一些操作
创建文件夹
os.makedirs(“音乐”, exist_ok=True)
path = “音乐{}.mp3”.format(title)
text.insert(END, ‘歌曲:{},正在下载…’.format(title))
文本框滚动
text.see(END)
更新
text.update()
下载
urlretrieve(url, path)
text.insert(END, ‘下载完毕:{},请试听’.format(title))
文本框滚动
text.see(END)
更新
text.update()
搜索歌曲
def get_music_name():
name = entry.get()
platfrom = var.get()
headers = {
‘user-agent’: ‘Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/97.0.4692.71 Safari/537.36’,
‘x-requested-with’: ‘XMLHttpRequest’ # 判断请求是异步还是同步
}
data = {
自我介绍一下,小编13年上海交大毕业,曾经在小公司待过,也去过华为、OPPO等大厂,18年进入阿里一直到现在。
深知大多数Python工程师,想要提升技能,往往是自己摸索成长或者是报班学习,但对于培训机构动则几千的学费,着实压力不小。自己不成体系的自学效果低效又漫长,而且极易碰到天花板技术停滞不前!
因此收集整理了一份《2024年Python开发全套学习资料》,初衷也很简单,就是希望能够帮助到想自学提升又不知道该从何学起的朋友,同时减轻大家的负担。
既有适合小白学习的零基础资料,也有适合3年以上经验的小伙伴深入学习提升的进阶课程,基本涵盖了95%以上前端开发知识点,真正体系化!
由于文件比较大,这里只是将部分目录大纲截图出来,每个节点里面都包含大厂面经、学习笔记、源码讲义、实战项目、讲解视频,并且后续会持续更新
如果你觉得这些内容对你有帮助,可以扫码获取!!!(备注Python)
.cn/img_convert/6c361282296f86381401c05e862fe4e9.png)
既有适合小白学习的零基础资料,也有适合3年以上经验的小伙伴深入学习提升的进阶课程,基本涵盖了95%以上前端开发知识点,真正体系化!
由于文件比较大,这里只是将部分目录大纲截图出来,每个节点里面都包含大厂面经、学习笔记、源码讲义、实战项目、讲解视频,并且后续会持续更新
如果你觉得这些内容对你有帮助,可以扫码获取!!!(备注Python)
![img](https://img-blog.csdnimg.cn/img_convert/982c8ee1f4aea3764fa230fc7a93f360.jpeg)