asp.net Google的translate工具翻译 API

在这篇,我就利用C#写一个小程序,翻译:
思路是这样的:
1:发送POST(或者GET)
2:获取POST(或者GET)的响应
3:正则匹配我们想要的值。
发生POST(或者GET)的函数:


代码如下:

public static string GetGetRequest(string urlP,string encode){
if(null==urlP) return null;
string StrRetP = null;
Stream dataStream = null;
try{
HttpWebRequest myHttpWebRequest=(HttpWebRequest)WebRequest.Create(urlP);
myHttpWebRequest.Timeout = 10000; // 10 secs
HttpWebResponse Objresponse =(HttpWebResponse)myHttpWebRequest.GetResponse();
//Encoding enc = Encoding.GetEncoding(1252); // Windows default Code Page
if(Objresponse.StatusDescription == "OK"){//HttpStatusCode.OK
dataStream = Objresponse.GetResponseStream ();
Encoding objE = String.IsNullOrEmpty(encode)?Encoding.GetEncoding(0):Encoding.GetEncoding(encode);
StreamReader r = new StreamReader(dataStream,objE);
StrRetP= r.ReadToEnd();
}
}catch(Exception e){
StrRetP =e.Message;
}finally{
if(null!=dataStream) dataStream.Close();
}
return StrRetP;
}

这个我在前面的一些文章中有所介绍。
然后正则匹配的函数:


代码如下:

public static string GetMatchString(string text,string pattern,int point){
if(String.IsNullOrEmpty(text)||String.IsNullOrEmpty(pattern))return String.Empty;
Regex rx = new Regex(pattern,RegexOptions.Compiled | RegexOptions.IgnoreCase | RegexOptions.Multiline);
Match match = rx.Match(text);
string word="";
if (match.Success) word = match.Groups[point].Value;
return word.Trim();
}

这个数根据一个正则表达数,返回匹配的值。
直接进入Main主体:


代码如下:

public static void Main(string[] args){
string mess ="我们";
Console.WriteLine(HttpUtility.UrlEncode("我们"));
mess = GetGetRequest("http://translate.google.com/translate_t?langpair="+HttpUtility.UrlEncode("zh-CN|en")+ "&text="+HttpUtility.UrlEncode(mess,System.Text.UnicodeEncoding.GetEncoding( "Gb2312")),"utf-8");
//Console.WriteLine(mess);
mess = GetMatchString(mess,@"(<div id=result_box dir=""ltr"">)([?:\s\S]*?)(</div>)",2);
Console.WriteLine(mess);
}

注意的是
HttpUtility.UrlEncode(mess,System.Text.UnicodeEncoding.GetEncoding( "Gb2312"))
这句,无法识别UrlEncode的字符编码,这里需要指明。
OK,然后csc了,编译一下,下载一下吧。

(0)

