翻译过程保留原文字样式,表格样式还待优化
import os
from docx.document import Document
import docx
from docx.oxml.table import CT_Tbl
from docx.oxml.text.paragraph import CT_P
from docx.table import _Cell, Table
from docx.text.paragraph import Paragraph
from urllib import request
from docx.oxml.ns import qn
import requests
import random
import json
from hashlib import md5
import time
import os
import glob
def iter_block_items(parent):
"""
Yield each paragraph and table child within *parent*, in document order.
Each returned value is an instance of either Table or Paragraph. *parent*
would most commonly be a reference to a main Document object, but
also works for a _Cell object, which itself can contain paragraphs and tables.
"""
if isinstance(parent, Document):
parent_elm = parent.element.body
elif isinstance(parent, _Cell):
parent_elm = parent._tc
else:
raise ValueError("something's not right")
for child in parent_elm.iterchildren():
if isinstance(child, CT_P):
yield Paragraph(child, parent)
elif isinstance(child, CT_Tbl):
yield Table(child, parent)
def make_md5(s,encoding='utf-8'):
return md5(s.encode(encoding)).hexdigest()
appid=''
appkey=''
from_lang='en'
to_lang='zh'
translate_api='http://api.fanyi.baidu.com'
path='/api/trans/vip/translate'
url=translate_api + path
headers={
'Content-Type':'application/x-www-form-urlencoded'}
def translate_content(query):