最近同事我了一个短视频,附带了srt格式的字幕。可惜的是只有英文字幕,没有找到中文字幕。想让我帮忙找一下英文字幕,但是因为是短视频网上没有现成的中文字幕。那怎么办?看看万能的Excel能不能胜任吧?
大家都知道SRT文件是可以用记事本打开并编辑的,打开后是这样的:
SRT字幕用记事本打开
那有的同学里面就来了灵感,如果我把这些内容全部粘贴到翻译网站上不就可以得到中文字幕了吗?想法很好,可是如果直接粘贴到百度翻译或者其他翻译平台结果是这样的:
百度翻译SRT字幕
难道要一条一条修改?这里可有上千条,要搞到什么时候?
那我们就祭出法宝Excel,首先把文字粘贴到Excel的A列,然后插入一行,让字幕从第二行开始,B2中输入下面的公式:
=IF(MOD(ROW(),4)=0,FILTERXML(WEBSERVICE("http://fanyi.youdao.com/translate?&i="&A2&"&doctype=xml&version"),"//translation"),A2)&""
对B2下拉,然后全选B列,粘贴到新的记事本中,另存为cn.srt文件,不到1分钟时间你就可以享受中文字幕带来的愉快体验。
Tips:Excel必须要2013之后的版本
原理:
使用了有道翻译的API接口,输入英文翻译为汉字输出为xml,然后解析为文字
今日收获:
WEBSERVICE 函数:返回 Intranet 或 Internet 上的 Web 服务数据。office 2013之后的函数,只有一个参数,WEBSERVICE(url),返回web内容
FILTERXML函数:使用指定的 xpath 从 XML 内容返回特定数据,经常是和WEBSERVICE函数搭配使用
ROW函数:返回所在行数
MOD函数:求余数,在这个案例中的作用返回是否为4的倍数行