python实现音乐下载的统计


Posted in Python onJune 20, 2018

本文为大家分享了Python实现自己下载音乐统计的具体代码,供大家参考,具体内容如下

今天看Python实例,学习了如何对文件进行操作,突然想把自己网易云音乐下载到本地的歌曲名单写到一个txt中,看看具体情况。当然,我现在肯定无法做到直接去网易云音乐上爬取,就做个最简单的吧。

代码实现

import os
def split_songs_name(s) :
 '''
 拆分歌曲名,去掉歌手和一些其他信息,只保留歌曲名
 :param s: 歌曲文件名
 :return: 歌曲名
 '''
 if isinstance(s,str) :
  if s.find('-') :
   return s.split('-')[-1].strip()
  else:
   return s
def get_all_mp3(path) :
 '''
 获取指定目录下所有的.mp3文件,存入一个list中
 :param path: 指定路径
 :return: 歌曲名list
 '''
 songs_list=[]
 for f in os.listdir(path) :
  file_path=os.path.join(path,f)
  if os.path.isfile(file_path) and os.path.splitext(file_path)[1]=='.mp3':
   songs_list.append(split_songs_name(os.path.basename(file_path).split('.')[0]))
  elif os.path.isdir(file_path) :
   get_all_mp3(file_path)
 return songs_list
songs_list=get_all_mp3(r'D:\网易云音乐')
#指定路径
with open(r'D:\song.txt','w',encoding='utf-8') as f:
 '''
 写入指定的txt文件中
 '''
 for s in songs_list:
  f.write(s+'\n')

这些就是今天的小收获了,python注重简洁高效,我这里还有很多功能无法实现,如:没有考虑歌曲名存在多个'-‘划分的情况;无法查询歌曲所属专辑、发行时间等。希望自己以后能多多改善!

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

Python 相关文章推荐
利用打码兔和超人打码自封装的打码类分享
Mar 16 Python
Python写的英文字符大小写转换代码示例
Mar 06 Python
python简单判断序列是否为空的方法
Jun 30 Python
Python生成密码库功能示例
May 23 Python
python利用正则表达式搜索单词示例代码
Sep 24 Python
详解Tensorflow数据读取有三种方式(next_batch)
Feb 01 Python
Python3转换html到pdf的不同解决方案
Mar 11 Python
实例详解python函数的对象、函数嵌套、名称空间和作用域
May 31 Python
python3-flask-3将信息写入日志的实操方法
Nov 12 Python
python3 实现函数写文件路径的正确方法
Nov 27 Python
python中time tzset()函数实例用法
Feb 18 Python
matplotlib之pyplot模块实现添加子图subplot的使用
Apr 25 Python
django2用iframe标签完成网页内嵌播放b站视频功能
Jun 20 #Python
python基于http下载视频或音频
Jun 20 #Python
python实现下载pop3邮件保存到本地
Jun 19 #Python
python+POP3实现批量下载邮件附件
Jun 19 #Python
python实现批量解析邮件并下载附件
Jun 19 #Python
Python3使用SMTP发送带附件邮件
Jun 16 #Python
Python3使用turtle绘制超立方体图形示例
Jun 19 #Python
You might like
php mysql_real_escape_string addslashes及mysql绑定参数防SQL注入攻击
2016/12/23 PHP
PHP substr()函数参数解释及用法讲解
2017/11/23 PHP
PHP实现的超长文本分页显示功能示例
2018/06/04 PHP
tp5实现微信小程序多图片上传到服务器功能
2018/07/16 PHP
php ajax confirm 删除实例详解
2019/03/06 PHP
Laravel ORM 数据model操作教程
2019/10/21 PHP
PHP的new static和new self的区别与使用
2019/11/27 PHP
如何取得中文输入的真实长度?
2006/06/24 Javascript
JavaScript 编程引入命名空间的方法与代码
2007/08/13 Javascript
JS的递增/递减运算符和带操作的赋值运算符的等价式
2007/12/08 Javascript
jquery.combobox中文api和例子,修复了上面的小bug
2011/03/28 Javascript
最短的IE判断var ie=!-[1,]分析
2014/05/28 Javascript
jquery移动点击的项目到列表最顶端的方法
2015/06/24 Javascript
浅谈js中调用函数时加不加括号的问题
2016/07/28 Javascript
浅谈JavaScript 中有关时间对象的方法
2016/08/15 Javascript
js HTML5 Canvas绘制转盘抽奖
2020/09/13 Javascript
JS实现图片上传预览功能
2016/11/21 Javascript
requireJS模块化实现返回顶部功能的方法详解
2017/10/16 Javascript
在 Angular中 使用 Lodash 的方法
2018/02/11 Javascript
快速对接payjq的个人微信支付接口过程解析
2019/08/15 Javascript
微信小程序利用云函数获取手机号码
2019/12/17 Javascript
vue实现购物车案例
2020/05/30 Javascript
python的dict,set,list,tuple应用详解
2014/07/24 Python
python编码最佳实践之总结
2016/02/14 Python
ubuntu环境下python虚拟环境的安装过程
2018/01/07 Python
Python稀疏矩阵及参数保存代码实现
2020/04/18 Python
使用python画出逻辑斯蒂映射(logistic map)中的分叉图案例
2020/12/11 Python
Under Armour安德玛荷兰官网:美国高端运动科技品牌
2019/07/10 全球购物
生育关怀行动实施方案
2014/03/26 职场文书
新年联欢会主持词
2014/03/27 职场文书
学历公证委托书
2014/04/09 职场文书
生产助理岗位职责
2014/06/18 职场文书
英文演讲稿开场白
2014/08/25 职场文书
解决Python字典查找报Keyerror的问题
2021/05/26 Python
分享一个vue实现的记事本功能案例
2022/04/11 Vue.js
MySQ InnoDB和MyISAM存储引擎介绍
2022/04/26 MySQL