使用谷歌翻译Excel表格的Python自动脚本

最近闲来无事写了份保姆级别的翻译Excel文件的python脚本。
最后在参考各位大佬的教程后写出的脚本,需要的可以自取。
github源码

食用方法

需要安装以下包:openpyxl、pygoogletranslation和tqdm。
修改pygoogletranslation源码中的utils.py的第8行为
(源码在python路径下的\Lib\site-packages\pygoogletranslation文件夹中)

from pygoogletranslation.models import TranslatedPart

然后在命令行输入以下命令后按提示操作即可

python Excel_Google.py -f <Execl文件位置> -s <表名>

也可以输入以下命令查看帮助

python Excel_Google.py -h

需要注意的是在翻译的时候需要将原Excel文件关闭,并且该脚本为覆盖翻译,请注意文件的备份!!!

import getopt
import sys
from tqdm import tqdm
from openpyxl import load_workbook
from pygoogletranslation import Translatordef Google_Fanyi(file_home, sheet):try:wb = load_workbook(filename=file_home)  # 打开excel文件except:print("错误:打开'" + file_home + "'的文件失败,请检查文件路径是否有误!!!")sys.exit()try:ws = wb[sheet]  # 根据Sheet1这个sheet名字来获取该sheetexcept:print("错误:打开'" + sheet + "'表格失败,请检查表名是否有误!!!")sys.exit()print("准备开始翻译的Excel文件路径为:" + file_home +",表名为:" + sheet)# 更换谷歌翻译地址translator = Translator(service_url='translate.google.cn')nrows = ws.max_rowncols = ws.max_columnprint("行数:%d\t列数:%d"%(nrows,ncols))input("请确定是否关闭Excel文件(输入任意键开始翻译)")pbar = tqdm(total=nrows * ncols)  # 获取进度条总数for row in range(1, nrows + 1):for col in range(1, ncols + 1):pbar.update(1) # 更新进度条if ws.cell(row, col).value != None:ws.cell(row, col).value = translator.translate(ws.cell(row, col).value, dest='zh-CN').texttry:wb.save(file_home)  # 保存修改后的excelexcept:print("错误:未关闭Excel表格文件")sys.exit()if __name__ == '__main__':opts, args = getopt.getopt(sys.argv[1:], "hf:s:", ["file=", "sheet="])if len(opts) != 0:for opt, arg in opts:if opt == '-h':print("使用格式为:\npython Excel_Google.py -f <Execl文件位置> -s <表名>\n"+ "PS:如果第一次使用请安装以下包:openpyxl、pygoogletranslation和tqdm。\n"+ "   并修改pygoogletranslation源码中的utils.py的第8行为:\n"+ "       from pygoogletranslation.models import TranslatedPart\n"+ "#开始运行代码时不可打开Excel文件#")sys.exit()elif opt in ("-f", "--file"):file_home = argelif opt in ("-s", "--sheet"):sheet = argelse:print("错误:参数有误,python Excel_Google.py -h获取详情")sys.exit()try:Google_Fanyi(file_home, sheet)except:print("警告:参数不完整或发生错误,使用python Excel_Google.py -h获取详情")sys.exit()print("Enjoy it!")else:print("错误:参数为空,使用python Excel_Google.py -h获取详情\n"+ "PS:如果第一次使用请安装以下包:openpyxl、pygoogletranslation和tqdm。\n"+ "   并修改pygoogletranslation源码中的utils.py的第8行为:\n"+ "       from pygoogletranslation.models import TranslatedPart\n"+ "#开始运行代码时不可打开Excel文件#")sys.exit()

最后Enjoy it!

