Merge pull request #14 from senk8/translate_jpa
Browse files- ja/CONTRIBUTING.rst +123 -0
- ja/README.rst +347 -0
- ja/index.rst +20 -0
- ja/installation.rst +50 -0
- ja/usage.rst +75 -0
ja/CONTRIBUTING.rst
ADDED
@@ -0,0 +1,123 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
1 |
+
.. highlight:: shell
|
2 |
+
|
3 |
+
============
|
4 |
+
コントリビュートする方法
|
5 |
+
============
|
6 |
+
|
7 |
+
このプロジェクトではあなたのコントリビュートを歓迎します!どんなに小さい貢献でも、コントリビューターとしてプロジェクトを支援することができます。
|
8 |
+
|
9 |
+
次の方法でコントリビュートすることができます。
|
10 |
+
|
11 |
+
コントリビュートの種類
|
12 |
+
----------------------
|
13 |
+
|
14 |
+
バグの報告
|
15 |
+
~~~~~~~~~~~
|
16 |
+
|
17 |
+
もしバグを発見したらhttps://github.com/nidhaloff/deep_translator/issues でバクを報告してください。
|
18 |
+
|
19 |
+
バグを報告する際にはトラブルシューティングしやすいように、以下の項目を含めて投稿するようにしてください。
|
20 |
+
|
21 |
+
* バグの発生したOSの種類とOSバージョンの情報
|
22 |
+
* ソフトウェアの設定などのローカル環境の情報
|
23 |
+
* バグを再現するための詳細な手順
|
24 |
+
|
25 |
+
バグの修正
|
26 |
+
~~~~~~~~
|
27 |
+
|
28 |
+
このリポジトリのイシューを見ることで、バグの情報を確認できます。
|
29 |
+
"bug" と "help wanted"でタグ付けされているものは、誰でもバグを修正にしてコントリビュートすることができます。
|
30 |
+
|
31 |
+
追加機能の実装
|
32 |
+
~~~~~~~~~~~~~~~~~~
|
33 |
+
|
34 |
+
このリポジトリのイシューを見ることで、実装待ちの機能が確認できます。
|
35 |
+
"enhancement" と "help wanted"でタグ付けされているものは、誰でも実装してコントリビュートすることができます。
|
36 |
+
|
37 |
+
ドキュメントの作成
|
38 |
+
~~~~~~~~~~~~~~~~~~~
|
39 |
+
|
40 |
+
deep_translator は、deep_translator の公式ドキュメントの一部、docstrings、あるいはウェブ上のブログ記事や記事など、常により多くのドキュメントを求めています。
|
41 |
+
|
42 |
+
|
43 |
+
新しい機能の提案
|
44 |
+
~~~~~~~~~~~~~~~
|
45 |
+
|
46 |
+
新しい提案をするには https://github.com/nidhaloff/deep_translator/issues に投稿してください。
|
47 |
+
|
48 |
+
新しい機能を提案するときには、以下の項目を留意してください:
|
49 |
+
|
50 |
+
* 新しい機能の動作をできるだけ詳しく説明してください。
|
51 |
+
* 実装しやすいように機能の規模は限定するようにしてください。
|
52 |
+
* このプロジェクトがボランティアから成り立っていることと、コントリビュートを歓迎する精神を忘れないでください。
|
53 |
+
|
54 |
+
|
55 |
+
開発環境の構築
|
56 |
+
------------
|
57 |
+
|
58 |
+
コントリビュートの準備はできましたか?ここからは deep_translator の開発環境を構築する方法について説明します。
|
59 |
+
|
60 |
+
1. GitHub で deep_translator をフォークする.
|
61 |
+
2. フォークしたものをローカルリポジトリとしてクローンする。::
|
62 |
+
|
63 |
+
$ git clone [email protected]:your_name_here/deep_translator.git
|
64 |
+
|
65 |
+
3. virtualenvの作成とインストールを行う。virtualenvwrapperがインストール済みとすると、以下のコマンドでローカルに開発環境を構築できる::
|
66 |
+
|
67 |
+
$ mkvirtualenv deep_translator
|
68 |
+
$ cd deep_translator /
|
69 |
+
$ python setup.py develop
|
70 |
+
|
71 |
+
4. ローカルで開発を行うために新しいブランチを作成する::
|
72 |
+
|
73 |
+
$ git checkout -b name-of-your-bugfix-or-feature
|
74 |
+
|
75 |
+
これでローカルリポジトリに変更を加えることができるようになります。
|
76 |
+
|
77 |
+
5. 変更が終わったらflake8のコードチェックとテストを通過するようにする。この時、toxで複数バージョンのPythonで動作することを確認する::
|
78 |
+
|
79 |
+
$ flake8 deep_translator tests
|
80 |
+
$ python setup.py test or pytest
|
81 |
+
$ tox
|
82 |
+
|
83 |
+
flake8とtoxのインストールは、virtualenvでpip installを行うことで可能です。
|
84 |
+
|
85 |
+
6. 変更をコミットし、自分のリモートリポジトリにプッシュする::
|
86 |
+
|
87 |
+
$ git add .
|
88 |
+
$ git commit -m "Your detailed description of your changes."
|
89 |
+
$ git push origin name-of-your-bugfix-or-feature
|
90 |
+
|
91 |
+
7. GitHub からプルリクエストを送る.
|
92 |
+
|
93 |
+
プルリクエストにあたって
|
94 |
+
-----------------------
|
95 |
+
|
96 |
+
プルリクエストを送る前に以下のガイドラインに従っているか確認してください:
|
97 |
+
|
98 |
+
1. プルリクエストにテストが含まれている。
|
99 |
+
|
100 |
+
2. プルリクエストで機能が追加された場合、ドキュメントを更新する必要があります。新しい機能について関数内にdocstringで記述し、それに加えてリストREADME.rstのリストに追加してください。
|
101 |
+
|
102 |
+
3. プルリクエストによる変更はPython 3.5、3.6、3.7、3.8またはPyPyで動作することが望まれます。https://travisci.com/nidhaloff/deep_translator/pull_requests を確認し、サポートされている全てのPythonバージョンでテストを通過することを確認してください。
|
103 |
+
|
104 |
+
|
105 |
+
ヒント
|
106 |
+
----
|
107 |
+
|
108 |
+
テストのサブセットを実行するには以下のコマンドが利用できます::
|
109 |
+
|
110 |
+
$ pytest tests.test_deep_translator
|
111 |
+
|
112 |
+
|
113 |
+
デプロイの方法
|
114 |
+
---------
|
115 |
+
|
116 |
+
メンテナンス担当者のためにデプロイの方法を記しておきます。まず、全ての変更がコミットされていることを確認してください。(HISTORY.rstのエントリを含む).
|
117 |
+
次に、以下のコマンドを実行します::
|
118 |
+
|
119 |
+
$ bump2version patch # possible: major / minor / patch
|
120 |
+
$ git push
|
121 |
+
$ git push --tags
|
122 |
+
|
123 |
+
Travisはテストを通過することを確認したら、PyPIにデプロイします。
|
ja/README.rst
ADDED
@@ -0,0 +1,347 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
1 |
+
****************
|
2 |
+
deep_translator
|
3 |
+
****************
|
4 |
+
|
5 |
+
|
6 |
+
.. image:: https://img.shields.io/pypi/v/deep_translator.svg
|
7 |
+
:target: https://pypi.python.org/pypi/deep_translator
|
8 |
+
.. image:: https://img.shields.io/travis/nidhaloff/deep_translator.svg
|
9 |
+
:target: https://travis-ci.com/nidhaloff/deep_translator
|
10 |
+
.. image:: https://readthedocs.org/projects/deep-translator/badge/?version=latest
|
11 |
+
:target: https://deep-translator.readthedocs.io/en/latest/?badge=latest
|
12 |
+
:alt: Documentation Status
|
13 |
+
.. image:: https://img.shields.io/pypi/l/deep-translator
|
14 |
+
:target: https://pypi.python.org/pypi/deep_translator
|
15 |
+
|
16 |
+
.. image:: https://img.shields.io/pypi/dm/deep-translator
|
17 |
+
:target: https://pypi.python.org/pypi/deep_translator
|
18 |
+
.. image:: https://img.shields.io/pypi/status/deep-translator
|
19 |
+
:target: https://pypi.python.org/pypi/deep_translator
|
20 |
+
.. image:: https://img.shields.io/pypi/wheel/deep-translator
|
21 |
+
:target: https://pypi.python.org/pypi/deep_translator
|
22 |
+
|
23 |
+
.. image:: https://img.shields.io/github/last-commit/nidhaloff/gpx_converter
|
24 |
+
:alt: GitHub last commit
|
25 |
+
:target: https://pypi.python.org/pypi/deep_translator
|
26 |
+
|
27 |
+
.. image:: https://img.shields.io/twitter/url?url=https%3A%2F%2Ftwitter.com%2FNidhalBaccouri
|
28 |
+
:alt: Twitter URL
|
29 |
+
:target: https://twitter.com/NidhalBaccouri
|
30 |
+
|
31 |
+
.. image:: https://img.shields.io/badge/$-buy%20me%20a%20coffee-ff69b4.svg?style=social
|
32 |
+
:target: https://www.buymeacoffee.com/nidhaloff?new=1
|
33 |
+
|
34 |
+
|
35 |
+
=======================
|
36 |
+
自然言語の翻訳ツール
|
37 |
+
=======================
|
38 |
+
|
39 |
+
複数の翻訳サービスを使って、簡単な方法で異なる言語間で柔軟に翻訳を **無料** かつ **無制限** に行えるツールです
|
40 |
+
|
41 |
+
* フリーソフトウェア: MIT ライセンス
|
42 |
+
* ドキュメント: https://deep-translator.readthedocs.io.
|
43 |
+
|
44 |
+
==========
|
45 |
+
開発の動機
|
46 |
+
==========
|
47 |
+
|
48 |
+
Pythonを使用してテキストを別の言語に翻訳するタスクがありました。しかし、それを行う簡単な方法を見つけるのは困難でした。なぜなら、このタスクに適用できるライブラリはいくつか存在しますが、それらのほとんどはバグが多いか、無料ではないか、何らかの制約があるか、全ての言語をサポートしていないか、使用するのが簡単ではありませんでした。
|
49 |
+
|
50 |
+
そこで、このタスクを簡単に行えるツールを作成することにしました。100%無料で無制限で使いやすく、すべての言語をサポートしています。
|
51 |
+
|
52 |
+
このツールの目的は、複数の有名な翻訳サービスをこのツールに統合することにあります。
|
53 |
+
|
54 |
+
|
55 |
+
======================
|
56 |
+
使用例
|
57 |
+
======================
|
58 |
+
|
59 |
+
- Pythonを使用してテキストを翻訳したい場合
|
60 |
+
- ファイルのテキストを翻訳したい場合
|
61 |
+
- 1つだけでなく、多くのソースから翻訳結果を取得したい場合
|
62 |
+
- 翻訳を自動化したい場合
|
63 |
+
- 異なる翻訳結果を比較したい場合
|
64 |
+
- 言語を自動検出したい場合
|
65 |
+
|
66 |
+
======================
|
67 |
+
このツールの強み
|
68 |
+
======================
|
69 |
+
|
70 |
+
- 高度な抽象化が施されている
|
71 |
+
- 言語を自動で検出する
|
72 |
+
- 拡張と使用が簡単である
|
73 |
+
- 多くの翻訳サービスを統合して扱える唯一のpythonツールである
|
74 |
+
- 安定している
|
75 |
+
- 有名な翻訳サービスをサポートしている
|
76 |
+
|
77 |
+
========
|
78 |
+
機能
|
79 |
+
========
|
80 |
+
|
81 |
+
* google翻訳のサポート
|
82 |
+
* Pons (pons.com)のサポート
|
83 |
+
* Linguee のサポート
|
84 |
+
* Mymemory のサポート
|
85 |
+
* 自動言語検出
|
86 |
+
* テキストファイルから直接翻訳する
|
87 |
+
* 単語の複数の翻訳結果を取得する
|
88 |
+
* 異なる言語の異なる段落の翻訳を自動化する
|
89 |
+
* コマンドラインから直接翻訳する(バージョン1.1.0以上)
|
90 |
+
|
91 |
+
=============
|
92 |
+
インストール方法
|
93 |
+
=============
|
94 |
+
|
95 |
+
ツールの安定版をインストールする方法です:
|
96 |
+
|
97 |
+
.. code-block:: console
|
98 |
+
|
99 |
+
$ pip install -U deep_translator
|
100 |
+
|
101 |
+
ソースからインストールを行いたい場合、ドキュメントを参照してください。
|
102 |
+
|
103 |
+
=====
|
104 |
+
使い方
|
105 |
+
=====
|
106 |
+
|
107 |
+
このセクションでは、このツールで様々な統合トランスレータを利用するデモを行います。このデモでは、google、pons、linguee、mymemoryの翻訳サービスを扱います(現時点)。将来的には、より多くの翻訳サービスを統合する予定です。
|
108 |
+
|
109 |
+
インポート
|
110 |
+
========
|
111 |
+
|
112 |
+
.. code-block:: python
|
113 |
+
|
114 |
+
from deep_translator import (GoogleTranslator,
|
115 |
+
PonsTranslator,
|
116 |
+
LingueeTranslator,
|
117 |
+
MyMemoryTranslator,
|
118 |
+
detect_language)
|
119 |
+
|
120 |
+
|
121 |
+
サポートされている言語を確認する
|
122 |
+
==========================
|
123 |
+
|
124 |
+
ポイント
|
125 |
+
|
126 |
+
関数get_supported_languagesを静的メソッドとして呼び出すことにより、各翻訳サービスでサポートしている言語を確認できます。
|
127 |
+
|
128 |
+
.. code-block:: python
|
129 |
+
|
130 |
+
# デフォルトではリストを返します
|
131 |
+
langs_list = GoogleTranslator.get_supported_languages() # output: [arabic, french, english etc...]
|
132 |
+
|
133 |
+
# 言語の省略形を辞書型にまとめて返すことも出来ます
|
134 |
+
langs_dict = GoogleTranslator.get_supported_languages(as_dict=True) # output: {arabic: ar, french: fr, english:en etc...}
|
135 |
+
|
136 |
+
言語検出
|
137 |
+
===================
|
138 |
+
|
139 |
+
ポイント
|
140 |
+
|
141 |
+
言語を自動的に検出することもできます。当然、このパッケージは無料です。言語検出機能を無料で使用する場合は、個人でapi_keyを取得する必要があります。ここで無料で入手することができます:https://detectlanguage.com/documentation
|
142 |
+
|
143 |
+
.. code-block:: python
|
144 |
+
|
145 |
+
lang = detect_language('bonjour la vie', api_key='your_api_key')
|
146 |
+
print(lang) # output: fr
|
147 |
+
|
148 |
+
|
149 |
+
Google 翻訳
|
150 |
+
=================
|
151 |
+
|
152 |
+
.. code-block:: python
|
153 |
+
|
154 |
+
text = 'happy coding'
|
155 |
+
|
156 |
+
- ソースの言語に自動検出を使用できます:
|
157 |
+
|
158 |
+
.. code-block:: python
|
159 |
+
|
160 |
+
translated = GoogleTranslator(source='auto', target='german').translate(text=text)
|
161 |
+
|
162 |
+
- ソースの言語の種類を指定することも出来ます:
|
163 |
+
|
164 |
+
.. code-block:: python
|
165 |
+
|
166 |
+
translated = GoogleTranslator(source='english', target='german').translate(text=text)
|
167 |
+
|
168 |
+
- 言語名は省略形で指定することも可能です:
|
169 |
+
|
170 |
+
.. code-block:: python
|
171 |
+
|
172 |
+
translated = GoogleTranslator(source='en', target='de').translate(text=text)
|
173 |
+
|
174 |
+
- ファイルから翻訳を行うことも出来ます:
|
175 |
+
|
176 |
+
.. code-block:: python
|
177 |
+
|
178 |
+
translated = GoogleTranslator(source='auto', target='german').translate_file('path/to/file')
|
179 |
+
|
180 |
+
|
181 |
+
- ソースの言語を検出し、望んだ言語に自動翻訳することが出来ます。
|
182 |
+
|
183 |
+
.. code-block:: python
|
184 |
+
|
185 |
+
# または、異なる言語の文章の翻訳を自動化したい時にも利用できます。
|
186 |
+
translated = GoogleTranslator(source='auto', target='de').translate_sentences([your_list_of_sentences])
|
187 |
+
|
188 |
+
|
189 |
+
|
190 |
+
|
191 |
+
PONS
|
192 |
+
===============
|
193 |
+
|
194 |
+
ポイント
|
195 |
+
|
196 |
+
Google翻訳同様に言語の名前を指定して翻訳することが出来ます。省略形で指定することも可能です。
|
197 |
+
|
198 |
+
.. code-block:: python
|
199 |
+
|
200 |
+
word = 'awesome'
|
201 |
+
|
202 |
+
- 簡単な翻訳方法
|
203 |
+
|
204 |
+
.. code-block:: python
|
205 |
+
|
206 |
+
translated_word = PonsTranslator(source='english', target='french').translate(word)
|
207 |
+
|
208 |
+
# 言語の省略形を指定する
|
209 |
+
translated_word = PonsTranslator(source='en', target='fr').translate(word)
|
210 |
+
|
211 |
+
|
212 |
+
- 全ての同義語か一致する単語を返す
|
213 |
+
|
214 |
+
.. code-block:: python
|
215 |
+
|
216 |
+
# 翻訳結果の全ての同義語を取得したい場合、引数にreturn_allにTrueを指定してください
|
217 |
+
translated_word = LingueeTranslator(source='english', target='french').translate(word, return_all=True)
|
218 |
+
|
219 |
+
|
220 |
+
|
221 |
+
Linguee
|
222 |
+
===================
|
223 |
+
|
224 |
+
|
225 |
+
.. code-block:: python
|
226 |
+
|
227 |
+
word = 'good'
|
228 |
+
|
229 |
+
- 簡単な翻訳方法
|
230 |
+
|
231 |
+
.. code-block:: python
|
232 |
+
|
233 |
+
translated_word = LingueeTranslator(source='english', target='french').translate(word)
|
234 |
+
|
235 |
+
# 言語の省略形を指定する
|
236 |
+
translated_word = LingueeTranslator(source='en', target='fr').translate(word)
|
237 |
+
|
238 |
+
- 全ての同義語か一致する単語を返す
|
239 |
+
|
240 |
+
.. code-block:: python
|
241 |
+
|
242 |
+
# 翻訳結果の全ての同義語を取得したい場合、引数にreturn_allにTrueを指定してください
|
243 |
+
translated_word = LingueeTranslator(source='english', target='french').translate(word, return_all=True)
|
244 |
+
|
245 |
+
|
246 |
+
Mymemory
|
247 |
+
====================
|
248 |
+
|
249 |
+
ポイント
|
250 |
+
|
251 |
+
sourceに"auto"を渡すことでmymemoryの自動言語検出を使用できます。
|
252 |
+
|
253 |
+
.. code-block:: python
|
254 |
+
|
255 |
+
text = 'Keep it up. You are awesome'
|
256 |
+
|
257 |
+
translated = MyMemoryTranslator(source='auto', target='french').translate(text)
|
258 |
+
|
259 |
+
ターミナルでの使用方法
|
260 |
+
====================
|
261 |
+
|
262 |
+
|
263 |
+
ターミナルからdeep_translatorをすぐに使用できます。使用するには、使用する翻訳サービス、翻訳元の言語、翻訳先の言語、翻訳するテキストなどを引数に指定する必要があります。
|
264 |
+
たとえば、Google翻訳を使用するには、引数として「google」を指定します。引数を変更することで、サポートされている他の翻訳サービスに切り替えることも可能です。ドキュメントを読んで、このツールでサポートされている翻訳サービスを確認してください。
|
265 |
+
|
266 |
+
|
267 |
+
.. code-block:: console
|
268 |
+
|
269 |
+
$ deep_translator --translator "google" --source "english" --target "german" --text "happy coding"
|
270 |
+
|
271 |
+
以下のように短く記述することもできます:
|
272 |
+
|
273 |
+
.. code-block:: console
|
274 |
+
|
275 |
+
$ deep_translator -trans "google" -src "english" -tg "german" -txt "happy coding"
|
276 |
+
|
277 |
+
|
278 |
+
翻訳元と翻訳先の言語を省略形で引数に指定することも出来ます。
|
279 |
+
|
280 |
+
.. code-block:: console
|
281 |
+
|
282 |
+
$ deep_translator -trans "google" -src "en" -tg "de" -txt "happy coding"
|
283 |
+
|
284 |
+
|
285 |
+
ヒント
|
286 |
+
==========
|
287 |
+
|
288 |
+
一般的に、google翻訳とmymemoryは文章に翻訳に適していますが、ponsとlingueeは単語の翻訳に適しています。
|
289 |
+
|
290 |
+
========
|
291 |
+
リンク
|
292 |
+
========
|
293 |
+
|
294 |
+
deep_translatorの使用目的やpythonで翻訳をする方法を確認するために以下のmediumの記事を確認してください。
|
295 |
+
https://medium.com/@nidhalbacc/how-to-translate-text-with-python-9d203139dcf5
|
296 |
+
|
297 |
+
===========================
|
298 |
+
スマートフォンアプリ Translator++
|
299 |
+
===========================
|
300 |
+
|
301 |
+
.. image:: assets/app-icon.png
|
302 |
+
:width: 100
|
303 |
+
:alt: Icon of the app
|
304 |
+
|
305 |
+
|
306 |
+
deep_translatorを開発しみて、スマートフォンのアプリとして使用できれば便利なのではないかと思い立ちました。
|
307 |
+
google翻訳やpons、lingueeの個々のアプリは存在しますが、これらを統合して使用できるアプリを作れば便利ではないでしょうか。
|
308 |
+
|
309 |
+
それを出発点として、アプリの開発を開始しました。Pythonで作成しつつ、クロスプラットフォームのアプリを開発したかったので、`kivy フレームワーク <https://kivy.org/#home/>`_ を使用することにしました。
|
310 |
+
`Translator++ app <https://github.com/nidhaloff/deep-translator-app/>`_ もgithubでオープンソースとして公開しています。自由に編集やプルリクエストを行ってください;)
|
311 |
+
|
312 |
+
ポイント
|
313 |
+
|
314 |
+
Translator++はdeep_translatorパッケージがベースになっています。このアプリはパッケージの機能を試すために開発されています。
|
315 |
+
|
316 |
+
02-08-2020にGoogle Playで初公開されました。
|
317 |
+
|
318 |
+
スクリーンショット:
|
319 |
+
|
320 |
+
- スマートフォン :
|
321 |
+
|
322 |
+
.. image:: assets/translator1.jpg
|
323 |
+
:width: 30%
|
324 |
+
:height: 200
|
325 |
+
:alt: screenshot1
|
326 |
+
.. image:: assets/translator2.jpg
|
327 |
+
:width: 30%
|
328 |
+
:height: 200
|
329 |
+
:alt: screenshot2
|
330 |
+
.. image:: assets/spinner.jpg
|
331 |
+
:width: 30%
|
332 |
+
:height: 200
|
333 |
+
:alt: spinner
|
334 |
+
|
335 |
+
- タブレット:
|
336 |
+
|
337 |
+
.. image:: assets/hz_view.png
|
338 |
+
:width: 100%
|
339 |
+
:height: 300
|
340 |
+
:alt: screenshot3
|
341 |
+
|
342 |
+
==========
|
343 |
+
次のステップに進むためには
|
344 |
+
==========
|
345 |
+
|
346 |
+
詳細は examples フォルダを確認してください。
|
347 |
+
コントリビュートはいつでも歓迎しています。このパッケージが便利だと感じた方や使っている方がいたら、遠慮なくプルリクエストをしてフィードバックをください!
|
ja/index.rst
ADDED
@@ -0,0 +1,20 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
1 |
+
deep_translatorのドキュメントへようこそ!
|
2 |
+
======================================
|
3 |
+
|
4 |
+
.. toctree::
|
5 |
+
:maxdepth: 2
|
6 |
+
:caption: Contents:
|
7 |
+
|
8 |
+
readme
|
9 |
+
installation
|
10 |
+
usage
|
11 |
+
modules
|
12 |
+
contributing
|
13 |
+
authors
|
14 |
+
history
|
15 |
+
|
16 |
+
目次
|
17 |
+
==================
|
18 |
+
* :ref:`genindex`
|
19 |
+
* :ref:`modindex`
|
20 |
+
* :ref:`search`
|
ja/installation.rst
ADDED
@@ -0,0 +1,50 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
1 |
+
.. highlight:: shell
|
2 |
+
|
3 |
+
============
|
4 |
+
インストール方法
|
5 |
+
============
|
6 |
+
|
7 |
+
|
8 |
+
安定版
|
9 |
+
--------------
|
10 |
+
|
11 |
+
deep_translatorをインストールしたい場合、以下のコマンドをターミナルで入力してください:
|
12 |
+
|
13 |
+
.. code-block:: console
|
14 |
+
|
15 |
+
$ pip install deep_translator
|
16 |
+
|
17 |
+
常に最新の安定版をインストールできるため、deep_translatorはこの方法でインストールすることを推奨します。
|
18 |
+
|
19 |
+
pipがインストールされていない場合は、以下のPythonインストールガイドを参照してください。
|
20 |
+
|
21 |
+
.. _pip: https://pip.pypa.io
|
22 |
+
.. _Python installation guide: http://docs.python-guide.org/en/latest/starting/installation/
|
23 |
+
|
24 |
+
|
25 |
+
From sources
|
26 |
+
------------
|
27 |
+
|
28 |
+
deep_translatorのソースはGithubのリポジトリからダウンロードできます.
|
29 |
+
|
30 |
+
公開されているリポジトリのクローンも可能です:
|
31 |
+
|
32 |
+
.. code-block:: console
|
33 |
+
|
34 |
+
$ git clone git://github.com/nidhaloff/deep_translator
|
35 |
+
|
36 |
+
tarballをインストールする場合は以下のようになります:
|
37 |
+
|
38 |
+
.. code-block:: console
|
39 |
+
|
40 |
+
$ curl -OJL https://github.com/nidhaloff/deep_translator/tarball/master
|
41 |
+
|
42 |
+
クローンした後に、以下のコマンドを実行することでインストールが出来ます:
|
43 |
+
|
44 |
+
.. code-block:: console
|
45 |
+
|
46 |
+
$ python setup.py install
|
47 |
+
|
48 |
+
|
49 |
+
.. _Github repo: https://github.com/nidhaloff/deep_translator
|
50 |
+
.. _tarball: https://github.com/nidhaloff/deep_translator/tarball/master
|
ja/usage.rst
ADDED
@@ -0,0 +1,75 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
1 |
+
=====
|
2 |
+
使い方
|
3 |
+
=====
|
4 |
+
|
5 |
+
.. code-block:: python
|
6 |
+
|
7 |
+
from deep_translator import GoogleTranslator, PonsTranslator, LingueeTranslator, MyMemoryTranslator
|
8 |
+
|
9 |
+
english_text = 'happy coding'
|
10 |
+
|
11 |
+
result_german = GoogleTranslator(source='auto', target='de').translate(text=english_text)
|
12 |
+
|
13 |
+
# 言語を名前で指定することもできます:
|
14 |
+
translated = GoogleTranslator(source='english', target='german').translate(text=english_text)
|
15 |
+
|
16 |
+
# テキストファイルを翻訳したい場合
|
17 |
+
translated = GoogleTranslator(source='auto', target='german').translate_file('path/to/file')
|
18 |
+
|
19 |
+
# 複数の言語の文章の翻訳を自動化したい場合
|
20 |
+
translated = GoogleTranslator(source='auto', target='de').translate_sentences(your_list_of_sentences)
|
21 |
+
|
22 |
+
|
23 |
+
Ponsを利用することも出来ます: Pons.com
|
24 |
+
|
25 |
+
|
26 |
+
.. code-block:: python
|
27 |
+
|
28 |
+
word = 'good'
|
29 |
+
translated_word = PonsTranslator(source='english', target='french').translate(word)
|
30 |
+
|
31 |
+
# 翻訳する単語の同義語を全て取得したい場合は、return_allにTrueを指定してください。
|
32 |
+
translated_word = PonsTranslator(source='english', target='french').translate(word, return_all=True)
|
33 |
+
|
34 |
+
|
35 |
+
deep_translatorのバージョン1.0.0以上でLingueeをサポートしています:
|
36 |
+
|
37 |
+
|
38 |
+
.. code-block:: python
|
39 |
+
|
40 |
+
word = 'good'
|
41 |
+
translated_word = LingueeTranslator(source='english', target='french').translate(word)
|
42 |
+
|
43 |
+
# 翻訳する単語の同義語を全て取得したい場合は、return_allにTrueを指定してください。
|
44 |
+
translated_word = LingueeTranslator(source='english', target='french').translate(word, return_all=True)
|
45 |
+
|
46 |
+
|
47 |
+
Mymemoryはバージョン1.0.2以上でサポートされています:
|
48 |
+
|
49 |
+
.. code-block:: python
|
50 |
+
|
51 |
+
word = 'good'
|
52 |
+
translated_word = MyMemoryTranslator(source='english', target='french').translate(word)
|
53 |
+
|
54 |
+
|
55 |
+
ターミナルでの使用方法
|
56 |
+
====================
|
57 |
+
|
58 |
+
ターミナルからdeep_translatorをすぐに使用できます。使用するには、使用する翻訳サービス、翻訳元の言語、翻訳先の言語、翻訳するテキストなどを引数に指定する必要があります。
|
59 |
+
たとえば、Google翻訳を使用するには、引数として「google」を指定します。引数を変更することで、サポートされている他の翻訳サービスに切り替えることも可能です。ドキュメントを読んで、このツールでサポートされている翻訳サービスを確認してください。
|
60 |
+
|
61 |
+
.. code-block:: console
|
62 |
+
|
63 |
+
$ deep_translator --translator "google" --source "english" --target "german" --text "happy coding"
|
64 |
+
|
65 |
+
以下のように短く記述することもできます:
|
66 |
+
|
67 |
+
.. code-block:: console
|
68 |
+
|
69 |
+
$ deep_translator -trans "google" -src "english" -tg "german" -txt "happy coding"
|
70 |
+
|
71 |
+
翻訳元と翻訳先の言語を省略形で引数に指定することも出来ます。
|
72 |
+
|
73 |
+
.. code-block:: console
|
74 |
+
|
75 |
+
$ deep_translator -trans "google" -src "en" -tg "de" -txt "happy coding"
|