您好,登錄后才能下訂單哦!
這篇文章主要介紹了微信公眾平臺開發之如何實現谷歌翻譯,具有一定借鑒價值,感興趣的朋友可以參考下,希望大家閱讀完這篇文章之后大有收獲,下面讓小編帶著大家一起了解一下。
1)Google翻譯接口
Google提供翻譯的API接口,參見https://developers.google.com/translate/v2/getting_started
but
Google Translate API is a paid service.
so
想利用Google Translate API free charge 就要另外想辦法了
Google提供免費的在線翻譯功能,因此,可以通過Web發送翻譯請求給Google,接收它的html返回,然后,通過分析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; } }
更有甚者,有人發現通過http://translate.google.com/translate_a/t?client=p與Google交互可以得到json返回,這就相當于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; }
這里要注意的有兩個問題
1)編碼問題,例子中都采用utf-8,連php文件的屬性都是utf-8
2)google問題,google在中國不保證一直能連上,雖然有多個鏈接 google.com/google.cn/google.com.hk
2)微信調用
有了接口,在微信中調用就簡單了
接口文件 translate_func.php (save as utf-8)
<?php /* 2 Google Translate interface 1) Google Translate WEB IF get translated text by parsing return html which code is GBK function translate_web() 2) Google Translate JSON IF get translated text which format=json(set client<>t)&default code=GBK function translate_json() d_eng (sh209419@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'); } } ?>
調用代碼片段
if ($RX_TYPE=="text") { include("translate_func.php"); $resultStr = $this->responseText($postObj, translate(trim($postObj->Content))); }
3)效果展示
感謝你能夠認真閱讀完這篇文章,希望小編分享的“微信公眾平臺開發之如何實現谷歌翻譯”這篇文章對大家有幫助,同時也希望大家多多支持億速云,關注億速云行業資訊頻道,更多相關知識等著你來學習!
免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。