校园春色亚洲色图_亚洲视频分类_中文字幕精品一区二区精品_麻豆一区区三区四区产品精品蜜桃

主頁 > 知識庫 > 教你如何利用Python批量翻譯英文Word文檔并保留格式

教你如何利用Python批量翻譯英文Word文檔并保留格式

熱門標簽:激戰2地圖標注 公司電話機器人 陜西金融外呼系統 哈爾濱ai外呼系統定制 廣告地圖標注app 海南400電話如何申請 白銀外呼系統 騰訊外呼線路 唐山智能外呼系統一般多少錢

一、需求描述

手上有大量外文文檔(本案例以5份為例,分別命名為 test1.docx test2.docx 以此類推),其中一份如下:

基本需求「批量將這些文檔的內容全部翻譯成中文,并轉存到新的文件中」,效果如下:

高級需求:基本需求滿足的同時,要求 「保留原文檔的格式」,效果如下:

二、邏輯梳理

2.1 翻譯 API

本需求的核心是翻譯,策略是利用網絡的翻譯 API,這里推薦百度翻譯開放平臺,不考慮并發數的話可以用標準版,免費使用不限字符量

百度翻譯開放平臺:http://api.fanyi.baidu.com/api/trans/product/index

在使用百度的通用翻譯 API 之前需要完成以下工作:

