ASP Google的translate API代码_ASP教程-查字典教程网
ASP Google的translate API代码
ASP Google的translate API代码
发布时间:2016-12-29 来源:查字典编辑
摘要:直接看代码:复制代码代码如下:ClassGoogleTranslatorsubClass_Initialize()RURI="http://...

直接看代码:

复制代码 代码如下:

Class GoogleTranslator

sub Class_Initialize()

RURI="http://translate.google.com/translate_t?langpair={0}&text={1}"

End Sub

Private Opt_ '

Property Get Opt

Opt=Opt_

End Property

Property Let Opt(Opt_s)

Opt_=Opt_s

End Property

Private RURI

Function AnalyzeChild(patrn,texts,IPos)

Dim regEx, Match, Matches

Set regEx = New RegExp

regEx.IgnoreCase = true

regEx.Global = True

regEx.Pattern = patrn

regEx.Multiline = True

Dim RetStr

Set Matches = regEx.Execute(texts)

If(Matches.Count > 0)Then RetStr= Matches(0).SubMatches(IPos)

AnalyzeChild=RetStr

Set regEx =Nothing

End Function

Function getHTTPPage(url)

dim objXML

set objXML=server.createobject("MSXML2.XMLHTTP")'定义

objXML.open "GET",url,false'打开

objXML.send()'发送

If objXML.readystate<>4 then

exit function

End If

getHTTPPage=BytesToBstr(objXML.responseBody)

set objXML=nothing'关闭

if err.number<>0 then err.Clear

End Function

Function BytesToBstr(body)

dim objstream

set objstream = Server.CreateObject("adodb.stream")

objstream.Type = 1

objstream.Mode =3

objstream.Open

objstream.Write body

objstream.Position = 0

objstream.Type = 2

objstream.Charset = "utf-8"

'转换原来默认的UTF-8编码转换成GB2312编码,否则直接用XMLHTTP调用有中文字符的网页得到的将是乱码

BytesToBstr = objstream.ReadText

objstream.Close

set objstream = nothing

End Function

Public Function GetText(str)

If(isempty(str)) Then Exit Function

Dim newUrl,Rs

newUrl=Replace(Replace(RURI,"{0}",Server.URLEncode(Opt)),"{1}",Server.URLEncode(str))

Rs=getHTTPPage(newUrl)

GetText = AnalyzeChild("(<div id=result_box dir=""ltr"">)([?:sS]*?)(</div>)",Rs,1)

End Function

Sub class_Terminate

End Sub

End Class

然后使用的时候:

复制代码 代码如下:

Dim Obj

Set Obj = new GoogleTranslator

Obj.Opt="zh-CN|en"

response.write(Obj.GetText("我们"))

然后就可以了,需要注意的是因为Google的任何产品都是UTF-8格式的,这个asp文件保存为UTF-8格式,并在开头加上:

<%@ LANGUAGE=VBScript CodePage=65001%>

<%Option Explicit

'... 开抄我上面的代码

就可以了。

相关阅读
推荐文章
猜你喜欢
附近的人在看
推荐阅读
拓展阅读
  • 大家都在看
  • 小编推荐
  • 猜你喜欢
  • 最新ASP教程学习
    热门ASP教程学习
    编程开发子分类