Якщо ви не ховалися під каменем, ви, ймовірно, використовували Google Translate багато разів у своєму житті. Щоразу, коли ви намагаєтеся перекласти слово або речення з однієї мови на іншу, саме API Google Translate дає вам бажані результати у фоновому режимі. Хоча ви можете перекласти будь-що, просто перейшовши на веб-сторінку Google Translate, ви також можете інтегрувати Google Translate API у свої веб-програми або настільні програми. Найкраще в API це те, що його надзвичайно легко налаштувати і використовувати.
Насправді ви можете робити багато речей за допомогою Google Translate API, починаючи від визначення мов і закінчуючи простим перекладом тексту, налаштуванням вихідної та цільової мов та перекладом цілих списків текстових фраз. У цій статті ви побачите, як працювати з Google Translate API мовою програмування Python.
Встановлення Google Translate API
Перш ніж ви зможете працювати з Google Translate API в Python, необхідно встановити його. Є два різні методи встановлення API. Перший метод простий. Просто перейдіть до терміналу та використовуйте pipдля встановлення API, як і для будь-якої іншої бібліотеки Python. Для цього введіть у терміналі наступну команду:
$ pip install googletrans
Натисніть [Enter] і Python для Google Translate API буде встановлено у вашій системі.
Тепер, коли ви встановили API, ми побачимо його на кількох прикладах.
Список мов, що підтримуються
Google Translate API підтримує багато мов. Щоб відобразити список усіх мов, що підтримуються, запустіть наступний скрипт:
import googletrans
print(googletrans.LANGUAGES)
У наведеному вище прикладі ви використовуєте import ключове слово для імпорту модуля googletrans. Згодом, ви можете перерахувати імена всіх мов, надрукувавши LANGUAGES атрибут googletrans модуля.
При виконанні наведений вище фрагмент коду перерахує всі імена мов, що підтримуються, разом з їх скороченою нотацією. Ось як виглядатиме результат:
{'af': 'afrikaans', 'sq': 'albanian', 'am': 'amharic', 'ar': 'arabic', 'hy': 'armenian', 'az': 'azerbaijani', 'eu': 'basque', 'be': 'belarusian', 'bn': 'bengali', 'bs': 'bosnian', 'bg': 'bulgarian', 'ca': 'catalan', 'ceb': 'cebuano', 'ny': 'chichewa', 'zh-cn': 'chinese (simplified)', 'zh-tw': 'chinese (traditional)', 'co': 'corsican', 'hr': 'croatian', 'cs': 'czech', 'da': 'danish', 'nl': 'dutch', 'en': 'english', 'eo': 'esperanto', 'et': 'estonian', 'tl': 'filipino', 'fi': 'finnish', 'fr': 'french', 'fy': 'frisian', 'gl': 'galician', 'ka': 'georgian', 'de': 'german', 'el': 'greek', 'gu': 'gujarati', 'ht': 'haitian creole', 'ha': 'hausa', 'haw': 'hawaiian', 'iw': 'hebrew', 'hi': 'hindi', 'hmn': 'hmong', 'hu': 'hungarian', 'is': 'icelandic', 'ig': 'igbo', 'id': 'indonesian', 'ga': 'irish', 'it': 'italian', 'ja': 'japanese', 'jw': 'javanese', 'kn': 'kannada', 'kk': 'kazakh', 'km': 'khmer', 'ko': 'korean', 'ku': 'kurdish (kurmanji)', 'ky': 'kyrgyz', 'lo': 'lao', 'la': 'latin', 'lv': 'latvian', 'lt': 'lithuanian', 'lb': 'luxembourgish', 'mk': 'macedonian', 'mg': 'malagasy', 'ms': 'malay', 'ml': 'malayalam', 'mt': 'maltese', 'mi': 'maori', 'mr': 'marathi', 'mn': 'mongolian', 'my': 'myanmar (burmese)', 'ne': 'nepali', 'no': 'norwegian', 'ps': 'pashto', 'fa': 'persian', 'pl': 'polish', 'pt': 'portuguese', 'pa': 'punjabi', 'ro': 'romanian', 'ru': 'russian', 'sm': 'samoan', 'gd': 'scots gaelic', 'sr': 'serbian', 'st': 'sesotho', 'sn': 'shona', 'sd': 'sindhi', 'si': 'sinhala', 'sk': 'slovak', 'sl': 'slovenian', 'so': 'somali', 'es': 'spanish', 'su': 'sundanese', 'sw': 'swahili', 'sv': 'swedish', 'tg': 'tajik', 'ta': 'tamil', 'te': 'telugu', 'th': 'thai', 'tr': 'turkish', 'uk': 'ukrainian', 'ur': 'urdu', 'uz': 'uzbek', 'vi': 'vietnamese', 'cy': 'welsh', 'xh': 'xhosa', 'yi': 'yiddish', 'yo': 'yoruba', 'zu': 'zulu', 'fil': 'Filipino', 'he': 'Hebrew'}
Основне використання
Основне використання Google Translate API - це, звичайно, переклад слів або речень з однієї мови на іншу. Для цього нам потрібно імпортувати клас Translator із модуля googletrans
from googletrans import Translator
Далі вам необхідно створити об'єкт класу Translator
translator = Translator()
Після того, як об'єкт класу Translator буде створено, ви передаватимете текст у вихідній мові як параметр для translate() методу в Translator() об'єкт класу, як показано нижче:
result = translator.translate('Mitä sinä teet')
У наведеному вище скрипті ми передаємо фінський текст методом translate()
Метод translate() повертає об'єкт, що містить інформацію про перекладений текст, вихідну та цільову мови, а також про вимову тексту. За замовчуванням метод translate() повертає англійський переклад переданого тексту. У нашому випадку об'єкт, що повертається методом, translate() зберігається в змінній .result
Об'єкт, що повертається методом, translate() має наступні атрибути:
- src: вихідна мова
- dest: мова призначення, встановлена на англійську (en)
- origin: Вихідний текст, у нашому прикладі це "Mitä sinä teet"
- text: перекладений текст, це буде «що ти робиш?» у нашому випадку
- pronunciation: Вимова перекладеного тексту
Давайте роздрукуємо всі вказані вище атрибути та подивимося, який результат ми отримаємо:
print(result.src)
print(result.dest)
print(result.origin)
print(result.text)
print(result.pronunciation)
Вихід:
fi
en
Mitä sinä teet
What are you doing
What are you doing
Вихідні дані показують, що вихідною мовою є фінська (fi), а мовою призначення – англійська (en). Перекладну пропозицію можна надрукувати за допомогою атрибуту text
У наведеному вище прикладі ми не вказали вихідну мову. Таким чином, Google Translate API намагається сам визначити вихідну мову. Так само ми не вказали будь-яку цільову мову, і, таким чином, API переклав вихідну мову на англійську за замовчуванням. Але що, якщо ви хочете вказати як вихідну, так і цільову мови?
Вказівка вихідної та цільової мов
Насправді дуже легко вказати як цільову, так і вихідну мови в Google Translate API. Ось код, який ви використовуватимете для передачі лише вихідної мови:
result = translator.translate('Mikä on nimesi', src='fi')
result = translator.translate('Mikä on nimesi', dest='fr')
result = translator.translate('Mikä on nimesi', src='fi', dest='fr')
from googletrans import Translator
translator = Translator()
result = translator.translate('Mikä on nimesi', src='fi', dest='fr')
print(result.src)
print(result.dest)
print(result.text)
fifrQuel est votre nom
Переклад списку фраз
Також можна перевести список текстових фраз за допомогою Google Translate API. Основний процес такий самий, як описано вище. Вам просто потрібно передати список, що містить фрази, як параметр методу translate()Це корисно, якщо пакет фраз перекладається окремо, але все в одному виклику API.
Створимо перелік рядків, що містять фрази з французької мови.
sentences = ['Bienvenu', 'Comment allez-vous', 'je vais bien']
Тепер настав час викликати метод translate()і передати список, вихідну мову і цільову мову як параметри.
result = translator.translate(sentences, src='fr', dest='sw')
У наведеному вище сценарії вихідною мовою є французька, а мовою призначення – суахілі.
Метод translate()повертає список об'єктів, якщо ви передаєте список фраз. Кожен об'єкт у списку, що повертається методом, translate() відповідає кожній фразі у вхідному списку, яку потрібно перекласти. Найкращий спосіб знайти переклад кожної вхідної фрази у списку – перебрати список вихідних об'єктів. Потім можна використовувати text, origin , srcта інші атрибути окремих об'єктів, щоб побачити переклад окремих фраз у списку введення.
for trans in result:
print(f'{trans.origin} -> {trans.text}')
Bienvenu -> karibuComment allez-vous -> Vipi weweje vais bien -> Niko sawa
Переклад текстових документів
f = open('C:\\Users\\Khurram\\Desktop\\test.txt', 'r')
Ви також можете перевірити, чи файл у режимі «читання», використовуючи властивість mode
if f.mode == 'r':
Потім можна використовувати метод f.read()для читання вмісту файлу. Вміст файлу можна зберегти в будь-якій змінній. У нашому випадку ім'я змінної будеcontents.
Ми також роздрукуємо contents, щоб перевірити, чи Python правильно читає текстовий файл:
contents = f.read()
print(contents)
We are going to translate this text file using Python.
Subsequently, we will also translate it into French.
Переконайтеся, що в текстовому файлі є вказаний вище вміст, якщо ви хочете наслідувати наш приклад.
Ми переконалися, що Python звертається до текстового файлу та читає його. Тепер ми переведемо результат, імпортувавши той самий старий Translate раніше.
from googletrans import Translator
file_translate = Translator()
Наступним кроком є передача contentsтексту, що містить, у функцію translate(). Нарешті, роздрукуйте textатрибут об'єкта, повернутий методом translate() і ви отримаєте переведений рядок.
result = translator.translate(contents, dest='fr')
print(result.text)
Результат повинен виглядати так:
Nous allons traduire ce fichier texte en Python.
Par la suite, nous le traduirons également en français.
Щоб записати перекладений текст у той самий файл або інший текстовий файл, ви просто відкриєте файл в режимі запису («w»). Потім потрібно викликати метод write() і передати йому перекладений текст, як показано нижче:
with open('C:\\Users\\Khurram\\Desktop\\test_2.txt', 'w') as f:
f.write(result.text)
У наведеному вище прикладі ми використовували диспетчер контексту with , щоб автоматично відкривати та закривати потік запису. По-друге, ми відкрили файл у режимі запису. Нарешті ми використовували метод write()для запису перекладеного рядка в новий файл.
Висновок
Google Translate - це інструмент з API, який допомагає вам виконувати безліч різних функцій, пов'язаних із перекладом. Наведені вище приклади торкнулися лише поверхні. Вам пропонується попрактикуватися в API, а також вивчити та зрозуміти, як його використовувати у реальних додатках.
Коментарі
Дописати коментар