必应翻译(bing)Excel文件指定内容

必应翻译(bing)Excel文件指定内容

代码如下(mac环境下python):

from cn_bing_translator import Translator
from openpyxl import load_workbook
import time
workbook = load_workbook(filename="./desktop/translate.xlsx")
sheet = workbook.active
cell = sheet["C2:C1000"]
agent1 = {'user-agent':'Mozilla/5.0 (iPhone; CPU iPhone OS 10_3_1 like Mac OS X) AppleWebKit/603.1.30 (KHTML, like Gecko) Version/10.0 Mobile/14E304 Safari/602.1 Edg/99.0.4844.51'}
translator = Translator(fromLang='en',toLang='zh-Hans',agent=agent1)
add = 2
for i in cell:for j in i:translated = translator.process(j.value)jg = "H"+str(add)sheet[jg].value=translatedprint(sheet[jg].value)add+=1time.sleep(0.01)
workbook.save(filename="./desktop/translate.xlsx")
  1. 功能详解: 这段代码的功能是将一个Excel文件中的英文单词翻译成简体中文,并将翻译结果写回到原来的Excel文件中。下面我逐步解释代码的每个部分:

  2. from cn_bing_translator import Translator:从cn_bing_translator模块中导入Translator类,这个类用于进行翻译操作。

  3. from openpyxl import load_workbook:从openpyxl模块中导入load_workbook函数,用于加载Excel文件。

  4. import time:导入time模块,用于添加延迟以防止请求过于频繁。

  5. workbook = load_workbook(filename="./desktop/translate.xlsx"):加载名为"translate.xlsx"的Excel文件到workbook变量中。

  6. sheet = workbook.active:获取当前活动的工作表。

  7. cell = sheet["C2:C1501"]:选择C列中从第2行到第1501行的单元格。

  8. agent1 = {'user-agent':'Mozilla/5.0 (iPhone; CPU iPhone OS 10_3_1 like Mac OS X) AppleWebKit/603.1.30 (KHTML, like Gecko) Version/10.0 Mobile/14E304 Safari/602.1 Edg/99.0.4844.51'}:创建一个代理设置,这里模拟使用iPhone的浏览器访问。

  9. translator = Translator(fromLang='en',toLang='zh-Hans',agent=agent1):创建一个Translator对象,并设置要从英文(‘en’)翻译成简体中文(‘zh-Hans’),并使用刚才定义的代理设置。

  10. add = 2:设置一个计数器,初始值为2。

  11. for i in cell::遍历选定的单元格。

  12. for j in i::遍历当前单元格。

  13. translated = translator.process(j.value):使用Translator对象的process方法将英文单词翻译成简体中文。

  14. jg = "H"+str(add):根据计数器的值生成一个字符串,用来表示要写入的单元格的位置。

  15. sheet[jg].value=translated:将翻译结果写入指定的单元格。

  16. print(sheet[jg].value):打印翻译结果。

  17. add+=1:计数器加1,用于更新下一个要写入的单元格的位置。

  18. time.sleep(0.01):添加一个0.01秒的延迟,以防止请求过于频繁。

  19. workbook.save(filename="./desktop/translate.xlsx"):保存修改后的Excel文件到同名的文件中。

以上代码是练习时常两天半的新手写的,如果还有其他问题或者改进建议,请随时提出,谢谢!


本文来自互联网用户投稿,文章观点仅代表作者本人,不代表本站立场,不承担相关法律责任。如若转载,请注明出处。 如若内容造成侵权/违法违规/事实不符,请点击【内容举报】进行投诉反馈!

相关文章

立即
投稿

微信公众账号

微信扫一扫加关注

返回
顶部