설치

1
2
3
$ pip install googletrans==3.1.0a0


그냥 googletrans 로 install 하면 최신 버전이 설치됩니다.
최신 버전에서는 사용이 제한적일 수 있고, 아래 사용법대로 사용이 불가할 수 있습니다.
최신 버전을 설치했다면 pip remove googletrans 명령어로 삭제 후 3.1.0a0 버전으로 재설치해주세요.


사용법

Translator 객체를 만들어준 뒤, 이 Translator 객체의 translate 메서드를 통해 번역을 진행합니다.
translate 메서드는 “번역할 텍스트”와 “어떤 언어로 번역할지”를 핵심 파라미터로 넣어주면 됩니다.
그 외에도 “어떤 언어를” 번역할지도 정할 수 있습니다.
자세한 건 아래 예시를 통해 알아보겠습니다.

1
2
3
4
5
6
7
8
9
10
11
12
import googletrans

text = "번역할 텍스트입니다."

translator = googletrans.Translator()
result = translator.translate(text, dest="en")

print(result)
>>> Translated(src=ko, dest=en, text=The text to translate., pronunciation=None, extra_data="{'translat...")

print(result.text)
>>> The text to translate.

번역의 결과는 src(어떤 언어를 번역했는지) dest(어떤 언어로 번역했는지) text(번역한 결과) 등이 포함된 객체 형태로 반환됩니다.

googletrans 라이브러리를 사용할 때 dest(어떤 언어로 번역할지) 뿐 아니라, src(어떤 언어를 번역할지) 또한 지정할 수 있습니다.

1
2
3
4
5
6
7
8
9
10
11
12
text = "번역할 텍스트입니다."

# src = ko 일 때
result = translator.translate(text, src="ko", dest="en")
print(result.text)
>>> The text to translate.

# src = en 일 때
result = translator.translate(text, src="en", dest="en")
print(result.text)
>>> 번역할 텍스트입니다.

위 예시의 두 번째 결과물은 “번역할 텍스트입니다.”라고 원본과 똑같이 나오는 것을 볼 수 있죠. 출발언어(어떤 언어를 번역할지)를 “영어”로 지정했으나, text 에는 영어가 없기 때문에 번역이 안된 것이죠.

아래와 같이 두 개 이상의 언어가 섞인 경우를 예시로 들어보면 이해하기 더 쉬울 것입니다.

1
2
3
4
5
6
7
8
9
10
11
12
text = "번역할 text입니다. Hello World!"

# src = ko 일 때
result = translator.translate(text, src="ko", dest="en")
print(result.text)
>>> This is the text to translate. Hello World!

# src = en 일 때
result = translator.translate(text, src="en", dest="en")
print(result.text)
>>> 번역할 텍스트입니다. 안녕하세요 월드!

src와 dest에는 “ko” 혹은 “en”과 같이 언어를 지정해줍니다. 만약 베트남어나 프랑스어같은 언어를 번역하고싶다면 어떤 약어를 줘야 할까요?

googletrans.LANGUAGES 인스턴스에서 확인 가능합니다.

1
2
3
4
5
6
7
8
9
print(googletrans.LANGUAGES)
>>> {'af': 'afrikaans',
>>> 'sq': 'albanian',
>>> 'am': 'amharic',
>>> 'ar': 'arabic',
>>> ...
>>> 'yi': 'yiddish',
>>> 'yo': 'yoruba',
>>> 'zu': 'zulu'}