1.使用百度賬號登錄百度翻譯開放平臺(http://api.fanyi.baidu.com);

2.注冊成為開發者,獲得APPID;

3.進行開發者認證(如僅需標準版可跳過);

4.開通通用翻譯API服務:開通鏈接

5.參考技術文檔和Demo編寫代碼

完成后在個人頁面在即可看到 ID 和密鑰,這個很重要!下面給出整理好的通用翻譯 API 的 demo,已經對輸出做簡單修改,代碼拿走就能用!

可以看到,測試內容準確的被翻譯出來,注意如果需要多次訪問 API,免費版有并發數和時間限制,可以用 time 模塊睡眠一秒

2.2 格式修改

高級需求的難點就是保留格式,簡單來說原文檔的頁面格式和段落格式是什么,翻譯后對應的部分就是什么。

基于上述的邏輯關系,只需要獲取原文檔的對應內容再賦值給新翻譯的文檔即可。(暫時只能滿足頁面設置和段落設置的統一,針對一段中特定詞語的格式修改,保證精確性需要基于自然語言處理NLP,本文暫不涉及)

2.2.1 頁面樣式

頁面樣式只要包括邊距、方向、高度、寬度等等,從原文檔中可以看到,采取的是窄邊距。但我們無需知道窄邊距四個方向應該如何設置,只需要在代碼中呈現新舊文檔的變量傳遞即可,具體如下

2.2.2 段落樣式

段落樣式包括對齊、縮進、間距等等,原文檔中采取了段后縮進,標題是居中對齊。這些設置在變量傳遞中能夠很好完成。如果原文檔中沒有設置的變量值為 None

2.2.3 文字塊樣式修改

對于字號、加粗、斜體、顏色等樣式調整,采取的策略是建立空列表,遍歷原文檔每一段每一個文字塊,獲取相應屬性并放到各自的列表中,對同一段而言,其包含的文字塊屬性最多的選項賦值給翻譯后文檔的對應段落(如同一段全部或大部分的文字是加粗,則翻譯后對應段落所有文字塊均設置為加粗) 對NLP感興趣的讀者可自行嘗試如何高度還原英文文檔中某些特定詞語的樣式修改,并在翻譯后的文檔中體現出來

上面的代碼不包含對字體的設置,因為沒必要把英文的字體傳遞給中文文檔。對中文字體的設置之前的文章有提到過,比較復雜,直接見代碼:

from docx.oxml.ns import qn
 
run.font.name = '微軟雅黑'
r = run._element.rPr.rFonts
r.set(qn('w:eastAsia'), '微軟雅黑')

2.3 整體實現步驟

現在每個部分操作均以完成,考慮到本例中有多個文檔均需要翻譯,故全部邏輯如下:

1.利用 glob 模塊批處理框架可獲取某個文件的絕對路徑

2.由 python-docx 完成 Word 文件實例化后對段落進行解析

3.解析出的段落文本交給百度通用翻譯 API,解析返回的 Json 格式結果(上面的修改 demo 中已經完成了這一步)并重新寫入新的文件

4.同個文件全部解析、翻譯并寫入新文件后保存文件

三、代碼實現

導入需要的模塊,除翻譯 demo 中需要的庫外還需要 glob 庫批量獲取文件、python-docx 讀取文件、time 模塊控制訪問并發。為什么要 os 模塊見下文:

import requests
import random
import json
from hashlib import md5
import time
from docx import Document
import glob
import os

對原 demo 的部分內容進行保留,涉及到 query 參數的代碼需要移動到后面的循環中。保留的部分:

效果如下

獲取到段落文本后,可以將段落文本賦值給 query 參數,調用 API demo 的后續代碼。輸出結果的同時用 add_paragraph 將結果寫入新文檔

最后保存成新文件,期望命名為 原文件名_translated 的形式,可用 os.path.basename 方法獲取并經字符串拼接達到目的:

wordfile_new.save(path + r'\\' + os.path.basename(file)[:-5] + '_translated.docx')

單個文件操作完成后將讀取和創建文件的代碼塊放到批處理框架內:

完成了上面的內容后,基本需求就完成了。根據我們梳理的對樣式的修改知識,再把樣式調整的代碼加進來就行了,最終完整代碼如下:

代碼運行完畢后得到五個新的翻譯后文件

翻譯效果如下,可以看到英文被翻譯成中文,并且樣式大部分保留!

至此,所有文檔都被成功翻譯,當然這是機器翻譯的,具體應用時還需要對關鍵部分進一步人工調整,不過整體來說還是一次成功的Python辦公自動化嘗試!

您可能感興趣的文章:
  • python做翻譯軟件詳解,小白也看得明白
  • 告別網頁搜索!教你用python實現一款屬于自己的翻譯詞典軟件
  • 用 Python 寫的文檔批量翻譯工具效果竟然超出想象
  • python爬蟲之爬取百度翻譯
  • 三大Python翻譯神器再也不用擔心學不好英語

標簽:上海 常德 益陽 黑龍江 惠州 黔西 鷹潭 四川

巨人網絡通訊聲明:本文標題《教你如何利用Python批量翻譯英文Word文檔并保留格式》,本文關鍵詞  教你,如何,利用,Python,批量,;如發現本文內容存在版權問題,煩請提供相關信息告之我們,我們將及時溝通與處理。本站內容系統采集于網絡,涉及言論、版權與本站無關。
  • 相關文章
  • 下面列出與本文章《教你如何利用Python批量翻譯英文Word文檔并保留格式》相關的同類信息!
  • 本頁收集關于教你如何利用Python批量翻譯英文Word文檔并保留格式的相關信息資訊供網民參考!
  • 推薦文章
    校园春色亚洲色图_亚洲视频分类_中文字幕精品一区二区精品_麻豆一区区三区四区产品精品蜜桃
    国产精品网站在线播放| 在线看日本不卡| 蜜桃久久精品一区二区| 亚洲婷婷国产精品电影人久久| 久久蜜桃一区二区| 国产人久久人人人人爽| 精品国产乱码久久久久久夜甘婷婷| 日韩一级黄色大片| 精品对白一区国产伦| 精品国产露脸精彩对白| 久久久久高清精品| 国产精品久久福利| 亚洲五码中文字幕| 免费成人在线播放| 国产一区二区三区久久悠悠色av| 国产成人在线色| www.性欧美| 欧美精品v日韩精品v韩国精品v| 欧美一级午夜免费电影| 久久久久久久久久久99999| 国产精品不卡在线观看| 亚洲综合一二区| 伦理电影国产精品| 粉嫩蜜臀av国产精品网站| 色婷婷综合久久久| 日韩欧美中文字幕公布| 久久精品一区四区| 亚洲亚洲精品在线观看| 麻豆国产欧美一区二区三区| 激情五月婷婷综合| 成人avav在线| 欧美一二三四在线| 国产精品不卡视频| 日韩精品高清不卡| 国产精品一区二区你懂的| 93久久精品日日躁夜夜躁欧美| 欧美日韩一区高清| 中文字幕乱码亚洲精品一区| 五月天欧美精品| 成a人片国产精品| 日韩视频在线一区二区| 综合在线观看色| 国产一区二区毛片| 欧美日韩精品专区| **欧美大码日韩| 精品无人码麻豆乱码1区2区| 欧美怡红院视频| 国产精品美女视频| 美女视频黄a大片欧美| 91精品91久久久中77777| 欧美tickling挠脚心丨vk| 亚洲一区二区三区视频在线播放 | 亚洲chinese男男1069| 国产麻豆成人精品| 日韩三级电影网址| 亚洲激情成人在线| 高清在线成人网| 精品久久人人做人人爽| 天天综合色天天| 色狠狠色狠狠综合| 中文字幕日韩av资源站| 国产精品小仙女| 欧美精品一区二| 久久国产精品99精品国产 | 久久99国产精品免费| 欧美亚洲高清一区二区三区不卡| 久久这里只有精品视频网| 美女视频黄久久| 欧美一级黄色大片| 老司机免费视频一区二区| 56国语精品自产拍在线观看| 亚洲精品中文字幕在线观看| 成人免费av在线| 国产精品理论片| av不卡一区二区三区| 欧美激情一区二区三区蜜桃视频| 九九在线精品视频| 久久综合狠狠综合| 国产一区高清在线| 精品国产乱码久久久久久1区2区| 久久99国产精品麻豆| 精品成人a区在线观看| 国产乱码精品一区二区三区忘忧草| 日韩一级二级三级精品视频| 理论电影国产精品| 国产无人区一区二区三区| 国产精品一区二区黑丝| 亚洲国产成人一区二区三区| 国产伦精品一区二区三区免费| 国产日韩v精品一区二区| 不卡一区在线观看| 亚洲精品高清视频在线观看| 欧美日韩亚洲丝袜制服| 天天色天天爱天天射综合| 欧美不卡激情三级在线观看| 国产激情一区二区三区四区| 中文字幕一区二区三中文字幕| 在线观看亚洲精品| 麻豆91精品91久久久的内涵| 久久综合av免费| 91亚洲精华国产精华精华液| 亚洲一区二区视频在线| 91麻豆精品国产91久久久使用方法| 麻豆精品一二三| 久久精品人人做人人爽97| 日本韩国欧美在线| 久久99久久久久久久久久久| 中文字幕 久热精品 视频在线| 一本大道久久a久久精二百| 日韩一区欧美二区| 中文字幕在线免费不卡| 51午夜精品国产| 不卡欧美aaaaa| 激情综合五月天| 亚洲欧美激情插| 久久久久国产精品厨房| 欧美日韩精品系列| 成人性色生活片免费看爆迷你毛片| 亚洲午夜成aⅴ人片| 国产欧美一区二区精品性| 欧美色爱综合网| 成人国产精品免费| 美女脱光内衣内裤视频久久网站| 国产精品日韩成人| 欧美成人三级电影在线| 欧美日韩在线播放三区四区| 波多野洁衣一区| 国产一区二区三区香蕉| 免费看黄色91| 亚洲永久免费av| 国产精品国产a级| 国产亚洲美州欧州综合国| 欧美一区三区二区| 欧美三级蜜桃2在线观看| 91影院在线观看| 成a人片亚洲日本久久| 国产一区在线看| 久久99久久99小草精品免视看| 日韩一区欧美二区| 五月天亚洲婷婷| 亚洲国产精品久久艾草纯爱| 一区二区三区在线观看欧美| 国产精品福利一区二区三区| 日本一区二区三区dvd视频在线| 欧美一级免费观看| 欧美精品高清视频| 欧美人与禽zozo性伦| 欧美日韩午夜精品| 欧美丰满少妇xxxxx高潮对白| 欧美日韩一级大片网址| 欧美中文字幕不卡| 欧美日韩日日摸| 欧美日韩免费视频| 91精品国产综合久久久久| 91精品国产综合久久福利| 欧美男女性生活在线直播观看| 欧美日韩在线电影| 5858s免费视频成人| 欧美一区永久视频免费观看| 精品欧美乱码久久久久久1区2区| 精品福利在线导航| 国产亚洲一二三区| 国产精品久久久久久久蜜臀| 国产精品久久国产精麻豆99网站| 亚洲视频每日更新| 婷婷综合五月天| 久久97超碰色| 成人sese在线| 欧美在线一区二区| 日韩写真欧美这视频| 久久久久99精品国产片| 国产精品久99| 丝袜美腿成人在线| 国产乱码精品一区二区三区av | 一区二区三区精品视频| 亚洲午夜精品网| 精品一区二区在线播放| 成人免费视频免费观看| 欧美在线观看视频在线| 日韩一区二区三区电影在线观看| 国产亚洲综合在线| 亚洲人妖av一区二区| 日韩高清一级片| 成人一区二区三区在线观看| 欧美视频在线播放| 日韩精品一区二区三区中文精品| 国产精品沙发午睡系列990531| 亚洲制服丝袜av| 国产精品一区二区在线观看网站| 91色综合久久久久婷婷| 日韩一级大片在线观看| 国产精品久久免费看| 奇米影视一区二区三区| 色综合久久中文字幕综合网| 精品久久久久av影院| 一卡二卡欧美日韩| 国产suv精品一区二区6| 欧美欧美午夜aⅴ在线观看| 欧美激情一区二区三区蜜桃视频| 香蕉加勒比综合久久|