Python 文件批量翻译工具

前 言

工作之余我自己会剪一些游戏GMV(game music video),因此经常需要去找一些音频素材。而网盘资源里的素材文件,大部分都是英文标题,使用起来很不方便。所以我就做了一个一键批量翻译文件名的工具。

实 现

主要是调用了百度翻译API,支持将指定目录下的所有音频文件标题一键翻译成中文。功能也比较简单,这里就不再赘述,有兴趣的可以访问GitHub源码
百度翻译API相关内容可以访问官网链接

总 结

这里总结下开发遇到的一些问题和代码优化
1. exit 未定义
代码里使用了exit()来退出程序,打包为exe执行后,会报错:

NameError: name 'exit' is not defined

解决:exit()改为sys.exit()即可。

2. 检查字符串为空
代码里想要判断字符串是否为空或全空格,所以一开始实现的代码:

def check_string(str):
    return len(str) == 0 or str.isspace()

看着比较臃肿,改进如下:

def check_string(str):
    return not str.strip()

strip()去除空格后,直接返回判断即可。

3. 使用 f-strings
在调用API时,需要拼接url地址,例如:

myurl = api_url + '?appid=' + appid + '&q=' + urllib.parse.quote(q) + '&from=' + fromLang + '&to=' + toLang + '&salt=' + str(salt) + '&sign=' + sign

可以使用f-strings风格去拼接字符串,修改如下:

myurl = f"{api_url}?appid={appid}&q={urllib.parse.quote(q)}&from={fromLang}&to={toLang}&salt={str(salt)}&sign={sign}"
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容