需求:有同学备考需要,需要看中国慕课里面的视频,除了听还需要做笔记,有特殊情况的还需要背稿子,这里,介绍了一种将字幕文件的文字提取出来。
第一步,下载所需要课程的字幕
第二步,右键以记事本格式打开
第三步,新建一个Excel表格,并将所有文字复制进去。这里会形成表格形式。这里需要解决的是:删除空格行,删除时间轨道,删除序号,保留文字轨道。
第四步, 在Excel表格的菜单栏中选择【查找和选择】→【定位条件】
第五步, 选择【空值】,并点击确定,然后可以发现很多空格行被选中。
第五步,单机右键,选择删除,并选择【下方单元格上移】。
第六步,再次选择【查找和选择】→ 【定位条件】,选择【常量】,并将【公式】下的数字保留。将选中的单元格右键删除。
第七步, 输入1,2,1,2,并按住crtl将其拖到文字列的最后。
第八步,选择降序,可以发现前面的表格都是文字表格。
![]()
第九步:将所有文字复制到桌面上的【删除行】文件夹中的删除行.txt文件中:(注意,到这一步,大家可以用word来做,我是喜欢用脚本)
第十步:介绍一下这个【删除行】中的文件:
脚本:里面有两个文件,都是.vbs格式。
Set fso = Wscript.CreateObject("Scripting.FileSystemObject")
set f=fso.opentextfile("C:\Users\Administrator\Desktop\删除行\删除行.txt")
s=replace(f.readall,chr(10),"。")
f.close
set r=fso.opentextfile("C:\Users\Administrator\Desktop\删除行\删除行.txt",2,true)
r.write s
Wscript.quitSet fso = Wscript.CreateObject("Scripting.FileSystemObject")
set f=fso.opentextfile("C:\Users\Administrator\Desktop\删除行\删除行.txt")
s=replace(f.readall,chr(13),"")
f.close
set r=fso.opentextfile("C:\Users\Administrator\Desktop\删除行\删除行.txt",2,true)
r.write s
Wscript.quit
Set fso = Wscript.CreateObject("Scripting.FileSystemObject")
set f=fso.opentextfile("C:\Users\Administrator\Desktop\删除行\删除行.txt")
s=replace(f.readall," ","")
f.close
set r=fso.opentextfile("C:\Users\Administrator\Desktop\删除行\删除行.txt",2,true)
r.write s
Wscript.quit
删除行.txt:空文件,也就是要复制文字进入的文件。双击我.vbs:主程序
' RunS.vbs
' 同时串行运行多个程序
strCmd1 = "C:\Users\Administrator\Desktop\删除行\脚本\回车符.vbs"
strCmd2 = "C:\Users\Administrator\Desktop\删除行\脚本\换行符.vbs"
strCmd3 = "C:\Users\Administrator\Desktop\删除行\脚本\空格.vbs"
Set wshShell = CreateObject("WScript.Shell")
nWindowStyle = 1 ' 激活并显示窗口
bWaitOnReturn = 1 ' 等待程序执行完毕再执行下一条语句
wshShell.Run strCmd1,nWindowStyle,bWaitOnReturn
wshShell.Run strCmd2,nWindowStyle,bWaitOnReturn
wshShell.Run strCmd3,nWindowStyle,bWaitOnReturn
Set ws = CreateObject("WScript.Shell")ws.Run "C:\Users\Administrator\Desktop\删除行\删除行.txt",,True
第十一步:将文字复制进【删除行.txt】中保存并退出。并双击【双击我.vbs】,即可弹出更改后的窗口:
其实还是比较复杂,本来想用脚本/批处理来做,下次再花时间学一下吧。