利用Python脚本来使用Google自动翻译Excel表格文件相关推荐

  1. 利用Python将Word试卷匹配转换为Excel表格

    点击上方"Python爬虫与数据挖掘",进行关注 回复"书籍"即可获赠Python从入门到进阶共10本电子书 今 日 鸡 汤 桃李春风一杯酒,江湖夜雨十年灯. ...

  2. python windows系统管理_利用Python脚本管理Windows服务

    Windows服务常用的功能就是启动服务,关闭服务,重启服务和查询服务运行状态,其中查询服务运行状态是其他三种操作的基础. 本文中提到的使用Python脚本管理Windows服务实际上是调用win32 ...

  3. python漏洞利用脚本_利用Python脚本实现漏洞情报监控与通知的经验分享

    原标题:利用Python脚本实现漏洞情报监控与通知的经验分享 前言 本文主要介绍了笔者利用一个简单的Python脚本实现漏洞情报的监控以及自动通报的相关经验. 一.背景 笔者所在公司某一个业务系统用到 ...

  4. python登录交换机执行命令_利用Python脚本登录交换机实现自动配置备份的方法

    主机参考:服务器测评参考推荐网,专注分享服务器优惠信息!如果您想在本站投放您的广告,点此直达!如果您不想付费,您也可以免费投稿您的产品信息,点此直达!联系我们 部分文章发布时间较久远,可能存在未知因素 ...

  5. 利用Python脚本给图片批量添加文字水印

    引言:本人从小白自学python,为了测试基础学习效果,增加一定的促进,想通过参加全国计算机等级考试二级python来检验基础学习情况.在学习过程中,会将该过程编写的python小程序题目在此发表,希 ...

  6. 利用python脚本自动发布服务之arcmap篇

    最近在学习arcpy,参考官方帮助文档及一些博客文章练习了下利用python脚本自动发布各中server服务,顺便将把发布的流程以及遇到的问题进行记录总结.用的是Python2.x,ArcGIS Pr ...

  7. 利用python编写exe应用,实现excel文件输出建表sql文件。

    目录 一.excel文件内容如下: 二.生成如下sql: 三. 思路: 1.设计界面 2.界面分模块设计 2.1 模块一(数据库选择) 点击选择按钮会触发command后面的函数,同时会相应的返回va ...

  8. 利用Python脚本实现批量格式转换(视频转音频)

    利用Python脚本实现批量格式转换(视频转音频) 利用ffmpeg工具和Python,实现批量视频/音频格式转换.本例只给出视频转音频(.wav)方法,更多格式转换可百度ffmpeg用法,修改代码中 ...

  9. 2019年赣州市赛任务四利用python脚本进行web渗透测试

    任务四:利用python脚本进行web渗透测试 任务环境说明: 服务器场景名称: W-WebServ2008 服务器场景操作系统:Microsoft Windows2008 Server 服务器场景用 ...

最新文章

  1. Java判断字符串是否相同
  2. 20145225 《信息安全系统设计基础》第14周学习总结
  3. PHP中常见的五种设计模式
  4. [react] 怎样将多个组件嵌入到一个组件中?
  5. table 权限 展示页面
  6. 小红书去水印代码_小红书商家须知!小红书引流靠谱吗?
  7. 男性加入防晒大军 购买遮阳伞比例同比增长23.54%
  8. Verilog代码实例化的简单理解(以38译码器为例)
  9. Atitti 载入类的几种方法    Class.forName ClassLoader.loadClass  直接new
  10. 世界强大的移动便携图形工作站介绍(轻便型便携工作站(PL系列)介绍)
  11. CS下载、安装以及简单使用
  12. M1 芯片打开软件提示:“XXXX” 因为出现问题而无法打开 怎么解决?
  13. 天翼宽带政企网关B2-1P 如何获得超级管理员账号?
  14. 引擎选择:GameMaker
  15. 共享Excel编辑的一些资源
  16. 腾讯位置服务---->(小程序简单使用+显示附近WC步行路线)
  17. 短网址dwz.cn批量注册
  18. 世界观、价值观和人生观三者之间的关系
  19. 1X的示波器探头为什么会降低示波器带宽
  20. 【替代XShell】WindTerm 工具 【免费】【开源】

热门文章

  1. shell入门之expr的使用
  2. C语言深度剖析——关键字sizeof、整型数据存储深入、数据类型取值范围深入
  3. TF2.0 subclass存储及读取模型
  4. TypeError: Animal() takes no arguments
  5. 阿里云mysql用户名和密码是什么_阿里云服务器数据库账号密码是什么
  6. 计算机应用一级考试win10,2016年计算机一级考试试题「Windows」
  7. Blog的浏览量达到1000时将发布“曾经桑海难为水之三”
  8. 【目标检测】已知top, left, bottom, right 求 xmin,ymin,xmax,ymax
  9. Taprint: Secure Text Input for Commodity Smart Wristbands
  10. open images 类别名中英文对照