Google translate

200 views
Skip to first unread message

Kike. Sevilla

unread,
May 21, 2014, 2:44:08 PM5/21/14
to publice...@googlegroups.com
Hola Grupo:
¿Hay alguien que use las api de google translate para pasarle un texto y lo traduzca al idioma seleccionado y me pueda indicar cómo hacerlo?

Muchas gracias.

Kike
Sevilla - España.

Luis Maria Guayan

unread,
May 21, 2014, 3:03:54 PM5/21/14
to publice...@googlegroups.com
Mira si este artículo de Doug Hennig te ayuda:

-- Using Google Translate from VFP --
http://doughennig.blogspot.com.ar/2011/12/using-google-translate-from-vfp.html


Mira también este código de la Wikis de VFP

--
Google Translater  --
http://fox.wikis.com/wc.dll?Wiki~GoogleTranslater



Luis María Guayán
Tucumán, Argentina
_________________________
http://www.PortalFox.com
Nada corre como un zorro
_________________________

Miguel A.

unread,
May 22, 2014, 2:39:17 AM5/22/14
to publice...@googlegroups.com
Hola Kike,

Traducir es fácil, a este código tienes que pasarle dos variables:
txx= 'Que contiene el texto a traducir'
SLX='Combinación de idiomas, por ejemplo traducir español/inglés sería = "en/es"

objeto=Createobject("InternetExplorer.Application")
objeto.Visible =.f.
objeto.navigate2(ir_a)
temp=inkey(2)
ObjTexto ='Cargando la página de búsqueda.'
DO WHILE objeto.busy
Wait Window ObjTexto Time(0.3)
Enddo
TEMP=INKEY(2)
objeto.DOcument.TEXT_FORM.text.VALUE = TXX
objeto.document.text_form.sl.value= SLX
objeto.DOcument.text_form.submit()
ObjTexto ='Traduciendo.'
DO WHILE objeto.busy
Wait WinDOw ObjTexto Time(0.3)
EndDO
temp=inkey(10)
* Coge lo que se ve de la página
wait windows 'Traduciendo al '+idioma nowait
aText = objeto.Document.Body.InnerText
objeto.quit

Bien, el problema ahora es que en aText tienes toda la página, yo lo que hago es colocar al principio y al final del texto una palabra intraducible a cualquier idioma y luego la busco dentro de aText para saber dónde comienza la traducción por ejemplo:
 
xyz=-1+RAT(DONDE,aText) && DONDE = "La primera palabra intraducible"

y con la segunda haces igual para saber donde termina. Y, lo que hay entre ambas será la traducción

Espero que te funcione. Saludos,

Miguel A.

Jairo Miranda

unread,
May 22, 2014, 5:07:31 PM5/22/14
to publice...@googlegroups.com

Mira este otro.

 

*? TraducirIE("Nothing runs like a fox")

 

FUNCTION TraducirIE

  LPARAMETERS ATRA

  LOCAL cUrl, Texto, oIE, cResul, oDoc,XPI,XPF,TRA,X

  IF TYPE("oIE")#'O'

    oIE = CREATEOBJECT("internetexplorer.application")

  ENDIF

  oIE.Navigate2("about:blank")

  cUrl=LOWER('http://translate.google.com.mx/?hl=es&tab=TT#en|es|'+ALLTRIM(ATRA))

  oIE.navigate2(cUrl)

  Texto ='Traduciendo.'

  DO WHILE oIE.busy OR oIE.readystate!=4

    WAIT WINDOW Texto TIMEOUT 0.1

    Texto=Texto+'.'

    IF OCCURS('.',Texto)>3

      Texto ='Traduciendo.'

    ENDIF

  ENDDO

 

  WAIT WINDOW 'Terminado' TIMEOUT 1

 

  oDoc = oIE.DOCUMENT

  Texto = TYPE('oDoc.body')

  cResul = oDoc.body.innerHTML()

  oDoc = .NULL.

  RELEASE oDoc

  oIE.QUIT

  RELEASE oIE

  XPI = AT('',cResul)+32

  cResul = SUBSTR(cResul,XPI)

  XPF = AT('',cResul)-1

  cResul = SUBSTR(cResul,1,XPF)

  X=OCCURS('<',cResul)

  TRA=''

  DO WHILE X>0

    XPI=0

    XPF=0

    XPI=AT('<',cResul)-1

    XPF=AT('>',cResul)+1

    TRA=TRA+SUBSTR(cResul,1,XPI)

    cResul=SUBSTR(cResul,XPF)

    X=OCCURS('<',cResul)

  ENDDO

  TRA=TRA+cResul

  RETURN TRA

ENDFUNC

 

JM

Reply all
Reply to author
Forward
0 new messages