Pythonでtextblobを用いた英語から日本語への文の翻訳を行ってみます。
今回はtextblobを用います。このライブラリ・モジュールはPythonの標準ライブラリではありませんので、事前にインストールする必要があります。
■Python
今回のPythonのバージョンは、「3.8.5」を使用しています。(Windows10)(pythonランチャーでの確認)
■textblobを用いた英語から日本語への文の翻訳
では、早速textblobを用いた英語から日本語への文の翻訳を行うため、スクリプトを書いていきます。
■コード
from textblob import TextBlob blob = TextBlob("It was sunny today. The world is bright.") print(blob.translate(from_lang='en', to='ja'))
「from import」でtextblobのTextBlobを呼び出します。その後、blobという変数を定義し、その中でTextBlob()を用います。括弧内には引数,パラメータとして、英語の文を渡します。
その後、blobに対してtranslate()を用います。括弧内には第1の引数,パラメータ(from_lang=)として、英語の文を翻訳するために、「en(English)」を渡します。次に第2の引数,パラメータ(to=)として、翻訳の目的地として「ja(Japanese)」を渡します。これで英語から日本語への文の翻訳が行われます。翻訳された文をprint()で出力します。
■実行・検証
このスクリプトを「py_translate_test.py」という名前で、Pythonが実行されている作業ディレクトリ(カレントディレクトリ)に保存し、コマンドプロンプトから実行してみます。
実行してみると、textblobを用いたことで、英語から日本語への文の翻訳が行われ、翻訳された文をprint()で出力させることができました。
■備考
blobに対してtranslate()を用いる場合は、第1の引数,パラメータとして「from_lang=’起点となる言語’」を渡していますが、これが設定されていない場合は下記のエラーが出力されます。
Traceback (most recent call last): File "py_translate_test.py", line 5, in print(blob.translate(to='ja')) File "C:\Users\user_\AppData\Roaming\Python\Python38\site-packages\textblob\blob.py", line 568, in translate return self.__class__(self.translator.translate(self.raw, File "C:\Users\user_\AppData\Roaming\Python\Python38\site-packages\textblob\translate.py", line 61, in translate self._validate_translation(source, result) File "C:\Users\user_\AppData\Roaming\Python\Python38\site-packages\textblob\translate.py", line 88, in _validate_translation if result.strip() == source.strip(): AttributeError: 'list' object has no attribute 'strip'
コメント