BING TRANSLATE API不再适用于2012年

时间:2012-12-02 21:13:46

标签: php bing translate

几个月前我一直在使用BING TRANSLATE API,一切都很完美。

现在我需要打开旧文件并翻译一些东西,但它似乎不再有效了。

试图在BING网站上进行一些搜索,但它非常混乱。 我也在谷歌上搜索过,但是有太多过时的文章,我不知道该相信哪些。

这是我以前的代码完美无缺。

我今天注册了一个新的API密钥,但我认为新的API密钥是base64_encode格式。我尝试解码它仍然无法正常工作。当然,我试过没有解码它。

任何人都可以提供一些指导吗?

错误:

  

{ “SearchResponse”:{ “版本”: “2.2”, “查询”:{ “SearchTerms”: “鱼”}, “错误”:[{ “代码”:1002, “消息”:“参数   无效   值 “” 参数 “:” SearchRequest.AppId “ ”值“:” ccTq4vytm9Kh / MC8ux57OSvlU9   lqDkeiJkXM3L4jVk =”, “HELPURL”: “http://msdn.microsoft.com/en-us/library/dd251042.aspx”}]}}

我的代码

     define('BING_API','KEY_HERE_AAAAAAAAA');
function loadData($url, $ref = false) {
            $chImg = curl_init($url);
            curl_setopt($chImg, CURLOPT_RETURNTRANSFER, true);
            curl_setopt($chImg, CURLOPT_USERAGENT, "Mozilla/5.0 (Macintosh; Intel Mac OS X 10.6; rv:2.0) Gecko/20100101 Firefox/4.0");
            if ($ref) {
                curl_setopt($chImg, CURLOPT_REFERER, $ref);
            }
            $curl_scraped_data = curl_exec($chImg);
            curl_close($chImg);
            return $curl_scraped_data;
        }

        function translate($text, $from = 'en', $to = 'fr') {
            $data = loadData('http://api.bing.net/json.aspx?AppId=' . BING_API . '&Sources=Translation&Version=2.2&Translation.SourceLanguage=' . $from . '&Translation.TargetLanguage=' . $to . '&Query=' . urlencode($text));
            $translated = json_decode($data);
            if (sizeof($translated) > 0) {
                if (isset($translated->SearchResponse->Translation->Results[0]->TranslatedTerm)) {
                    return $translated->SearchResponse->Translation->Results[0]->TranslatedTerm;
                } else {
                    return false;
                }
            } else {
                return false;
            }
        }
    echo translate('fish','en','fr');

2 个答案:

答案 0 :(得分:0)

AFAIK,Bing Translator API在某些时候停止了,但我现在找不到新闻稿。它在幕后使用了Microsoft Translator API。

Microsoft Translator API is now offered via Azure Marketplace。免费提供的服务有限。

可以找到示例/代码here

HTH。

答案 1 :(得分:0)

API仍然可用 - 它刚刚移至Windows Azure Marketplace。

每月有200万个字符可供免费使用。

PHP示例:http://blogs.msdn.com/b/translation/p/phptranslator.aspx

您可以在此处查看如何获取凭据:http://blogs.msdn.com/b/translation/p/gettingstarted1.aspx