相关推荐

  • asp.net(c#)做一个网页数据采集工具

    通过这个软件一两天就完成了几千产品数据的录入,可见很多工作不是一味用人工去做,作为一个程序员,就是要让很多让那些经常做重复性的.繁琐的工作中的人解放出来.下面只是写了一些核心代码,而且采集必须要和对应网站相挂钩,作者:郑少群 复制代码 代码如下: //提取产品列表页中产品最终页的网页 private void button1_Click(object sender, EventArgs e) { if (textBox1.Text.Trim() == "" || textBox2.Te

  • Asp.Net权限管理系统 专用代码生成工具(DDBuildTools) 1.1.0 下载

    DDBuildTools 1.1.0 是supesoft.com为Asp.Net权限管理系统开发的一套代码生成工具.其主要功能: 1.根据数据库表结构生成数据库表结构文档 2.根据数据库表结构生成符合 Asp.Net权限管理系统 的数据库操作代码(支持Access和MsSql2000/2005) 表结构需有标识字段 3.根据数据库表结构生成MsSql2000/2005的表增加/删除/修改 存储过程 4.根据数据库表结构生成符合 Asp.Net权限管理系统 的前台表数据的新增/修改/删除/列表/查

  • asp.net 专业源代码打包工具

    不过,有些人做事比较马虎,经常就是直接将VS生成的解决方案目录直接打包,这样就会包含大量垃圾文件,诸如:obj目录下的所有文件,而且有时bin目录还有二个目录,PDB文件有二份,甚至连xxx.vshost.exe文件也有二份!更让人无语的是,有些人用SVN这种源代码管理软件,每个目录还有个.svn目录! 这种做法显然很容易将一个不大的项目搞成一个比较大的压缩包,这种压缩包一旦做好,上传也慢,人家下载也慢,还会浪费许多服务器资源,下载到这种压缩包,只能让人无语了.没办法,有些人就是很懒,而且那些压

  • asp.net 实现防迅雷等下载工具盗链

    主要代码如下: 复制代码 代码如下: public void ProcessRequest(HttpContext context) { context.Response.ContentType = "application/octet-stream"; HttpRequest req = context.Request; string filename = req.Url.AbsolutePath; string userid = string.Empty; if (HttpCont

  • asp.net 半角全角转化工具

    /// <summary> /// 转全角的函数(SBC case) /// </summary> /// <param name="input">任意字符串</param> /// <returns>全角字符串</returns> ///<remarks> ///全角空格为12288,半角空格为32 ///其他字符半角(33-126)与全角(65281-65374)的对应关系是:均相差65248 //

  • asp.net下URL处理两个小工具方法

    有的时候我们要操作一个URL地址中查询参数,为了不破坏URL的原有结构,我们一般不能直接在URL的后面加&query=value,特别是我们的URL中有多个参数时,这种处理更麻烦. 下面两个小方法就是专门用来为一个URL添加一个查询参数或删除一个查询参数,这两个方法隐藏了原URL有无参数,是不是原来就有这个参数,有没有fragment(#anchor)这些细节和处理 /**//// <summary> /// Add a query to an URL. /// if the URL 

  • ASP.NET开发中经常用到10款工具软件介绍

    所谓工欲善其事,必先利其器,老祖宗留下来的话,还是很有道理滴,一款好的工具,可以帮我们提高工作效率,让我们快速完成开发任务. 下面让我一一介绍,如下的十款工具: 1. EditPlus:文字处理软件 EditPlus自然不必所说,想必大家都有了解,它是一款功能强大的文字处理软件.它可以充分的替换记事本,它也提供网页作家及程序设计师许多强悍的功能.支持 HTML.CSS.PHP.ASP.Perl.C/C++.Java.JavaScript.VBScript 等多种语法的着色显示.程序内嵌网页浏览器

  • IE 性能分析工具(asp.net环境)

    dynaTrace AJAX 是一个页面性能分析工具,是针对浏览器 IE 6 ~ 8 的.它可以用来分析页面渲染时间.DOM方法执行时间,甚至可以看到 JS 代码的解析时间.JQuery 的老爹 John Resig 也鼎力推荐了一把. 这个工具应该很有用,因为用 IE 的人实在是太多了~~万恶的IE6 ! 去下载:dynaTrace AJAX

  • asp.net防止刷新时重复提交(可禁用工具条刷新按钮)

    前段时间遇到了需要禁用刷新的需求,f5按钮就不说了,简单的js就能把它禁用,但是工具条上的刷新按钮却傻傻干不掉. 如果简单的在刷新时重新加载画面,通过window.location.href="url"可以很容易的实现,但是需求是要求在刷新时什么都不做,保留画面的状态,这下子可就复杂化了. asp.net中分辨请求是重新请求还是通过刷新按钮再次请求不是很方便,为了实现这个效果,试过了很多的方式,一下面的两种为例 1. 复制代码 代码如下: private bool pageRefres

  • asp.net Google的translate工具翻译 API

    在这篇,我就利用C#写一个小程序,翻译: 思路是这样的: 1:发送POST(或者GET) 2:获取POST(或者GET)的响应 3:正则匹配我们想要的值. 发生POST(或者GET)的函数: 复制代码 代码如下: public static string GetGetRequest(string urlP,string encode){ if(null==urlP) return null; string StrRetP = null; Stream dataStream = null; try

  • Python如何通过百度翻译API实现翻译功能

    本人英语不好,很多词组不认识,只能借助工具:百度翻译和谷歌翻译都不错,近期自学Python,就想能否自己设计一个百度翻译软件呢? 百度翻译开放平台:http://api.fanyi.baidu.com/api/trans/product/index 百度翻译开放平台是百度翻译面向广大开发者提供开放服务的平台. 服务涵盖:通用翻译API.定制化翻译API.语音翻译SDK.拍照翻译SDK等,并持续更新中.自己用通用的即可. 通用翻译API采用全流程自助申请的模式.点击网站上方的"登录"按钮

  • ASP利用Google实现在线翻译功能

    有时候想为我们的网页提供多语言支持,如果一种语言用一张网页来做实在太麻烦了,幸好Google提供了语言工具功能,下面介绍如何利用它来实现网页多种语言之间的转换. 复制代码 代码如下: <form> <select name="lan"> <option value="en|de">英语 翻译成 德语</option> <option value="en|es">英语 翻译成 西班牙语&l

  • C#实现谷歌翻译API示例代码

    由于谷歌翻译官方API是付费版本,本着免费和开源的精神,分享一下用C#实现谷歌翻译API的代码.这个代码非常简单,主要分两块:通过WebRequest的方式请求内容:获取Get方式的请求参数(难点在于tk的获取). 一.WebRequest代码 var webRequest = WebRequest.Create(url) as HttpWebRequest; webRequest.Method = "GET"; webRequest.CookieContainer = cookie;

  • Laravel框架实现调用百度翻译API功能示例

    本文实例讲述了Laravel框架实现调用百度翻译API功能.分享给大家供大家参考,具体如下: 前言 最近在弄的视频下载网站,弄seo是人工去google翻译,然后再保存,这样下去很累啊,然后就想到让程序自己去翻译然后保存不就行了嘛,自己主要把中文的seo搞定就OK了.说干就干,最先去找了google 翻译 api,可惜要绑定信用卡,太麻烦,放弃,然后找到百度翻译API,虽然支持的国外语言不多,但最基本的国家也都有了.ok,开始撸码. 代码说明 使用的是Laravel框架,语言包存放在resour

  • php使用百度翻译api示例分享

    百度翻译API的PHP代码,测试可以实现,不过英译中可能需要转换编码. 复制代码 代码如下: <?phpfunction language($value,$from="auto",$to="auto"){  $value_code=urlencode($value);  #首先对要翻译的文字进行 urlencode 处理  $appid="YourApiKey";  #您注册的API Key  $languageurl = "ht

  • Python通过调用有道翻译api实现翻译功能示例

    本文实例讲述了Python通过调用有道翻译api实现翻译功能.分享给大家供大家参考,具体如下: 通过调用有道翻译的api,实现中译英.其他语言译中文 Python代码: # coding=utf-8 import urllib import urllib2 import json import time import hashlib class YouDaoFanyi: def __init__(self, appKey, appSecret): self.url = 'https://open

  • C#调用百度翻译API实现一个翻译功能

    前言 虽然百度翻译相对于谷歌翻译在准确性方面还有很大的提升空间,但网络的现实情况及百度翻译接口的免费易用性方面让我们选择百度翻译接口.下面来一起看看详细的步骤吧 方法如下 appId 和 passWord 需要到百度翻译开放平台申请 using System; using System.Net; using System.Web.Security; using System.Web.Script.Serialization; namespace TranslatorOfWang { class

  • ASP模仿google suggest风格实现下拉菜单效果

    今天和大家一起利用ASP模仿实现google suggest风格的下拉菜单,直接上代码 1.前台代码: <%@LANGUAGE="JAVASCRIPT" CODEPAGE="936"%> <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.d

  • php有道翻译api调用方法实例

    本文实例讲述了php有道翻译api调用方法,这里我们利用了file_get_contents函数直接读取由api返回的数据进行处理,分享给大家供大家参考.具体分析如下: 调用之前我们需申请一个有道翻译API数据接口的key,地址如: 复制代码 代码如下: http://fanyi.youdao.com/openapi?path=data-mode 方法说明,数据接口: 复制代码 代码如下: http://fanyi.youdao.com/openapi.do?keyfrom=<keyfrom>

随机推荐