一、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歌词的更多相关文章

  1. python使用beautifulsoup4爬取酷狗音乐

    声明:本文仅为技术交流,请勿用于它处. 小编经常在网上听一些音乐但是有一些网站好多音乐都是付费下载的正好我会点爬虫技术,空闲时间写了一份,截止4月底没有问题的,会下载到当前目录,只要按照bs4库就好, ...

  2. 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 ...

  3. Python爬虫:通过做项目,小编了解了酷狗音乐的加密过程

    1.前言 小编在这里讲一下,下面的内容仅供学习参考,切莫用于商业活动,一经被相关人员发现,本小编概不负责!读者切记切记. 2.获取音乐播放列表 其实,这就是小编要讲的重点,因为就是这部分用到了加密. ...

  4. python爬取酷狗音乐排行榜

    本文为大家分享了python爬取酷狗音乐排行榜的具体代码,供大家参考,具体内容如下  

  5. 把 Python 脚本打包成可以直接双击运行的 .exe 文件 【转】

    因为最近要用到 Python 脚本,所以自己学习了一下,顺便学习如何把它打包成 .exe 可执行文件,达到双击运行的效果,网上找了资料,保存下来学习用,原文出处:https://baijiahao.b ...

  6. Python实例---爬去酷狗音乐

    项目一:获取酷狗TOP 100 http://www.kugou.com/yy/rank/home/1-8888.html 排名 文件&&歌手 时长 效果: 附源码: import t ...

  7. python 爬取网络小说 清洗 并下载至txt文件

    什么是爬虫 网络爬虫,也叫网络蜘蛛(spider),是一种用来自动浏览万维网的网络机器人.其目的一般为编纂网络索引. 网络搜索引擎等站点通过爬虫软件更新自身的网站内容或其对其他网站的索引.网络爬虫可以 ...

  8. python脚本实现自动保留ctime最近的几个文件

    使用了给字典排序的sorted方法 #!/usr/bin/env python # coding:utf-8 import os def rm_backup(rm_path,days): files_ ...

  9. 使用python脚本批量删除阿里云oss中的mp4文件

    #encoding:utf-8 ''' oss中有一些mp4文件需要删除,首先定位出这些文件放在txt文本中 然后通过python操作oss进行批量删除 ''' import oss2 auth = ...

随机推荐

  1. windows处理PHP定时任务

    我用的是bat文件处理定时任务,bat文件是可执行文件,由一系列命令构成,其中可以包含对其他程序的调用 创建一个bat文件,编辑文本,添加需要的php文件,前面路径是你的PHP执行程序,后面路径是文件 ...

  2. 利用Excel-Vba进行多表汇总和数据透视表

    汇总表格式 详情表格式 要求根据汇总表中的信息,到详情表中查找详细物料的具体个数 最终,对物料的个数进行汇总,结果如下图: ExcelVba代码如下(有一些注释代码供参考) Sub Start() S ...

  3. 剑指offer第32题:把数组排成最小的数及关于list.sort()和sorted( Iterable object )函数的相关知识

     * 解题思路:  * 先将整型数组转换成字符数组,然后将String数组排序,最后将排好序的字符串数组拼接出来.关键就是制定比较规则.  * 排序规则如下:  * 若ab > ba 则 a & ...

  4. 关于windows映射网络驱动器,登录时重新连接

    如果想登录系统后映射盘符还在,但是不自动连接,则参考下面方法.方法其实很简单,关键的步骤是:登录共享的时候,登录界面取消选中“保存凭据”,然后映射的时候,选择“下次开机是重新连接” 这样,下次开机的时 ...

  5. better-scroll无法滚动的问题。

    better-scroll无法滚动的问题.1遇见better-scroll(以下简称:BS)无法滚动,可从两方面去考虑.一是层级关系出错,二是计算高度出错.###1,层级关系BS的基本结构是:一个wr ...

  6. 泊爷带你学go -- 加锁的问题

    package main import ( "fmt" "sync" ) var l sync.Mutex var a string func f() { a ...

  7. gulp的使用(一)之gulp的基础了解

    Gulp是一个工具.用于项目构建. Gulp简介: 多个开发者共同开发一个项目,每位开发者负责不同的模块,这就会造成一个完整的项目实际上是由许多的“代码版段”组成的: 使用less.sass等一些预处 ...

  8. exp/expdp 与 imp/impdp命令导入导出数据库详解

    一.exp命令导出数据库 如何使exp的帮助以不同的字符集显示:set nls_lang=simplified chinese_china.zhs16gbk,通过设置环境变量,可以让exp的帮助以中文 ...

  9. react native原生模块引用本地jar包

    比如module目录结构是这样的: 然后libs中的目录是这样的: 只要在build.gradle中加入这段代码就行了 sourceSets { main { manifest.srcFile 'An ...

  10. 小程序之--canvasToTempFilePath

    最近做的小程序需要图片上传头像的功能,不对上传的图片做处理肯定出来的效果不好:所以就隐藏了一个canvas对上传的图片进行压缩或者进行大小的编辑: 通过chooseImage方法,可以拿到图片的临时路 ...