锐英源软件
第一信赖

精通

英语

开源

擅长

开发

培训

胸怀四海 

第一信赖

当前位置:锐英源 / 开源技术 / 基于.NET Core和谷歌开发中文翻译软件
服务方向
人工智能数据处理
人工智能培训
kaldi数据准备
小语种语音识别
语音识别标注
语音识别系统
语音识别转文字
kaldi开发技术服务
软件开发
运动控制卡上位机
机械加工软件
软件开发培训
Java 安卓移动开发
VC++
C#软件
汇编和破解
驱动开发
联系方式
固话:0371-63888850
手机:138-0381-0136
Q Q:396806883
微信:ryysoft

基于.NET Core和谷歌开发中文翻译软件


背景

想开发个中文翻译软件,帮我自动翻译一些英文,从https://github.com/Grizley56/GoogleTranslateFreeApi上找到了翻译例子,感谢作者,不过我没有用这个例子开发出我的产品,这个例子让我的视野看到了.NET Core,再次感谢作者。

谷歌翻译

向谷歌网站https://translate.google.cn发送请求,会回复结果,但因为是免费的,不能频繁请求,我在我的产品里解决了频繁请求问题,有一定难度。请求的格式处理代码为:

			string postData = $"sl={fromLanguage.ISO639}&" +
$"tl={toLanguage.ISO639}&" +
$"hl=en&" +
$"q={Uri.EscapeDataString(originalText)}&" +
$"tk={token}&" +
"client=t&" +
"dt=at&dt=bd&dt=ex&dt=ld&dt=md&dt=qca&dt=rw&dt=rm&dt=ss&dt=t&" +
"ie=UTF-8&" +
"oe=UTF-8&" +
"otf=1&" +
"ssel=0&" +
"tsel=0&" +
"kc=7";

里面的token有算法,在类GoogleKeyTokenGenerator的DecrypthAlgorythm方法里。

翻译例子架构

例子里有基于.NET Core的控制台主程序,还有基于.NET Core 2.0的翻译库项目,翻译库项目里有通信主类、通信辅助类和数据解析类。通信主类是:GoogleTranslator。通信辅助类有:GoogleKeyTokenGenerator和LanguageAttribute。数据解析类有:TranslationResult等。

.NET Core

.NET Core项目在解决方案视图的项目节点下有依赖项节点,依赖项节点下有SDK节点,下面有.NET Core的名称,如下图:

.NET Core SDK

.NET Core和.NET区别

我因为要在.NET下开发翻译软件,所以就尝试把代码放到.NET下用,代码文件拷贝过去,编译通过不了,提示如下:

[DataMember]找不到

后来查微软文档发现DataMember在.NET里没有。

[DataContract] 和[DataMember]
数据契约(DataContract) 服务契约定义了远程访问对象和可供调用的方法,数据契约则是服务端和客户端之间要传送的自定义数据类型。

这些可能是通信里涉及到的,所以修饰的属性还不能去。

[DataContract] 和[DataMember] 是.NET Core里特有的修饰属性。

友情链接
版权所有 Copyright(c)2004-2021 锐英源软件
公司注册号:410105000449586 豫ICP备08007559号 最佳分辨率 1024*768
地址:郑州大学北校区院(文化路97号院)内