ウェブ翻訳

Prev Next

Classic/VPC環境で利用できます。

ウェブサイトを構成する HTML文書全体または特定の領域のエレメント(Element)を別の言語に翻訳します。

参考

使用前に次の内容をご確認ください。

  • 画像形式のテキストは翻訳不可
  • テキストに適用されたスタイルは、一部一致しなかったり欠落することがある
  • テキストに適用されたリンクまたはアクションは、一部動作しなかったり欠落することがある
  • htmlパラメータサイズの制限が存在: UTF-8基準でタグ、スペースなどすべての文字を含めて200,000バイト
  • htmlパラメータのサイズが大きいほどが遅くなるため、翻訳対象領域の elementリクエストをお勧めする
  • 1回当たりの推奨最大文字数: 60,000文字
  • 1分当たりの推奨最大文字数: 3,600,000文字
  • 課金: タグとスペースを含めてすべての文字数をカウント

リクエスト

リクエスト形式を説明します。リクエスト形式は次の通りです。

メソッド URI
POST /translate

リクエストヘッダ

Papago Translation APIで共通して使用されるヘッダの詳細は、Papago Translationの共通ヘッダをご参照ください。

リクエストボディ

リクエストボディの説明は次の通りです。

フィールド タイプ 必須の有無 説明
source String Required ソーステキスト(Source)の言語コード
  • auto(自動言語検出) | ko(韓国語) | en(英語) | ja(日本語)| zh-CN(中国語(簡体字)) | zh-TW(中国語(繁体字)) | vi(ベトナム語) | th(タイ語) | id(インドネシア語) | fr(フランス語) | es(スペイン語) | ru(ロシア語)
  • 翻訳可能な言語ペアに関する情報は翻訳可能な言語を参照
target String Required 翻訳後テキスト(Target)の言語コード
  • ko(韓国語) | en(英語) | ja(日本語)| zh-CN(中国語(簡体字)) | zh-TW(中国語(繁体字)) | vi(ベトナム語) | th(タイ語) | id(インドネシア語) | fr(フランス語) | es(スペイン語) | ru(ロシア語)
  • 翻訳可能な言語ペアに関する情報は翻訳可能な言語を参照
glossaryKey String Optional 用語集 ID
  • 用語集データに基づいて置換翻訳を適用
  • 韓国語⇔英語、韓国語⇔日本語、韓国語⇔中国語(簡体字)、韓国語⇔中国語(繁体字)、韓国語⇔フランス語、英語⇔日本語、英語⇔中国語(簡体字)、英語⇔中国語(繁体字)、英語⇔ベトナム語、英語⇔タイ語、英語⇔インドネシア語、英語⇔フランス語、日本語⇔中国語(簡体字)、日本語⇔中国語(繁体字)
html String Required 翻訳対象の HTML文書全体または特定の領域のエレメント(Element)
  • 最大200,000Bytesまで入力可能(UTF-8基準タグ、スペースを含む)
参考

ソース言語を指定しなくても(autoに指定)自動で言語を検出して翻訳結果を提供します。この場合、言語の検出に追加の課金は行わず、翻訳リクエストの文字数の基準でのみ課金します。

翻訳可能な言語

翻訳可能な言語の説明は次の通りです。

サポート言語 翻訳方向 サポート言語
韓国語 英語、日本語、中国語(簡体字)、中国語(繁体字)、ベトナム語、タイ語、インドネシア語、フランス語、スペイン語、ロシア語
英語 韓国語、日本語、ベトナム語、タイ語、インドネシア語、フランス語
日本語 韓国語、英語
中国語(簡体字) 韓国語
中国語(繁体字) 韓国語

リクエスト例

リクエストのサンプルコードは次の通りです。

HTML文書全体を翻訳した場合

HTML文書全体を翻訳した場合のリクエストのサンプルコードは次の通りです。

