Dịch văn bản từ ngôn ngữ này sang ngôn ngữ khác đang ngày càng trở nên phổ biến đối với các trang web khác nhau khi chúng phục vụ cho khán giả quốc tế. Gói Python giúp chúng tôi làm điều này được gọi là dịch.
Gói này có thể được cài đặt theo cách sau. Nó cung cấp dịch thuật cho các ngôn ngữ chính.
pip install translate
Dưới đây là một ví dụ về việc dịch một câu đơn giản từ tiếng Anh sang tiếng Đức. Mặc định từ ngôn ngữ là tiếng Anh.
from translate import Translator translator= Translator[to_lang="German"] translation = translator.translate["Good Morning!"] print translation
Khi chúng tôi chạy chương trình trên, chúng tôi nhận được đầu ra sau -
Guten Morgen!
Giữa hai ngôn ngữ
Nếu chúng ta có nhu cầu xác định ngôn ngữ và ngôn ngữ, thì chúng ta có thể chỉ định nó như trong chương trình dưới đây.
from translate import Translator translator= Translator[from_lang="german",to_lang="spanish"] translation = translator.translate["Guten Morgen"] print translation
Khi chúng tôi chạy chương trình trên, chúng tôi nhận được đầu ra sau -
Buenos días
& nbsp; · 6 phút Đọc · Cập nhật tháng 9 năm 2022 · Giao diện lập trình ứng dụng · Xử lý ngôn ngữ tự nhiên · 6 min read · Updated sep 2022 · Application Programming Interfaces · Natural Language Processing
Tiết lộ: Bài đăng này có thể chứa các liên kết liên kết, có nghĩa là khi bạn nhấp vào liên kết và mua hàng, chúng tôi nhận được hoa hồng.: This post may contain affiliate links, meaning when you click the links and make a purchase, we receive a commission.
Google Dịch là một dịch vụ miễn phí dịch các từ, cụm từ và toàn bộ trang web sang hơn 100 ngôn ngữ. Bạn có thể đã biết điều đó, và bạn đã sử dụng nó nhiều lần trong cuộc sống của bạn.100 languages. You probably already know it, and you have used it many times in your life.
Trong hướng dẫn này, bạn sẽ học cách thực hiện dịch ngôn ngữ trong Python bằng thư viện Googletrans. Googletrans là một thư viện Python miễn phí và không giới hạn, thực hiện các cuộc gọi AJAX không chính thức sang Google Dịch API để phát hiện ngôn ngữ và dịch văn bản.Googletrans is a free and unlimited Python library that makes unofficial Ajax calls to Google Translate API to detect languages and translate text.
Thư viện này không chỉ dành cho dịch thuật, chúng tôi có một hướng dẫn về cách phát hiện các ngôn ngữ bằng thư viện chính xác này trong số những người khác.
Dưới đây là các tính năng chính của thư viện này:
- Phát hiện ngôn ngữ tự động [nó cũng cung cấp phát hiện ngôn ngữ]
- Bản dịch số lượng lớn
- Nhanh chóng và đáng tin cậy
- Hỗ trợ HTTP/2
- Kết nối gộp
Lưu ý rằng Googletrans thực hiện các cuộc gọi API đến API Google Dịch. Nếu bạn muốn sử dụng đáng tin cậy, thì hãy xem xét sử dụng API chính thức hoặc tạo mô hình học máy dịch máy của riêng bạn.Googletrans makes API calls to the Google translate API. If you want a reliable use, then consider using an official API or making your own machine translation machine learning model.
Đầu tiên, hãy cài đặt nó bằng PIP:pip:
pip3 install googletrans
Dịch văn bản
Nhập thư viện cần thiết:
from googletrans import Translator, constants
from pprint import pprint
Googletrans cung cấp cho chúng tôi một giao diện thuận tiện. Hãy khởi tạo phiên bản dịch của chúng tôi:
# init the Google API translator
translator = Translator[]
Lưu ý rằng lớp dịch có một số đối số tùy chọn:
Guten Morgen!
6: Đây phải là danh sách các chuỗi là URL của Google Dịch API, một ví dụ làGuten Morgen!
7..Guten Morgen!
8: Một chuỗi sẽ được bao gồm trong tiêu đề tác nhân người dùng trong yêu cầu.Guten Morgen!
9 [Từ điển]: Từ điển Python ánh xạ giao thức hoặc giao thức và máy chủ lưu trữ vào URL của proxy, một ví dụ làfrom translate import Translator translator= Translator[from_lang="german",to_lang="spanish"] translation = translator.translate["Guten Morgen"] print translation
0, nhiều hơn về các proxy trong hướng dẫn này.from translate import Translator translator= Translator[from_lang="german",to_lang="spanish"] translation = translator.translate["Guten Morgen"] print translation
1: Thời gian chờ của mỗi yêu cầu bạn thực hiện, được thể hiện bằng giây.
Bây giờ chúng tôi chỉ cần sử dụng phương thức from translate import Translator
translator= Translator[from_lang="german",to_lang="spanish"]
translation = translator.translate["Guten Morgen"]
print translation
2 để lấy văn bản dịch:
# translate a spanish text to english text [by default]
translation = translator.translate["Hola Mundo"]
print[f"{translation.origin} [{translation.src}] --> {translation.text} [{translation.dest}]"]
Điều này sẽ in văn bản và ngôn ngữ gốc cùng với văn bản và ngôn ngữ được dịch:
Hola Mundo [es] --> Hello World [en]
Nếu mã trên dẫn đến một lỗi như thế này:
from translate import Translator translator= Translator[to_lang="German"] translation = translator.translate["Good Morning!"] print translation0
Sau đó, bạn phải gỡ cài đặt phiên bản Googletrans hiện tại và cài đặt phiên bản mới bằng các lệnh sau:googletrans version and install the new one using the following commands:
from translate import Translator translator= Translator[to_lang="German"] translation = translator.translate["Good Morning!"] print translation1
Quay trở lại mã, nó tự động phát hiện ngôn ngữ và dịch sang tiếng Anh theo mặc định, hãy dịch sang ngôn ngữ khác, ví dụ tiếng Ả Rập: Ví dụ:
from translate import Translator translator= Translator[to_lang="German"] translation = translator.translate["Good Morning!"] print translation2
from translate import Translator
translator= Translator[from_lang="german",to_lang="spanish"]
translation = translator.translate["Guten Morgen"]
print translation
3 là mã ngôn ngữ cho tiếng Ả Rập. Đây là đầu ra:
from translate import Translator translator= Translator[to_lang="German"] translation = translator.translate["Good Morning!"] print translation3
Bây giờ chúng ta hãy đặt ngôn ngữ nguồn và dịch nó sang tiếng Anh:
from translate import Translator translator= Translator[to_lang="German"] translation = translator.translate["Good Morning!"] print translation4
Output:
from translate import Translator translator= Translator[to_lang="German"] translation = translator.translate["Good Morning!"] print translation5
Bạn cũng có thể kiểm tra các bản dịch khác và một số dữ liệu bổ sung khác:
from translate import Translator translator= Translator[to_lang="German"] translation = translator.translate["Good Morning!"] print translation6
Xem đầu ra:
from translate import Translator translator= Translator[to_lang="German"] translation = translator.translate["Good Morning!"] print translation7
Rất nhiều dữ liệu được hưởng lợi, bạn có tất cả các bản dịch, sự tự tin, định nghĩa và thậm chí các ví dụ có thể có.
Dịch danh sách các cụm từ
Bạn cũng có thể chuyển một danh sách văn bản để dịch từng câu riêng lẻ:
from translate import Translator translator= Translator[to_lang="German"] translation = translator.translate["Good Morning!"] print translation8
Output:
from translate import Translator translator= Translator[to_lang="German"] translation = translator.translate["Good Morning!"] print translation9
Phát hiện ngôn ngữ
Google Dịch API cũng cung cấp cho chúng tôi các cuộc gọi phát hiện ngôn ngữ:
Guten Morgen!0
Điều này sẽ in mã của ngôn ngữ được phát hiện cùng với tỷ lệ tin cậy [1.0 có nghĩa là 100% tự tin]:1.0 means 100% confident]:
Guten Morgen!1
Điều này sẽ trả về mã ngôn ngữ, để có được tên ngôn ngữ đầy đủ, bạn có thể sử dụng từ điển from translate import Translator
translator= Translator[from_lang="german",to_lang="spanish"]
translation = translator.translate["Guten Morgen"]
print translation
4 được cung cấp bởi googletrans:Googletrans:
Guten Morgen!2
Output:
Guten Morgen!3
Ngôn ngữ được hỗ trợ
Như bạn có thể biết, Google Dịch hỗ trợ hơn 100 ngôn ngữ. Hãy in tất cả chúng:
Guten Morgen!4
Đây là một đầu ra bị cắt cụt:
Guten Morgen!5
Sự kết luận
Ở đó bạn có nó. Thư viện này là tuyệt vời cho tất cả những ai muốn một cách nhanh chóng để dịch văn bản trong một ứng dụng. Tuy nhiên, thư viện này là không chính thức, như đã đề cập trước đó; Tác giả lưu ý rằng độ dài ký tự tối đa trên một văn bản là 15k.
Nó cũng không đảm bảo rằng thư viện sẽ hoạt động bình thường mọi lúc; Nếu bạn muốn sử dụng API ổn định, bạn nên sử dụng API chính thức của Google Dịch.
Nếu bạn nhận được lỗi HTTP from translate import Translator
translator= Translator[from_lang="german",to_lang="spanish"]
translation = translator.translate["Guten Morgen"]
print translation
5 với thư viện này, thì Google đã cấm địa chỉ IP của bạn, đó là vì sử dụng thư viện này rất nhiều, Google Dịch có thể chặn địa chỉ IP của bạn; Bạn sẽ cần xem xét sử dụng proxy bằng cách chuyển từ điển proxy cho tham số Guten Morgen!
9 trong lớp from translate import Translator
translator= Translator[from_lang="german",to_lang="spanish"]
translation = translator.translate["Guten Morgen"]
print translation
7 hoặc sử dụng API chính thức như đã thảo luận.
Ngoài ra, tôi đã viết một tập lệnh Python nhanh cho phép bạn dịch văn bản thành các câu và tài liệu trên dòng lệnh. Kiểm tra nó ở đây.
Cuối cùng, tôi khuyến khích bạn khám phá thêm thư viện; Kiểm tra tài liệu chính thức của nó.
Cuối cùng, nếu bạn là người mới bắt đầu và muốn học Python, tôi khuyên bạn nên tham gia khóa học & nbsp; Python cho mọi người Coursera, trong đó bạn sẽ tìm hiểu nhiều về Python. Bạn cũng có thể kiểm tra trang tài nguyên và khóa học của chúng tôi & nbsp; để xem tài nguyên Python tôi đề xuất!
Tìm hiểu thêm: & nbsp; Cách chuyển đổi văn bản thành bài phát biểu trong Python.How to Convert Text to Speech in Python.
Happy Coding ♥
Xem đầy đủ mã