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 = ...
随机推荐
- 搭建webpack基础配置
搭建webpack基础步骤: 1.去官方网站下载node.js(根据自己电脑的系统类型选择) 2.安装node.js完成后打开cmd命令提示符: 出现版本号证明安装成功 3.cd到工程目录下 npm ...
- 代码精简工具lombok
Lombok是一种通过注解的方式减少JAVA实体类中大量冗余代码,诸如get.set以及构造方法等的Java库 一.安装Lombok 步骤一 项目引入lombok插件 1 - 非maven依赖托管项目 ...
- c++利用类进行单链表的插入,删除,清空操作
#if 1 #include <iostream> #include <stdlib.h> #include <time.h> #include <fstre ...
- Knowledge From Practice(JavaScript)
1.HTML事件对象 onmouseover:鼠标移入事件 onmouseout:鼠标移出事件 onmousedown:鼠标落下事件 onmouseup:鼠标抬起事件 例子: onclick:鼠标点击 ...
- 2018-软工机试-D-定西
单点时限: 1.0 sec 内存限制: 256 MB 这么多年你一个人一直在走 方向和天气的节奏会让你忧愁 你说你遇见了一大堆奇怪的人 他们看上去好像都比你开心 ——李志<定西> 这首歌的 ...
- MySQL之内连接、左连接和右连接
数据表内数据如下: books表: ...
- golang channel
ex1 package main /* goroutine 是由GO运行时管理的轻量级线程 go f(x,y, z) 就启动了一个goroutine, 其中f,x,y,z在当前goroutine中立即 ...
- Linux环境下nginx集群搭建
#确保安装nginx,stream模块默认不安装的,需要手动添加参数:–with-stream, nginx1.9或以上版本 #nginx.conf文件中,添加以下内容(只供参考),这个不能放在htt ...
- jQuery-3.事件篇---自定义事件
jQuery自定义事件之trigger事件 众所周知类似于mousedown.click.keydown等等这类型的事件都是浏览器提供的,通俗叫原生事件,这类型的事件是需要有交互行为才能被触发. 在j ...
- C#版的 Escape() 和 Unescape()
Escape: 复制代码 代码如下: public static string Escape(string str) { StringBuilder sb = new StringBuilder(); ...