• Python整理本机Mp3音乐文件


    #筛选mp3音质,删除比特率小的mp3,支持文件夹嵌套

    1. #筛选mp3音质,删除比特率小的mp3,支持文件夹嵌套
    2. from eyed3 import mp3
    3. import os
    4. import sys
    5. def get_mp3_rate(root_path,bad_songs):
    6. for fname in os.listdir(root_path):
    7. sub_path = os.path.join(root_path,fname)
    8. if os.path.isdir(sub_path):
    9. get_mp3_rate(sub_path,bad_songs)
    10. continue
    11. if not fname.endswith('.mp3'):
    12. continue
    13. try:
    14. song = mp3.Mp3AudioFile(sub_path)
    15. bitrate = song.info.bit_rate
    16. #if(bitrate[0]!=False): print('-----',bitrate)
    17. if(bitrate[1] < 64): #比特率小于64
    18. print('+++++',bitrate,fname)
    19. bad_songs.append(sub_path)
    20. except:
    21. print('Error---',fname)

    #修改【歌手目录】中所有文件属性

    这样播放软件就可以按歌手或唱片集归类了~

    1. #修改【歌手目录】中所有文件属性
    2. #标题、参与创作的艺术家、唱片集
    3. #周璇(64)-笑的赞美、周璇、周璇
    4. import os
    5. import sys
    6. import mutagen
    7. from mutagen.id3 import ID3,APIC,TIT2,TPE1,TALB,ID3NoHeaderError
    8. import zipfile
    9. def edit_info_by_singer(singer_dir):
    10. print('---edit_info_by_singer---',singer_dir)
    11. no = 1
    12. ppath,singer = os.path.split(singer_dir)
    13. for fname in os.listdir(singer_dir):
    14. sub_path = os.path.join(singer_dir,fname)
    15. singers = fname.split('-')[0].strip()
    16. title = singer + '('+str(no) +')-'\
    17. +fname.split('-')[1].replace('.mp3','').strip()
    18. no = no+1
    19. try:
    20. songinfo = ID3(sub_path)
    21. except ID3NoHeaderError:
    22. songinfo = ID3()
    23. songinfo.save(sub_path)
    24. songinfo['TIT2']=TIT2(
    25. encoding=3,
    26. text = title #标题
    27. )
    28. songinfo['TPE1']=TPE1(
    29. encoding=3,
    30. text = singers #唱片集
    31. )
    32. songinfo['TALB']=TALB(
    33. encoding=3,
    34. text = singer #歌手
    35. )
    36. songinfo.save(sub_path)
  • 相关阅读:
    推荐算法架构 :召回(1)
    java基础
    彻底理解Java并发:volatile关键字
    Pointnet++学习
    大数据组件-Flink环境搭建
    数据链路层
    数据结构--线性表之顺序表
    LeetCode0461.汉明距离 Go语言AC笔记
    java+mysql基于SSM的大学生兼职信息系统-计算机毕业设计
    嵌入式linux系统内核启动过程分享
  • 原文地址:https://blog.csdn.net/catontower/article/details/132924468