영벨롭 개발 일지

[Python] 파이썬으로 구글 번역 API 사용하기 - googletrans 본문

Programming Language/Python

[Python] 파이썬으로 구글 번역 API 사용하기 - googletrans

영벨롭 2022. 5. 4. 21:18

[ Googletrans 설치하기 ]

 

Googletrans 모듈은 언어 감지 및 번역을 도와주는 라이브러리입니다. 

 

터미널에서 다음 명령어를 입력하여 googletrans를 설치해주세요.

 

$ pip install googletrans==4.0.0-rc1

 

 

 

[ Googletrans 불러오기 ]

 

 설치가 완료되면 파이썬 파일에서 import를 하여 모듈을 불러옵니다. 

 

from googletrans import Translator

 

 

 

 

 

 

[ 언어 감지하기 ]

 

 언어를 감지하기 위해선 detect() 메소드를 이용합니다. 

 

기본형
Translator().detect(언어를 감지할 문장)

 

1. 우선 번역기를 만듭니다. 

2. 언어 감지를 원하는 문장을 설정합니다. 

3. detect() 메소드를 이용하여 언어를 감지합니다. 

 

from googletrans import Translator

# 1. 번역기 생성
translator = Translator()

# 2. 언어 감지를 원하는 문장 설정
sentence = "안녕하세요."

# 3. 언어 감지
detected = translator.detect(sentence)

print(detected)
출력 >>> Detected(lang=ko, confidence=None)

 

 

 

 

[ 번역하기 ]

 

 문장을 번역하기 위해선 translate() 메소드를 이용합니다. 

 

기본형
Translator().translate(번역할 문장, dest(번역할 언어), [src(번역전 언어, optional)])

 

 파라미터로 넘겨줄 값들 중 src는 입력하지 않으셔도 됩니다.

 

 dest는 입력하지 않으면 자동으로 해당 문장이 영어로 번역됩니다. 

 

 1. 번역기를 만듭니다. 

 2. 번역을 원하는 문장을 설정합니다. 

 3. 번역을 합니다. 

 

from googletrans import Translator

# 1. 번역기 생성
translator = Translator()

# 2. 번역을 원하는 문장 설정
sentence = "안녕하세요."

# 3. 번역 하기
translated = translator.translate(sentence)

print(translated)
출력 >>> Translated(src=ko, dest=en, text=hello., pronunciation=None, extra_data="{'confiden...")

 

 

 

[ Googletrans에서 지원하는 언어 ]

 

 googletrans에서 지원하는 언어는 googletrans.LANGUAGES를 통해 확인할 수 있습니다. 

 

from googletrans import Translator
import googletrans

print(googletrans.LANGUAGES)

 

 

 

 

 

[ Googletrans 예제 ]

 

 번역을 원하는 문장과 원하는 언어를 입력받은 뒤, 해당 언어로 번역하는 예제 코드를 작성해보겠습니다. 

 

from googletrans import Translator

# 1. 번역기 생성
translator = Translator()

# 2. 번역을 원하는 문장 입력
sentence = input("번역을 원하는 문장을 입력하세요 : ")

# 3. 언어 감지
detected = translator.detect(sentence)
src_lang = detected.lang

# 4. 원하는 원어 입력
dest_lang = input("원하는 원어를 입력하세요 : ")

translated = translator.translate(sentence, dest_lang, src_lang)

print("==========================================")
print("번역 전 문장과 언어: " + sentence + " , " + src_lang)
print("번역 후 문장과 언어: " + translated.text + " , " + dest_lang)
print("==========================================")

 

반응형