python实现音乐下载的统计

yipeiwu_com7年前Python基础

本文为大家分享了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设计】。

相关文章

对python中的for循环和range内置函数详解

对python中的for循环和range内置函数详解

如下所示: 1.for循环和range内置函数配合使用 range函数生成一个从零开始的列表, range(4)表示list:0123 range(1,11,2)表示从1开始到11-...

python中实现迭代器(iterator)的方法示例

python中实现迭代器(iterator)的方法示例

概述 迭代器是访问集合元素的一种方式。迭代器对象从集合的第一个元素开始访问,直到所有的元素被访问完结束。迭代器只能往前不会后退。 延迟计算或惰性求值 (Lazy evaluation)...

python字符串过滤性能比较5种方法

python字符串过滤性能比较5种方法比较 总共比较5种方法。直接看代码: import random import time import os import string ba...

分享一下Python数据分析常用的8款工具

分享一下Python数据分析常用的8款工具

Python是数据处理常用工具,可以处理数量级从几K至几T不等的数据,具有较高的开发效率和可维护性,还具有较强的通用性和跨平台性。Python可用于数据分析,但其单纯依赖Python本身...

python库matplotlib绘制坐标图

很多时候我们数据处理的时候要画坐标图,下面我用第三方库matplotlib以及scipy绘制光滑的曲线图 需要安装的库有 matplotlib,scipy, numpy impor...