【实例简介】入门级示例源码,搜狗音乐下载

【实例截图】

【核心代码】

import requests

import re

import tkinter

#获取gethush

def gethush(music):

global musicname

musicname = music

url = 'http://songsearch.kugou.com/song_search_v2?callback=jQuery1910026785707623246724_1490845878865&keyword={}&page=1&pagesize=30&userid=-1&%20%20clientver=&platform=WebFilter&tag=em&filter=2&iscorrection=1&privilege_filter=0&_=1490845878887'.format(musicname)

response = requests.get(url)

html = response.text

pattern = '"FileHash":"(.*?)","SQPayType".*?"AlbumID":"(.*?)"'

hush = re.search(pattern,html).group(1)

album = re.search(pattern,html).group(2)

return hush

#获取音乐下载链接

def getmusicurl(hush):

url = 'http://www.kugou.com/yy/index.php?r=play/getdata&hash={}'.format(hush)

response = requests.get(url)

html = response.text

pattern = '"play_url":"(.*?)","authors"'

music_url = re.search(pattern,html).group(1)

return music_url

#下载音乐

def downloadmusic(url):

session = requests.Session()

url = url.replace('\\','')

r = requests.get(url)

with open(r'd:\mp3\%s.mp3' % musicname, "wb") as f:

for chunk in r.iter_content(chunk_size=512):

if chunk:

print('正在下载:%s'% musicname)

f.write(chunk)

if __name__ == '__main__':

ytm = tkinter.Tk() # 创建Tk对象

ytm.title("音乐下载器1.0") # 设置窗口标题

ytm.geometry("300x100") # 设置窗口尺寸

l1 = tkinter.Label(ytm, text="歌曲:") # 标签

l1.pack() # 指定包管理器放置组件

musicname = tkinter.Entry() # 创建文本框

musicname.pack()

def down():

user = musicname.get() # 获取文本框内容

hush = gethush(user)

url = getmusicurl(hush)

downloadmusic(url)

tkinter.Button(ytm, text="下载", command=down).pack() # command绑定获取文本框内容方法

ytm.mainloop()

python小工具开发_python音乐下载小工具源码(tkinter)相关推荐

  1. 小程序开发,选saas系统还是源码系统?

    对于很多中小企业主,或者个体商户,自由职业者等,在小程序开发,是选择saas系统好,还是选择源码系统. 下面我给大家讲一讲这两者都有什么区别.特点. saas类产品有哪些特点? 1.SaaS更加的轻量 ...

  2. 洗车店小程序开发设计(微信同城预约洗车源码搭建费用)

    截至最近数据统计,中国家用汽车保有量达到3.7亿辆每年汽车保养维修行业产值过万亿,随着汽车的普及以上数据每年都在高速增长因此专业化的汽车平台将成为创业新风口把握创业新风口.小编也是有一个固定的洗车店经 ...

  3. python代码解读器_python文章生成器(附源码+讲解)

    移动端建议收藏后在pc端查看 最近在看到网上的[营销号生成器]和[狗屁不通生成器].前者确实是营销号的口吻,但是竟然连模板都是写死的:后者也如其名,的确"狗屁不通".于是结合当前对 ...

  4. 手机python3.8.5软件_Python|Python v3.8.7 for Linux下载_网站源码_站长下载

    Python是一门跨平台的脚本语言,Python规定了一个Python语法规则,实现了Python语法的解释程序就成为了Python的解释器,我们用的比较多的是C版本的Python,也就是使用C语言实 ...

  5. 【小游戏开发】七巧板!思路、源码,超适合学习的小项目!

    游戏介绍 鼠标左键拖动图形移动,松开时自动吸附,按下 ctrl 键的同时拖动则不进行吸附,右键单击图形顺时针旋转 45°,ESC 结束游戏. 新增内容 1. 增加了点吸附效果,拖动图形松开后,触发边吸 ...

  6. python金融实战 源代码_Python金融股票爬虫实战源码大全

    Stock [1]- 终端实时获取股票价格,实时查询股票价格,默认查询了沪指.深指.需要安装requests库,通过调用新浪股票API,实时查询股票价格,支持查询多支股票,通过threading多线程 ...

  7. python tkinter实例_python绘制一个图形示例源码(tkinter)

    [实例简介] [实例截图] [核心代码] # -*- coding: utf-8 -*- #!/usr/bin/python import math from tkinter import * cla ...

  8. python读写excel表格_Python写入Excel万能模板源码

    首先将你要写入的数据文件内容存放在Excel中,下面以三国战将战力为案例 #实现python生成Excel内容 import openpyxl #导入excel常用库 #写入Excel表格 def w ...

  9. spring boot开发QQ音乐微信小程序(包含服务端源码)

    spring boot+spring mvc+spring整合开发QQ音乐微信小程序(含简单服务端) 项目描述: spring boot+spring mvc+spring代理请求QQ音乐接口获取数据 ...

最新文章

  1. alchemy php,Python下SQLAlchemy的简单介绍
  2. 以太网数据帧的报尾封装字段是什么_16、90秒快速“读懂”数据包的封装、解封装...
  3. 链表在STM32中的应用
  4. Scala报错:error: overloaded method value logInfo with alternatives
  5. 谷歌微软 IBM 激战云端,亚马逊地位恐将不保?
  6. Tomcat--远程Debug以及参数配置调优
  7. JavaScript常见鼠标事件与用法分析
  8. 新手学习selenium路线图(老司机亲手绘制)-学前篇
  9. vue 官方推荐的好用的三方库
  10. win7与internet时间同步出错_windows7 internet系统时间同步出错超时怎么办?国内NTP时间同步服务器地址...
  11. 纯Java代码实现 企业微信钉钉 机器人群+告警
  12. vue项目使用i18n插件实现多语言切换功能
  13. linux vm编辑文件命令行,linux vm编辑器操作
  14. 优秀工程师应该具备哪些素质_工程师应具备的素养有哪些
  15. Android studio 导入项目详解 (简单快速)
  16. 2020 年百度之星·程序设计大赛 - 初赛一题解
  17. 计算机刚开始学什么时候,新手如何开始学电脑 新手学电脑从何入门
  18. 清除浮动影响的几种方法
  19. GcRoot可以有哪些?
  20. 2020全国大学生数学建模竞赛穿越沙漠第二问求解方法

热门文章

  1. 关于Python和自动化
  2. Go语言核心知识点和原理详解
  3. 高精度算法——高精度减法
  4. SVM(六):带松弛变量的SVM数学模型
  5. 由IDC余热回收创新技术实践引出的跨界合作探讨
  6. gitee怎么看用户名_多账号如何登录gitee
  7. 简单快速的多图像拼接---百图拼接
  8. 如何去除图片中的文字水印
  9. MySQL与Redis的双写一致性解决方案
  10. 利用高德地图实现定位功能