Maison  >  Article  >  Applet WeChat  >  Développement de la plateforme publique WeChat--Google Translate

Développement de la plateforme publique WeChat--Google Translate

黄舟
黄舟original
2016-12-30 10:28:443230parcourir

1) Interface de traduction Google

2) Appel WeChat

3) Affichage des effets

---------------- -------------------------------------------------- -----------------------

1) Interface Google Translate

Google fournit une interface API de traduction, voir https : / /developers.google.com/translate/v2/getting_started

mais

L'API Google Translate est un service payant.

donc

Je veux prendre L'avantage de l'API Google Translate est gratuit et nécessite un autre moyen

Google fournit une fonction de traduction en ligne gratuite. Par conséquent, vous pouvez envoyer une demande de traduction à Google via le Web, recevoir son retour HTML, puis obtenir le texte traduit par. en analysant le HTML.

function translate_web($text, $language="auto|en") { 
	if (empty($text)) return false; 
	
	$url = "http://google.cn/translate_t?ie=UTF-8&oe=UTF-8&langpair=".$language."&text=".urlencode($text);	
    	$html=file_get_contents($url);
	
	// parse html 
	// html souce: TTS_TEXT_SIZE_LIMIT=100;TRANSLATED_TEXT='世界,你好!';INPUT_TOOL_PATH='//www.google.com';
	$mode= ("/TRANSLATED_TEXT='(.*)';INPUT_TOOL_PATH/");
	if (preg_match($mode,$html,$out)){
		return $out[1];//ret;
	}
}

De plus, quelqu'un a découvert que vous pouvez obtenir un retour JSON en interagissant avec Google via http://translate.google.com/translate_a/t?client= p, qui équivaut aux utilisations de l'API

function translate_json($text, $language="auto|en") { 
	if (empty($text)) return false; 
	
	$url = "http://translate.google.cn/translate_a/t?client=p&ie=UTF-8&oe=UTF-8&langpair=".$language."&text=".urlencode($text);
	$json=file_get_contents($url);
	$data = json_decode($json);
	return $data->sentences[0]->trans;	
}

Exemple d'interface Google Translate : http://download.csdn.net/detail/d_eng/6563915

Il y a deux problèmes à noter ici

1) Problème d'encodage, les exemples utilisent tous utf-8, même les attributs du fichier PHP sont utf-8

2) Problème de Google, Google ne le garantit pas peut toujours être connecté en Chine, bien qu'il existe plusieurs liens google.com/google.cn/google.com.hk

2) Appel WeChat

Avec l'interface, appeler WeChat est simple

Fichier d'interface Translate_func.php (enregistrer sous utf-8)

t)&default code=GBK
		function translate_json()

	 d_eng (sh109419@163.com)
	 2013-11-16 
 */ 

/*
	Google Translate WEB IF
	get translated text by parsing return html which code is GBK
 */ 

//header("Content-Type:text/html; charset=utf-8");  

function translate_web($text, $language="auto|en") { 
	if (empty($text)) return false; 
	
	$url = "http://google.cn/translate_t?ie=UTF-8&oe=UTF-8&langpair=".$language."&text=".urlencode($text);	
        $html=file_get_contents($url);
	
	// parse html 
	// html souce: TTS_TEXT_SIZE_LIMIT=100;TRANSLATED_TEXT='世界,你好!';INPUT_TOOL_PATH='//www.google.com';
	$mode= ("/TRANSLATED_TEXT='(.*)';INPUT_TOOL_PATH/");
	if (preg_match($mode,$html,$out)){
		return $out[1];//ret;
	}
} 

function translate_json($text, $language="auto|en") { 
	if (empty($text)) return false; 
	
	$url = "http://translate.google.cn/translate_a/t?client=p&ie=UTF-8&oe=UTF-8&langpair=".$language."&text=".urlencode($text);
	$json=file_get_contents($url);
	$data = json_decode($json);
	return $data->sentences[0]->trans;	
}

function  with_chinese($text){        
    return  preg_match('/[\x7f-\xff]/',$text);
}        

function translate($text) { 
	if (with_chinese($text)) {
		return translate_json($text,'zh-CN|en');
	} else {
		return translate_json($text,'en|zh-CN');
	}
}

?>

Extrait de code d'appel

if  ($RX_TYPE=="text") {  
                    include("translate_func.php");  
                    $resultStr = $this->responseText($postObj,  translate(trim($postObj->Content)));  
                }

3) Affichage de l'effet

Développement de la plateforme publique WeChat--Google Translate

Ce qui précède est le contenu du développement de la plateforme publique WeChat-Google Translate. Pour plus de contenu connexe, veuillez faire attention au site Web PHP chinois (www.php.cn) !


Déclaration:
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn