【初心者向け】Pythonで自動翻訳【Googletrans】

プログラミング入門として、Pythonで言語間の自動翻訳を行うプログラムを解説します。

今回はPython向けのGoogle翻訳ライブラリのGoogletransを使用します。
多くの言語に対応しており、言語の自動検出や言語間の翻訳を簡単に行うことができます。
近年は人工知能(AI)が導入されたことにより、より高精度な翻訳が実現されています。

作業時間は15分程度です。

目次

環境について

今回の解説は、PCにPython3、Googletransをインストールした環境で行います。
また、Pythonの開発環境として、Visual Studio Code(VS Code)をおすすめしています。
まだインストールしていない場合は、次の記事を参考にしてください。

Windowsの場合

Pythonをまだインストールしていない方はこちらから

あわせて読みたい
【Windows】Pythonのインストール手順 Windows11にPython(パイソン)をインストールする手順を解説します。 作業時間は15分程度です。 【インストール環境】 参考までに今回インストールした環境は次の通りで...

Googletransをまだインストールしていない方はこちらから

あわせて読みたい
【初心者向け】WindowsにGoogletransをインストール【Python】 WindowsにGoogletransをインストールする手順を解説します Googletrans(グーグルトランス)はPythonでGoogleの翻訳機能を利用するためのライブラリです。多くの言語に対...

VS Codeをまだインストールしていない方はこちらから

あわせて読みたい
【初心者向け】WindowsにVisual Studio Code(日本語)をインストールする手順【Python設定】 WindowsにVisual Studio Code(VS Code)をインストールする手順と、プログラミング言語『Python』の設定までを解説します。作業時間は30分程度です。 VS Codeはプログラ...

Ubuntu(Linux)の場合

学習用にLinux環境でプログラミングしたい場合はこちらの記事を参考にしてください。
UbuntuはあらかじめPythonがインストールされています。

あわせて読みたい
【初心者向け】Ubuntu 22.04 LTS(日本語)のインストール手順【VirtualBox】 VirtualBox7.0に対応しました。 Ubuntu 22.04 Jammy Jellyfishのインストール手順と日本語入力設定までを解説します。 今回はVirtualBoxを使って仮想マシン上にインスト...

Googletransをまだインストールしていない方はこちらから

あわせて読みたい
【初心者向け】UbuntuにGoogletransをインストール【Python】 UbuntuにGoogletransをインストールする手順を解説します Googletrans(グーグルトランス)はPythonでGoogleの翻訳機能を利用するためのライブラリです。多くの言語に対応...

VS Codeをまだインストールしていない方はこちらから

あわせて読みたい
【初心者向け】Ubuntu22.04にVisual Studio Code(日本語)をインストールする手順 Ubuntu 22.04 LTSにVisual Studio Codeをインストールする手順と、Pythonの開発環境の導入、プログラミング、実行方法までを解説します。 作業時間は10分程度です。 Ubu...

Google Colaboratoryの場合

Google Colaboratory環境でプログラミングしたい場合はこちらの記事を参考にしてください。

Google Colaboratory(略称Colab)はGoogleが提供するクラウド上の開発環境です。
無料で利用することができます。
面倒な環境構築は不要で、Pythonのコードを簡単に実行できます。

あわせて読みたい
【初心者向け】Google Colaboratoryで始めるPython入門 Google Colaboratory(グーグルコラボラトリー)を使ったPythonのプログラミング、実行方法までを解説します。 作業時間は5分程度を目安に進めることができます。 Google ...

Googletransをまだインストールしていない方はこちらから

あわせて読みたい
【初心者向け】Google ColaboratoryにGoogletransをインストール Google ColaboratoryにGoogletransをインストールする手順を解説します Googletrans(グーグルトランス)はPythonでGoogleの翻訳機能を利用するためのライブラリです。多...

\未経験でも”AI”を基礎から学べる Python特化型プログラミングスクール/

Googletransで翻訳してみる

Googletransを使って簡単な翻訳プログラムを作成してみます。

次のように記述してみましょう。

from googletrans import Translator

translator = Translator()
text_ja = "不可視芋"
text_en = translator.translate(text_ja, src='ja', dest='en').text

print(text_en) 

入力できたら実行してみましょう。
VS Codeを使っている場合は画面右上の実行ボタン▷から実行できます。

実行結果は次のようになります。

Invisible potatoes

『不可視芋』の英語訳として『Invisible potatoes』が出力されました。

解説

作成した翻訳プログラムについて解説していきます。

最初の行はGoogletransを使うための準備です。
Googletransの中の『Translator』という翻訳機能をまとめたものを使うということを宣言しています。
Googletransを利用する際は必ず記述すると覚えておきましょう。

from googletrans import Translator

次の行は、翻訳機能をまとめた『Translaltor』を実際に使うための準備です。
1行目と合わせて、Googletransを利用する際は必ず記述すると覚えておきましょう。

translator = Translator()

次の行で翻訳元の言葉を設定しています。
ここでは翻訳元として『不可視芋』という日本語を『text_ja』という入れ物に代入しています。

text_ja = "不可視芋"

次の行で翻訳を実行しています。
translator.translateは翻訳を行う機能です。

text_en = translator.translate(text_ja, src='ja', dest='en').text

translator.translate( )の中に翻訳設定を記述します。
 『text_ja』は前の行で設定した翻訳元の日本語の文章です。
 『src=’ja’』は翻訳元が日本語(ja)であることを示しています。
 『dest=’en’』は翻訳先が英語(en)であることを示しています。

『.text』を使用することで翻訳結果の文字列を取得できます。
翻訳結果は『text_en』という入れ物に代入しています。
今回の場合は翻訳結果の『Invisible potatoes』という文字列が『text_en』に代入されています。

最後の行で、翻訳結果の『text_en』を表示しています。
printは( )の中に記述したものを、結果として出力します。

print(text_en) 

翻訳についての解説は以上です
翻訳元の日本語文章を変更しても翻訳できるか試してみましょう。

ちなみに『ja』や『en』は言語コードと呼ばれ、他にも多くの言語を使用できます。
以下は一例です。

  • 英語:en
  • 日本語:ja
  • スペイン語:es
  • ポルトガル語:pt
  • ドイツ語:de
  • フランス語:fr
  • イタリア語:it
  • ロシア語:ru
  • アラビア語:ar
  • トルコ語:tr
  • 韓国語:ko
  • 中国語(簡体字):zh-CN
  • 中国語(繁体字):zh-TW
  • ヒンディー語:hi
  • ベンガル語:bn
  • ウクライナ語:uk
  • ギリシャ語:el
  • オランダ語:nl
  • チェコ語:cs
  • ポーランド語:pl
  • タイ語:th
  • スウェーデン語:sv
  • ルーマニア語:ro
  • フィンランド語:fi
  • ノルウェー語:no
  • デンマーク語:da
  • クロアチア語:hr
  • インドネシア語:id
  • フィリピン語:tl
  • ベトナム語:vi

\未経験でも”AI”を基礎から学べる Python特化型プログラミングスクール/

文章から言語を判別してみる

入力した文章がどの言語なのかを判別するプログラムを作成してみます。

次のように記述してみましょう。

from googletrans import LANGUAGES, Translator

translator = Translator()
text = "Unsichtbare Kartoffeln"
detected_lang = translator.detect(text).lang
detected_lang_name = LANGUAGES.get(detected_lang)

print("検出した言語コード: " + detected_lang)
print("検出した言語名: " + detected_lang_name)

入力できたら実行してみましょう。

実行結果は次のようになります。

検出した言語コード: de
検出した言語名: german

検出した言語コードとして『de』、検出した言語名として『german(ドイツ語)』が表示されました。

解説

作成した判別プログラムについて解説していきます。

前項の翻訳プログラム同様、冒頭の行はGoogletransを使うための準備です。
今回は『Translator』の他に『LANGUAGES』を加えています。
『LANGUAGES』は言語コードの一覧の確認や、言語コードに対応する言語名の取得に使用します。

from googletrans import LANGUAGES, Translator

translator = Translator()

次の行で判別を行いたい文章を設定しています。
今回は『Unsichtbare Kartoffeln』という文章を『text』という入れ物に代入しています。

text = "Unsichtbare Kartoffeln"

次の行で文章の言語を検出しています。
translator.detectという機能を使い、( )の中に検出したい文章を入力します。
『.lang』を使用することで検出結果の言語コードを取得できます。
結果の言語コードは『detected_lang』という入れ物を用意して代入しています。

detected_lang = translator.detect(text).lang

次の行で言語コードに対応する言語名を取得しています。
LANGUAGES.getという機能を使い、( )の中に言語コードを入力します。
結果の言語名は『detected_lang_name』という入れ物を用意して代入しています。

detected_lang_name = LANGUAGES.get(detected_lang)

最後に、printを使って言語コード『detected_lang』と言語名『detected_lang_name』を出力しています。

print("検出した言語コード: " + detected_lang)
print("検出した言語名: " + detected_lang_name)

言語の判別に関する解説は以上です。

自動判別して翻訳してみる

これまでのプログラムを応用して、文章を自動判別して日本語訳するプログラムを作成してみます。

from googletrans import LANGUAGES, Translator

translator = Translator()
text = "invisible potato"
detected_lang = translator.detect(text).lang
detected_lang_name = LANGUAGES.get(detected_lang)

translated = translator.translate(text, src=detected_lang, dest='ja').text

print("検出言語: " + detected_lang_name)
print("日本語訳: " + translated)

実行結果は次のようになります。

検出言語: english
日本語訳: 目に見えないジャガイモ

Googletransを使う際の注意点

Googletransは無料で使用することができますが、利用には上限があります。
具体的には1カ月当たりの無料枠は500,000文字です。
上限に達すると、使用が制限されてしまいますので、大量の翻訳を行う際はご注意ください。

なにか作ってみる

次の記事ではPythonを使って初心者向けに画像認識AIを作成・解説しています。

あわせて読みたい
【初心者向け】Pythonで画像認識AIをプログラミング【Tensorflow】 プログラミング入門として、Pythonで画像認識を行うプログラムを解説します。 「AIを学びたいけど、どの解説も理論ばかりでよくわからん」という方に向けて、理論は最小...

「AIを学びたいけど、どの解説も理論ばかりでよくわからん」
という方に向けて、理論は最小限にまずはご自身のPCにプログラミング環境を用意し、実際にAIプログラミングを体験することで最初のステップ踏んでみようという記事です。

Tensorflowの学習済みのモデルであるInceptionV3を活用することで、初心者でも簡単にAI画像認識を体験することができます。
AI技術に興味がある方はぜひ参考にしてください。

Pythonの魅力

Pythonは世界的にも人気の高いプログラミング言語のひとつです。

汎用性が高く、データ分析やWebアプリの開発等、幅広い分野で使用されているほか、日本の市場で今後も拡大することが予想されるAI(機械学習、ディープラーニング)技術との親和性も高く、Pythonを扱えるエンジニアの需要は伸びていくことが予想されます。

そのため開発言語として採用する企業も増えています。
市場動向調査では、Pythonエンジニアの求人倍率は約53倍と非常に高く、慢性的に人材が不足している状況です。

 参考: レバテック『2021年12月のITエンジニア・クリエイター正社員転職/フリーランス市場動向

また、プログラミング言語別の年収調査ではPythonは3位と高い水準にあり、中央値で575万円、最大提示年収で1,499万円と、日本人の年収の中央値397万円を大きく上回りました。

 参考: BIZREACH『プログラミング言語別年収中央値を発表、求人検索エンジン「スタンバイ」調べ
 参考: 時事ドットコム『【2022年最新】日本の「平均年収」「年収中央値」を調査

このように、Pythonは将来性の高いプログラミング言語と言えるでしょう。
就職、転職、副業を目指す上で、身につけておきたいスキルです。

Pythonの学習難易度は他のプログラミング言語と比べると比較的低いとされています。

独学で習得することも可能ですが、近年はオンラインスクールを利用して短期間で集中して実務レベルまで習熟させるという方も増えています。

プログラミングのオンラインスクールを活用する場合は、現役のエンジニアが講師となるスクールが優位でしょう。開発現場で通用する質の高い実務ノウハウを学ぶことができます。

また、オンラインスクールであれば全国どこからでも受講できるため、わざわざ都会へ出たり交通費をかけることなく、ライフスタイルに合わせて効率的にスキルを身につけることができることが魅力です。

ITエンジニアとして働き高い収入を得るための先行投資として、オンラインスクールは一つの選択肢となり得るでしょう。
無料体験できるオンラインスクールもあるため、独学でも習得できそうか、短期集中で学んだ方がいいのか、ご自身の力量を見極めてみるのもいいのではないでしょうか。

テックジム 無料のPythonプログラミング入門講座
テックアカデミー無料体験


こちらの記事ではオンラインスクールを受講する価値はあるのかについて解説しています。あわせてどうぞ

よかったらシェアしてね!
  • URLをコピーしました!
  • URLをコピーしました!

コメント

コメントする

CAPTCHA


目次