1

google translate apiを使用するには、このURLを理解しました

http://translate.google.com/translate_a/t?client=t&text=revenge&hl=en&sl=en&tl=hi&ie=UTF-8&oe=UTF-8&multires=1&otf=1&ssel=3&tsel=3&sc=1

それをクリックすると、正確な翻訳が施されたjson形式のファイルが表示されます。Javaプログラムを使用してこのファイルを取得するために、次のコードを記述しました。

    String word = "revenge";

    System.setProperty("http.proxyHost", "172.30.0.16");
    System.setProperty("http.proxyPort", "3128");

    URL url = new URL("http://translate.google.com/translate_a/t?client=t&text="+word+"&hl=en&sl=en&tl=hi&ie=UTF-8&oe=UTF-8&multires=1&otf=1&ssel=3&tsel=3&sc=1");
    url.openConnection();
    InputStream reader = url.openStream();
    FileOutputStream writer = new FileOutputStream("t");
    byte[] buffer = new byte[153600];
    int bytesRead = 0;
    while ((bytesRead = reader.read(buffer)) > 0)
    {  
       writer.write(buffer, 0, bytesRead);
       buffer = new byte[153600];
    }
    writer.close();
    reader.close();

しかし、それは次のエラーを示しています

スレッド「main」の例外java.io.IOException:サーバーがHTTP応答コードを返しました:URLの403:http ://translate.google.com/translate_a/t?client=t&text=Moon&hl=en&sl=en&tl=hi&ie=UTF- 8&oe = UTF-8&multires = 1&otf = 1&ssel = 3&tsel = 3&sc = 1 at sun.net.www.protocol.http.HttpURLConnection.getInputStream(HttpURLConnection.java:1403)at java.net.URL.openStream(URL.java:1029 )at smsMain.main(smsMain.java:20

助けを得たいと思っています。手動でファイルを取得していますが、プログラムを使用することは禁止されています。

4

1 に答える 1

0

Google翻訳のホームページから:

GoogleTranslateAPIは有料サービスとして利用できます。詳細については、価格とFAQのページを参照してください。

したがって、エラーが発生することはそれほど驚くべきことではありません。

于 2012-10-27T15:52:55.873 に答える