curl --location --request POST 'https://papago.apigw.ntruss.com/web-trans/v1/translate' \
--header 'X-NCP-APIGW-API-KEY-ID: {アプリの登録時に発行された Client ID}' \
--header 'X-NCP-APIGW-API-KEY: {アプリの登録時に発行された Client Secret}' \
--header 'Content-Type: application/x-www-form-urlencoded' \
--data-urlencode 'source=auto' \
--data-urlencode 'target=ja' \
--data-urlencode '<div> こんにちは。Papagoです。</div>'\''
<div papago-id="0" papago-translate="translated"><font class="papago-parent"><font class="papago-source" style="display:none;">
</font>
</font><font class="papago-parent"><font class="papago-source" style="display:none;">こんにちは。Papagoです。</font>Hello, I'm Papago.</font><font class="papago-parent"><font class="papago-source" style="display:none;">
</font>
</font></div>%'

特定の領域のエレメント(Element)を翻訳した場合

特定の領域のエレメント(Element)を翻訳した場合のリクエストのサンプルコードは次の通りです。

curl --location --request POST 'https://papago.apigw.ntruss.com/web-trans/v1/translate' \
--header 'X-NCP-APIGW-API-KEY-ID: {アプリの登録時に発行された Client ID}' \
--header 'X-NCP-APIGW-API-KEY: {アプリの登録時に発行された Client Secret}' \
--header 'Content-Type: application/x-www-form-urlencoded' \
--data-urlencode 'source=auto' \
--data-urlencode 'target=ko' \
--data-urlencode 'html=<!DOCTYPE html>
<html lang="ko">
  <head>
    <meta charset="UTF-8" />
    <meta http-equiv="X-UA-Compatible" content="IE=edge" />
    <meta name="viewport" content="width=device-width, initial-scale=1.0" />
    <title>Example</title>
    <style>
      body {
        margin-top: 50px;
      }

      ul.comment_container {
        width: 500px;
        list-style-type: none;
      }

      li.comment_item_wrapper {
        margin-bottom: 5rem;
        padding: 10px 20px;
        border: 1px solid gray;
        border-radius: 10px;
      }

      .user_info {
        font-weight: bold;
      }
    </style>
  </head>
  <body>
    <!-- comments -->
    <ul class="comment_container">
      <!-- comment -->
      <li class="comment_item_wrapper">
        <div class="user_info">
          <span class="nickname">user1</span>
        </div>
        <div class="content">
          <p>
            Lorem ipsum dolor sit amet consectetur adipisicing elit. Natus
            nostrum in earum minus voluptates nobis fugiat rerum totam illum
            ipsum.
          </p>
        </div>
      </li>
      <!-- comment -->

      <!-- comment -->
      <li class="comment_item_wrapper">
        <div class="user_info">
          <span class="nickname">user2</span>
        </div>
        <div class="content">
          <p>Lorem ipsum dolor sit amet.</p>
        </div>
      </li>
      <!-- comment -->

      <!-- comment -->
      <li class="comment_item_wrapper">
        <div class="user_info">
          <span class="nickname">user3</span>
        </div>
        <div class="content">
          <p>
            Lorem ipsum dolor sit, amet consectetur adipisicing elit. Ex tempora
            ipsa iusto temporibus consectetur. Libero sequi consequatur
            quibusdam dignissimos totam, praesentium harum dolor nisi
            repudiandae in error tempora incidunt aperiam.
          </p>
        </div>
      </li>
      <!-- comment -->

      <!-- comment -->
      <li class="comment_item_wrapper">
        <div class="user_info">
          <span class="nickname">user4</span>
        </div>
        <div class="content">
          <p>
            Lorem ipsum dolor sit amet consectetur adipisicing elit. Natus
            nostrum in earum minus voluptates nobis fugiat rerum totam illum
            ipsum.
          </p>
          <br />
          <p>Lorem ipsum dolor sit amet.</p>
        </div>
      </li>
      <!-- comment -->
    </ul>
    <!-- comments -->

    <script>
      const comments = [
        ...document.getElementsByClassName('\''comment_item_wrapper'\''),
      ];
      const htmlsToRequest = comments.map((comment) => comment.outerHTML);

      console.log(htmlsToRequest);
    </script>
  </body>
