Bonjour à tous. J'ai constaté que wdtrad propose en option d'utiliser deepl. J'aimerais proposer d'utiliser ce service à un client. Est ce qu'il Existe un exemple? ou quelqu'un a à t'il déjà un code sur ce service ? Pour info : Bonjour visiteur, Merci de vous Inscrire ou de vous connectez pour voir les liens! L'api : Bonjour visiteur, Merci de vous Inscrire ou de vous connectez pour voir les liens!
Bonjour. Lorsque vous pouviez utiliser l'API gratuitement, j'ai fait un programme dans windev 23 pour faire des traductions en appelant cette API. Cela a très bien fonctionné. J'ai dû cesser de l'utiliser lorsqu'il n'était plus gratuit. Rubén
Bonjour, j'ai mis ici le code de la fonction qui a appelé l'API. J'ai dit que c'était pour la version gratuite de l'API et que cela a pu changer depuis. PROCEDURE Traducir(sTextoOriginal is string, sDesde is string = "EN", sHasta is string = "ES") sServicioWeb is string = "Bonjour visiteur, Merci de vous Inscrire ou de vous connectez pour voir les liens!" Req is httpRequest Req..URL = sServicioWeb + "text=[%URLEncode(sTextoOriginal)%]&source_lang_lang=[%sDesde%]&target_lang=[%sHasta%]&auth_key=0" Req.Method = httpGet nErrores is int = 0 LOOP cMyResponse is a httpResponse = HTTPSend(Req) IF ErrorOccurred THEN //Error(ErrorInfo(errFullDetails)) nErrores++ IF nErrores > 20 THEN ExecuteMainThread(ActualizarResultadoErroneo,"### E R R O R Conectando ###") BREAK END ELSE ExecuteMainThread(ActualizarResultado,cMyResponse..Content) BREAK END END
Merci Ruben, Même si il manque je crois ActualizarResultadoErroneo Et ActualizarResultado C'est un bon début.
Dans ces fonctions, le résultat de la traduction est simplement affiché. Créer des procédures avec des paramètres de type String. PROCEDURE ActualizarResultado(LOCAL sRes is string) vRes is Variant = JSONToVariant(sRes) STC_Resultado = vRes.result.translations[1].beams[1].postprocessed_sentence ToClipboard(STC_Resultado) // Le résultat traduit est laissé dans le presse-papiers. PROCEDURE ActualizarResultadoErroneo(sError is string) STC_Resultado = sError J'ai vu sur les liens que vous avez envoyés qu'ils utilisent déjà la version 2 de l'API, mais je ne pense pas que la partie qui est utilisée ici ait beaucoup changé. Rubén
Salut, Merci pour le code j'ai essayé mais j'ai l'erreur suivante Bonjour visiteur, Merci de vous Inscrire ou de vous connectez pour voir les liens!
Bonjour. Comme je l'ai indiqué, j'ai fait cela il y a quelques années avec WD23, et depuis, les API ont évolué et ont de nouvelles versions. Vérifiez le code JSon renvoyé et ajustez ce qui a changé. D'après ce que j'ai vu, ce qui est renvoyé est une chaîne vide. Si vous changez l'url en "Bonjour visiteur, Merci de vous Inscrire ou de vous connectez pour voir les liens!", une chaîne JSON est renvoyée avec l'erreur 403 qui doit être due au fait que le paiement "auth_key" est absent. Rubén
Bonjour savez-vous utiliser qtranslate avec mon windev J'ai essayé mais cela fonctionne un fois sur trois SI LanceAppli([ "C:\Program Files (x86)\QTranslate\QTranslate.exe" ],... exeActif, exeNonBloquant) = Faux ALORS Erreur(ErreurInfo()) FIN Multitâche(200) sResHandle = SysFenHandle("QTranslate") Multitâche(200) SResFocus = SysDonneFocus(sResHandle) Multitâche(200) EnvoieTouche("^N") Multitâche(50) EnvoieTouche("^V") Multitâche(200) EnvoieTouche("{TAB}") Multitâche(200) EnvoieTouche("^C") Multitâche(300) SI PressePapierFormat(ppfTexte) = Vrai ALORS MaChaineFr = PressePapier() // Contenu du presse-papiers dans Texte FIN