Python脚本之Lrc歌词去时间轴转Txt文件,附带酷狗音乐APP关联已有krc歌词
一、Lrc歌词去时间轴转Txt文件
环境:Python2.7.x, Mac(Windows需装cygwin环境,当然你也可以自己改代码,Python新手,勿喷)
# -*- coding: UTF-8 -*-
import re
import sys
import os,shutil
reload(sys)
sys.setdefaultencoding("utf-8")
rootdir = os.getcwd()
def delfile(str):
if os.path.exists(str):
os.remove(str)
print 'delete '+str+' success'
else:
print 'no such file:%s'%str
def file_extension(path):
return os.path.splitext(path)[1]
def fileMove(pathname, dstfile):
shutil.move(pathname, dstfile)
def delListDir(rootDir):
for filename in os.listdir(rootDir):
pathname = os.path.join(rootDir, filename)
if (os.path.isfile(pathname)):
fileExt = file_extension(pathname)
if fileExt == ".txt" :
delfile(pathname)
else:
delListDir(pathname)
delListDir(rootdir+'/../')
def delUnuseWords(str):
outStr = str
if str[1:3] == 'ar':
outStr = str[4:-2]+'\n'
elif str[1:3] == 'ti':
outStr = str[4:-2]+'\n'
else:
outStr = str[10:]
return outStr
def writefile(pathname, filename):
print pathname
filename = filename.strip('.lrc')
f_out_path = os.path.abspath(os.path.dirname(rootdir)+os.path.sep+filename+".txt")
f_out = open(f_out_path,'a')
file_object = open(pathname,'rU')
try:
for line in file_object:
if line.count('\n')==len(line):
continue
else:
line = delUnuseWords(line)
f_out.write(line)
finally:
file_object.close()
f_out.close()
def listDir(rootDir):
for filename in os.listdir(rootDir):
pathname = os.path.join(rootDir, filename)
fileExt = file_extension(pathname)
if fileExt == ".lrc":
if (os.path.isfile(pathname)):
writefile(pathname, filename)
else:
listDir(pathname)
listDir(rootdir)
# writefile(rootdir)
print "恭喜您,转换完成!"
操作:保存代码为create.py 歌词文件放置于与create.py同目录或同目录下的文件夹里
说明:此脚本主要是方便批量去lrc歌词时间轴,当然你也可以选择用Word去去除时间轴。
二、酷狗APP歌词关联已有krc歌词(仅限于2019年03月28日18:59:29更新,之后更新不管)
步骤:
1、酷狗自制歌词,可输入任意字符,几行就行,然后随便敲一下,之后保存至本地,则此时本地KuGou/make_lyrics/目录下就会生成歌曲对应的歌词文件
2、复制生成的歌词文件名,把准备好的krc歌词替换为新文件名,并替换KuGou/make_lyrics/下的歌词文件。
3、重新播放歌曲就会发现歌词已关联。
总结:利用酷狗生成歌词信息,替换为新的歌词文件。
Python脚本之Lrc歌词去时间轴转Txt文件,附带酷狗音乐APP关联已有krc歌词的更多相关文章
- python使用beautifulsoup4爬取酷狗音乐
声明:本文仅为技术交流,请勿用于它处. 小编经常在网上听一些音乐但是有一些网站好多音乐都是付费下载的正好我会点爬虫技术,空闲时间写了一份,截止4月底没有问题的,会下载到当前目录,只要按照bs4库就好, ...
- Python爬虫下载酷狗音乐
目录 1.Python下载酷狗音乐 1.1.前期准备 1.2.分析 1.2.1.第一步 1.2.2.第二步 1.2.3.第三步 1.2.4.第四步 1.3.代码实现 1.4.运行结果 1.Python ...
- Python爬虫:通过做项目,小编了解了酷狗音乐的加密过程
1.前言 小编在这里讲一下,下面的内容仅供学习参考,切莫用于商业活动,一经被相关人员发现,本小编概不负责!读者切记切记. 2.获取音乐播放列表 其实,这就是小编要讲的重点,因为就是这部分用到了加密. ...
- python爬取酷狗音乐排行榜
本文为大家分享了python爬取酷狗音乐排行榜的具体代码,供大家参考,具体内容如下
- 把 Python 脚本打包成可以直接双击运行的 .exe 文件 【转】
因为最近要用到 Python 脚本,所以自己学习了一下,顺便学习如何把它打包成 .exe 可执行文件,达到双击运行的效果,网上找了资料,保存下来学习用,原文出处:https://baijiahao.b ...
- Python实例---爬去酷狗音乐
项目一:获取酷狗TOP 100 http://www.kugou.com/yy/rank/home/1-8888.html 排名 文件&&歌手 时长 效果: 附源码: import t ...
- python 爬取网络小说 清洗 并下载至txt文件
什么是爬虫 网络爬虫,也叫网络蜘蛛(spider),是一种用来自动浏览万维网的网络机器人.其目的一般为编纂网络索引. 网络搜索引擎等站点通过爬虫软件更新自身的网站内容或其对其他网站的索引.网络爬虫可以 ...
- python脚本实现自动保留ctime最近的几个文件
使用了给字典排序的sorted方法 #!/usr/bin/env python # coding:utf-8 import os def rm_backup(rm_path,days): files_ ...
- 使用python脚本批量删除阿里云oss中的mp4文件
#encoding:utf-8 ''' oss中有一些mp4文件需要删除,首先定位出这些文件放在txt文本中 然后通过python操作oss进行批量删除 ''' import oss2 auth = ...
随机推荐
- 接口自动化:pytest----环境搭建
出处:https://www.cnblogs.com/yoyoketang/p/9356693.html 前言: python鄙视链:pytest 鄙视 > unittest 鄙视 > r ...
- win10安装java
java安装还比较顺利,贴两篇亲测可行的教程 1.开发环境安装:https://www.cnblogs.com/shirley-0021/p/8510051.html 2.开发工具安装(Eclipse ...
- MYSQL ini 配置文件详解及性能优化方案
my.ini分为两块:Client Section和Server Section. Client Section用来配置MySQL客户端参数. 要查看配置参数可以用下面的命令: show va ...
- [C++]几种排序
本文为大大维原创,最早于博客园发表,转载请注明出处!!! 1.冒泡: #include<cmath> #include<cstdlib> #include<ctime&g ...
- 低成本制作基于OpenWRT的渗透工具
不知道你听说过Hak5的产品没有,它们可是黑客以及渗透测试人员的最爱.其中,有很多的PoC黑客工具都曾在热门美剧<黑客军团>中出现过.Hak5的 PACKETSQUIRREL 上架已经有好 ...
- 运维yum搭建zabbix
前言: zabbix([`zæbiks])是一个基于WEB界面的提供分布式系统监视以及网络监视功能的企业级的开源解决方案. zabbix能监视各种网络参数,保证 ...
- 2019-04-23-day038-数据库的语句
昨日回顾 补充的知识点 server端肯定是确定下来的 mysql的客户端 mysql.exe 直接在命令行就可以运行的 (学习阶段用) navicat等可视化的客户端,是第三方开发的客户端 (开发辅 ...
- 关于SpringCloud配置网关转发时出现一下啊错误:“com.netflix.zuul.exception.ZuulException: Forwarding error at org.springframework.cloud.netflix.zuul.filters.route.RibbonRoutingFilter.handleException”
com.netflix.zuul.exception.ZuulException: Forwarding error at org.springframework.cloud.netflix.zuul ...
- SpringBoot中的ajax跨域问题
在控制类加入注释@CrossOrigin(allowCredentials = "true",allowedHeaders = "*",origins = {& ...
- Qt坑点汇总
1.场景:假如我们想在layout中的qlabel中设置一个图片 1.1 如果简单地使用border-image,我们可以做到,并且拖动界面时,label可以随布局正常变化,这里需要注意的是,修改ui ...