وبلاگ رسانگار
با ما حرفه ای باشید

سرور مجازی NVMe

ترجمه متن با Google Translate API در پایتون

0 242
زمان لازم برای مطالعه: 6 دقیقه


احتمالاً استفاده کرده اید مگر اینکه زیر یک سنگ پنهان شده باشید مترجم گوگل روی موقعیت های زیادی در زندگی شما هر زمان که سعی می‌کنید کلمه یا جمله‌ای را از زبان خاصی به زبان دیگر ترجمه کنید، 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

امتیاز شما به این مطلب
دیدگاه شما در خصوص مطلب چیست ؟

آدرس ایمیل شما منتشر نخواهد شد.

لطفا دیدگاه خود را با احترام به دیدگاه های دیگران و با توجه به محتوای مطلب درج کنید