</html>'

レスポンス

レスポンス形式を説明します。

レスポンスボディ

レスポンスボディの説明は次の通りです。

フィールド タイプ 必須の有無 説明
status_code Integer レスポンスステータス
data String - 翻訳結果の HTML文書全体または特定の領域の Element

レスポンスステータスコード

Papago Translation APIで共通して使用されるレスポンスステータスコードの詳細は、Papago Translationの共通レスポンスステータスコードをご参照ください。

レスポンス例

レスポンスのサンプルコードは次の通りです。

HTML文書全体を翻訳した場合

HTML文書全体を翻訳した場合のレスポンスのサンプルコードは次の通りです。

<div> こんにちは。パパゴです。</div>'\''

<div papago-id="0" papago-translate="translated">
    <font class="papago-source" style="display:none;">


    </font>
    <font class="papago-parent">Hello, I'm Papago.</font>
    <font class="papago-source" style="display:none;">


    </font>
</div>%

特定の領域のエレメント(Element)を翻訳した場合

特定の領域のエレメント(Element)を翻訳した場合のレスポンスのサンプルコードは次の通りです。

<!doctype html>
<html lang="ko">
  <head>
    <meta charset="UTF-8">
    <meta http-equiv="X-UA-Compatible" content="IE=edge">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <title>Example</title>
    <style>
      body {
        margin-top: 50px;
}

      ul.comment_container {
        width: 500px;
        list-style-type: none;
}

      li.comment_item_wrapper {
        margin-bottom: 5rem;
        padding: 10px 20px;
        border: 1px solid gray;
        border-radius: 10px;
}

      .user_info {
        font-weight: bold;
}
    </style>
  </head>
  <body>
    <!-- comments -->
    <ul class="comment_container">
      <!-- comment -->
      <li class="comment_item_wrapper">
        <div class="user_info">
          <span class="nickname">user1</span>
        </div>
        <div class="content">
          <p>
            Lorem ipsum dolor sit amet, consectetur adipiscing elit. Natus
            鼓膜の鼻孔からボリュームを抜いた部分は、汗をかくために肥厚性鼓膜を抜いた部分です。
            Ipsum
          </p>
        </div>
      </li>
      <!-- comment -->

      <!-- comment -->
      <li class="comment_item_wrapper">
        <div class="user_info">
          <span class="nickname">user2</span>
        </div>
        <div class="content">
          <p>Lorem ipsum dolor座談会。</p>
        </div>
      </li>
      <!-- comment -->

      <!-- comment -->
      <li class="comment_item_wrapper">
        <div class="user_info">
          <span class="nickname">user3</span>
        </div>
        <div class="content">
          <p>
            Lorem ipsum dolor sit amet, consectetur adipiscing elit. 臨時
            temporbus consteturに同意します。ダミー結果値
            Quibusdam dignissimos totam, praesentium harum dolorum nisi
            一時的な事故周辺にエラーがあります。
          </p>
        </div>
      </li>
      <!-- comment -->

      <!-- comment -->
      <li class="comment_item_wrapper">
        <div class="user_info">
          <span class="nickname">user4</span>
        </div>
        <div class="content">
          <p>
            Lorem ipsum dolor sit amet, consectetur adipiscing elit. Natus
            鼓膜の鼻孔からボリュームを抜いた部分は、汗をかくために肥厚性鼓膜を抜いた部分です。
            Ipsum
          </p>
          <br>
          <p>Lorem ipsum dolor座談会。</p>
        </div>
      </li>
      <!-- comment -->
    </ul>
    <!-- comments -->

    <script>
      const comments = [
        ...document.getElementsByClassName('comment_item_wrapper'),
];
      const htmlsToRequest = comments.map((comment) => comment.outerHTML);

      console.log(htmlsToRequest);
    </script>
  
</body></html>