千家信息网

python中怎么实现一个谷歌翻译功能

发表于:2024-11-24 作者:千家信息网编辑
千家信息网最后更新 2024年11月24日,今天就跟大家聊聊有关python中怎么实现一个谷歌翻译功能,可能很多人都不太了解,为了让大家更加了解,小编给大家总结了以下内容,希望大家根据这篇文章可以有所收获。import requestsimpo
千家信息网最后更新 2024年11月24日python中怎么实现一个谷歌翻译功能

今天就跟大家聊聊有关python中怎么实现一个谷歌翻译功能,可能很多人都不太了解,为了让大家更加了解,小编给大家总结了以下内容,希望大家根据这篇文章可以有所收获。


import requestsimport jsonimport reimport time
def googleTranslate(text): """ 用谷歌翻译内容,返回翻译结果 params: text 翻译的内容 return: str s 翻译结果 """
url = 'https://translate.google.cn/_/TranslateWebserverUi/data/batchexecute?rpcids=MkEWBc&f.sid=-2984828793698248690&bl=boq_translate-webserver_20201221.17_p0&hl=zh-CN&soc-app=1&soc-platform=1&soc-device=1&_reqid=5445720&rt=c' headers = { 'origin': 'https://translate.google.cn', 'referer': 'https://translate.google.cn/', 'sec-fetch-dest': 'empty', 'sec-fetch-mode': 'cors', 'sec-fetch-site': 'same-origin', 'user-agent': 'Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/87.0.4280.66 Safari/537.36', 'x-client-data': 'CIW2yQEIpbbJAQjEtskBCKmdygEIrMfKAQj2x8oBCPfHygEItMvKAQihz8oBCNzVygEIi5nLAQjBnMsB', 'Decoded':'message ClientVariations {repeated int32 variation_id = [3300101, 3300133, 3300164, 3313321, 3318700, 3318774, 3318775, 3319220, 3319713, 3320540, 3329163, 3329601];}', 'x-same-domain': '1' } # 以防万一,我全加上了,可能有些不写也可以 data = { 'f.req': f'[[["MkEWBc","[[\\"{text}\\",\\"auto\\",\\"zh-CN\\",true],[null]]",null,"generic"]]]' } # text则是你要翻译的内容
res = requests.post(url, headers=headers, data=data).text # 获取返回的结果 pattern = '\)\]\}\'\s*\d{3,4}\s*\[(.*)\s*' # 提取需要的部分 part1 = re.findall(pattern, res) part1_list = json.loads(part1[0]) # 字符串转列表 if part1_list[2] is None: # 如果返回的结果中没有需要的数据,则返回输入的内容 print(text) return text content1 = part1_list[2].replace('\n', '') part2_list = json.loads(content1)[1][0][0][5:][0] # 过滤结果中重复的部分 s = '' for i in part2_list: # 遍历结果中的每一句话,并进行拼接 s += i[0] print(s) return stext = 'friend. Let us look back on 2020 and look forward to 2021.'print(text)googleTranslate(text)

效果

效果如何?

如何翻译成其他语言?

当然,这仅仅是实现了任何语言转为中文,要转为别的语言,你可以通过执行js,获取所有语言对应的英文字母,以字典的形式存储,最后保存为json文件

然后执行程序时,动态地输入翻译后的语言,去json文件中获取对应的英文代表,然后替换data中的"zh-CN"即可。比如我想翻译成日语,我就将"zh-CN"替换成 "ja",这样,翻译出来的结果就是日语了

修改data数据

翻译结果


看完上述内容,你们对python中怎么实现一个谷歌翻译功能有进一步的了解吗?如果还想了解更多知识或者相关内容,请关注行业资讯频道,感谢大家的支持。

0