远程抓取GOOGLE的自动翻译结果
作者:Eve Cole
更新时间:2009-07-01 16:08:47
1 函数RemoveHTML()函数RemoveHTML(strhtml)
2 如果 strhtml<>"" 那么
3 暗淡 s_str 作为字符串
4 s_str=regex.replace(strHTML,"<[^>]+>","")
5 s_str=替换(s_str," ","")
6 返回s_str
7 结束如果
8 结束功能
9
10 函数 china_to_english()函数 china_to_english(texts,linguals)
11 Dim 有效负载 As String = "hl=zh-CN&ie=UTF8&text="& texts &"&langpair="& languages &""
12 暗淡的 str_return 作为字符串
13 Dim req As WebRequest = WebRequest.Create(" http://translate.google.com/translate_t ") ' 开始获取连接。
14 req.Credentials = CredentialCache.DefaultCredentials '取得默认
15 req.Method = "POST" '以POST方式发送,这里默认返回GET方式发送
16 req.ContentType = "application/x-www-form-urlencoded" 'POST方式需要在传送这个编码,如果上传文件,则修改为multipart/form-data
17 req.timeout=10000 '连接超时定时
18 req.ContentLength=payload.Length'头部长度
19 Dim编码 As Encoding = Encoding.GetEncoding("UTF-8") '转换成流,大部网站一般转换成UTF-8就可以了,注意是大写的编码
20 Dim 字节 As Byte() = Encoding.GetBytes(payload) '转换成流
21 req.ContentLength = bytes.Length '传送流的长度
22 Dim newStream As Stream = req.GetRequestStream() '转换写入
23 newStream.Write(bytes, 0, bytes.Length) ' 写入传送流
24 newStream.Close() '关闭
25'上面发送完成,下面获取服务器返回
26 Dim res As HttpWebResponse = CType(req.GetResponse(), HttpWebResponse) ' 提交返回标识
27 if res.StatusDescription="ok" then ' 返回获取状态。
28 current.response.write("暂时无法连接到网站,请换用其他程序")
29 current.response.end()
30 结束如果
31 Dim dataStream As Stream = res.GetResponseStream() ' 返回给指针
32 Dim reader As New StreamReader(dataStream,encoding.getencoding("gb2312")) ' 读
33 Dim responseFromServer As String = reader.ReadToEnd() ' 读取所有
34
35 str_return=responseFromServer '属性回传
36
37 reader.Close() '接下来三个关闭
38 数据流.关闭()
39 res.关闭()
40
41 暗淡 ss 作为字符串 = str_return
42 ss = regex.replace(ss,"(?i:(.+)(<div)(.+)(>)(.+)(</div>)(.+))" ,"$5") ' 提取我们想要的原文
43 ss = RemoveHTML(ss) '删除HTML
44 ss = ss.substring(3) '删除翻译二字
45 return ss '函数返回
46 结束功能
47
48 在调用china_to_english(texts,linguals)需要传递两个参数第一个为要译的文字,第二个是要进行相对译的语种代码。
示例:中译英,其第二个参数为:zh-Cn|en
我导入的命名空间如下:
进口系统
导入系统.Web
导入系统.IO
导入 Microsoft.VisualBasic
导入 System.Web.HttpContext
导入 System.Web.UI
导入 System.Web.UI.WebControls
导入系统.文本
导入 System.Text.RegularExpressions
进口系统.Net