از طریق منوی جستجو مطلب مورد نظر خود در وبلاگ را به سرعت پیدا کنید
ترجمه متن با Google Translate API در پایتون
سرفصلهای مطلب
احتمالاً استفاده کرده اید مگر اینکه زیر یک سنگ پنهان شده باشید مترجم گوگل روی موقعیت های زیادی در زندگی شما هر زمان که سعی میکنید کلمه یا جملهای را از زبان خاصی به زبان دیگر ترجمه کنید، Google Translate API است که نتایج دلخواه را در پسزمینه برای شما به ارمغان میآورد. اگرچه میتوانید با مراجعه به وب Google Translate هر چیزی را ترجمه کنید page، همچنین می توانید ادغام کنید Google Translate API به برنامه های وب یا برنامه های دسکتاپ شما. بهترین چیز در مورد API این است که راه اندازی و استفاده از آن بسیار آسان است.
در واقع میتوانید کارهای زیادی را با کمک Google Translate API انجام دهید، از شناسایی زبانها گرفته تا ترجمه متن ساده، تنظیم زبانهای مبدأ و مقصد، و ترجمه فهرستهای کامل عبارات متنی. در این مقاله روش کار با Google Translate API در زبان برنامه نویسی پایتون را خواهید دید.
نصب Google Translate API
قبل از اینکه بتوانید با Google Translate API در پایتون کار کنید، باید آن را نصب کنید. دو روش مختلف برای نصب API وجود دارد. روش اول مستقیم است. به سادگی به terminal و استفاده کنید pip
نصب کننده برای نصب API، همانطور که برای هر کتابخانه پایتون دیگری انجام می دهید. برای این کار دستور زیر را در خود تایپ کنید terminal:
$ pip install googletrans
مطبوعات وارد و ماژول Python برای Google Translate API نصب خواهد شد روی سیستم شما
اگر توزیع Anaconda پایتون را نصب کرده اید، می توانید API را با استفاده از Anaconda Prompt نصب کنید. در این روش خاص، شما جایگزین خواهید کرد pip
در دستور بالا با conda
، همانطور که در قطعه کد زیر نشان داده شده است:
$ conda install googletrans
اکنون که API را نصب کردید، با کمک چند مثال، آن را در عمل خواهیم دید.
لیست زبان های پشتیبانی شده
Google Translate API از زبان های مختلفی پشتیبانی می کند. برای فهرست کردن تمام زبان های پشتیبانی شده، اسکریپت زیر را اجرا کنید:
import googletrans
print(googletrans.LANGUAGES)
در مثال بالا از کلمه کلیدی استفاده می کنید import
به 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، البته، ترجمه کلمات یا جملات از یک زبان به زبان دیگر است. برای انجام این کار، ما باید import را Translator
کلاس از googletrans
مدول.
from googletrans import Translator
بعد، شما باید یک شی از the ایجاد کنید 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 تمام ویژگی های بالا را ببینید و ببینید چه خروجی دریافت می کنیم:
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 زبان مبدأ را به زبان پیشفرض که انگلیسی است، ترجمه کرد. اما، اگر بخواهید هر دو زبان مبدأ و مقصد را مشخص کنید، چه؟
مشخص کردن Source و زبان مقصد
در واقع، تعیین هر دو زبان مقصد و مبدا در Google Translate API بسیار آسان است. این کدی است که از آن برای ارسال فقط زبان مبدأ استفاده می کنید:
result = translator.translate('Mikä روی nimesi', src='fi')
فقط برای افزودن زبان مقصد، باید اضافه کنید dest
ویژگی و به دنبال آن کد زبان:
result = translator.translate('Mikä روی nimesi', dest='fr')
همچنین میتوانید زبانهای مبدأ و مقصد را همزمان منتقل کنید:
result = translator.translate('Mikä روی nimesi', src='fi', dest='fr')
حالا بیایید یک جمله فنلاندی را به فرانسوی ترجمه کنیم و سپس print زبان مبدأ و مقصد و همچنین متن ترجمه شده. این بار زبان مبدا و مقصد را مشخص می کنیم.
from googletrans import Translator
translator = Translator()
result = translator.translate('Mikä روی nimesi', src='fi', dest='fr')
print(result.src)
print(result.dest)
print(result.text)
قطعه کد بالا نتیجه زیر را ایجاد می کند.
fi
fr
Quel est votre nom
ترجمه فهرست عبارات
همچنین امکان ترجمه a فهرست عبارات متنی با کمک Google Translate API. اساسی process همان است که در بالا بحث شد. شما فقط باید لیست حاوی عبارات را به عنوان پارامتر به آن ارسال کنید translate()
روش. این برای داشتن دسته ای از عبارات ترجمه جداگانه، اما همه در یک فراخوانی API مفید است.
بیایید فهرستی از رشتههای حاوی عبارات زبان فرانسوی ایجاد کنیم.
sentences = ('Bienvenu', 'Comment allez-vous', 'je vais bien')
حالا وقت تماس گرفتن است translate()
لیست، زبان مبدأ و زبان مقصد را به عنوان پارامتر ارسال کنید.
result = translator.translate(sentences, src='fr', dest='sw')
در اسکریپت فوق زبان مبدأ فرانسوی و زبان مقصد سواحیلی است.
را translate()
متد اگر لیستی از عبارات را به آن ارسال کنید، فهرستی از اشیاء را برمی گرداند. هر شی در لیست توسط translate()
متد مربوط به هر عبارتی در لیست ورودی است که باید ترجمه شود. بهترین راه برای یافتن ترجمه هر عبارت ورودی در لیست، تکرار بر روی فهرست اشیاء خروجی است. سپس می توانید از text
، origin
، src
و سایر ویژگیهای هر شیء برای دیدن ترجمه عبارات فردی در لیست ورودی.
در اسکریپت زیر، ما روی فهرست اشیاء برگردانده شده توسط the تکرار می کنیم translate()
روش و سپس print اصل و متن ترجمه شده:
for trans in result:
print(f'{trans.origin} -> {trans.text}')
نتیجه زیر نمایش داده می شود روی صفحه نمایش
Bienvenu -> karibu
Comment allez-vous -> Vipi wewe
je vais bien -> Niko sawa
ترجمه اسناد متنی
همچنین می توانید اسناد متنی را از طریق Google Translate API ترجمه کنید. تنها کاری که باید انجام دهید این است که فایل متنی را در پایتون با استفاده از آن بخوانید open
روش، متن را بخوانید و به آن ارسال کنید translate()
روش.
اولین قدم این است که فایل را در حالت “خواندن” باز کنید:
f = open('C:\\Users\\Khurram\\Desktop\\test.txt', 'r')
همچنین می توانید بررسی کنید که آیا فایل در حالت “خواندن” است یا خیر mode
ویژگی:
if f.mode == 'r':
در مرحله بعد می توانید از f.read()
روش خواندن محتویات فایل محتویات فایل را می توان در هر متغیری ذخیره کرد. در مورد ما، نام متغیر خواهد بود contents.
ما نیز خواهیم کرد print را contents
متغیر برای بررسی اینکه آیا پایتون به درستی فایل متنی را می خواند یا خیر:
contents = f.read()
print(contents)
این هم خروجی محتویات فایل:
We are going to translate this text file using Python.
Subsequently, we will also translate it into French.
اگر میخواهید با مثال ما همراه باشید، مطمئن شوید که محتوای بالا را در فایل متنی خود دارید.
ما مطمئن شدیم که پایتون در حال دسترسی و خواندن فایل متنی است. حالا با وارد کردن همان قدیمی نتیجه را ترجمه می کنیم Translate
کلاس از قبل
from googletrans import Translator
file_translate = Translator()
مرحله بعدی پاس کردن است contents
متغیر حاوی متن ورودی به translate()
تابع. سرانجام، print را 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 را تمرین کنید، همچنین یاد بگیرید و بدانید که چگونه از آن در برنامه های کاربردی واقعی استفاده کنید.
(برچسبها به ترجمه)# python
منتشر شده در 1403-01-18 11:23:04