Python으로 자동 번역 프로그램 작성하기 (googletrans)

01. 관련 라이브러리 설치

02. 기본적인 사용 방법

03. 예제

본 포스트에서는 Python의 googletrans 라이브러리를 이용하여, 자동 번역 프로그램을 작성하는 방법에 대해 다룬다.

01. 관련 라이브러리 설치

구글 번역 라이브러리를 사용하기 위해서 googletrans를 설치해야 한다.

pip를 사용한다는 가정하에 다음과 같은 명령어로 설치가 가능하다.

pip install googletrans==4.0.0rc1

포스트 작성 시점에서는 버전을 지정하지 않으면 3.0.0 버전이 설치가 되고, 해당 버전은 에러가 발생하는 경우가 있었다. 따라서 3.1.0a0 또는 최신 버전인 4.0.0rc1을 설치하도록 하자.

만약 다른 버전이 설치되어 있다면, 다음 명령으로 기존 googletrans를 제거한 후 재설치해야 한다.

pip uninstall googletrans

참고로 현재 설치된 버전은 다음 명령어로 조회할 수 있다.

pip show googletrans

02. 기본적인 사용 방법

googletrans 사용을 위해서는 (1) 모듈 임포트, (2) Translator 객체 선언 및 할당, (3) translate 함수 호출을 거쳐야 한다.

(1) 모듈 임포트

import googletrans

(2) Translator 객체 선언 및 할당

translator = googletrans.Translator()

(3) translate 함수 호출

translatedSentence = translator.translate("お早う御座います", dest='ko', src='auto')

translate 함수의 인자는 다음과 같다.

번역할 문장, src=’번역 대상 문장의 언어 코드’, dest=’번역 완료 문장의 언어코드’

src와 dest의 순서는 상관없다. 언어코드는 ISO-639를 따르며 주요 코드는 다음과 같다.

번역 대상 문장의 언어코드를 auto로 지정할 경우 자동으로 번역기에서 입력된 언어를 탐지한다.

언어코드
아프리칸스어af
알바니아어sq
암하라어am
아랍어ar
아르메니아어hy
아삼어as
아이마라어ay
아제르바이잔어az
밤바라어bm
바스크어eu
벨라루스어be
벵골어bn
보지푸리어bho
보스니아어bs
불가리아어bg
카탈루냐어ca
세부아노어ceb
중국어(간체)zh-CN 또는 zh(BCP-47)
중국어(번체)zh-TW(BCP-47)
코르시카어co
크로아티아어hr
체코어cs
덴마크어da
디베히어dv
도그리어doi
네덜란드어nl
영어en
에스페란토eo
에스토니아어et
에웨어ee
필리핀어(타갈로그어)fil
핀란드어fi
프랑스어fr
프리지아어fy
갈리시아어gl
조지아어ka
독일어de
그리스어el
과라니어gn
구자라트어gu
아이티 크리올어ht
하우사어ha
하와이어haw
히브리어he 또는 iw
힌디어hi
몽어hmn
헝가리어hu
아이슬란드어is
이보어ig
일로카노어ilo
인도네시아어id
아일랜드ga
이탈리아어it
일본어ja
자바어jv 또는 jw
칸나다어kn
카자흐어kk
크메르어km
키냐르완다어rw
콘칸어gom
한국어ko
크리오어kri
쿠르드어ku
쿠르드어(소라니어)ckb
키르기스어ky
라오어lo
라틴어la
라트비아어lv
링갈라어ln
리투아니아어lt
루간다어lg
룩셈부르크어lb
마케도니아어mk
마이틸리어mai
말라가시어mg
말레이어ms
말라얄람어ml
몰타어mt
마오리어mi
마라티어mr
메이테이어(마니푸르어)mni-Mtei
미조어lus
몽골어mn
미얀마어(버마어)my
네팔어ne
노르웨이어no
니안자어(치츄어)ny
오리야어or
오로모어om
파슈토어ps
페르시아어fa
폴란드어pl
포르투갈어(포르투갈, 브라질)pt
펀자브어pa
케추아어qu
루마니아어ro
러시아어ru
사모아어sm
산스크리트어sa
스코틀랜드 게일어gd
북소토어nso
세르비아어sr
세소토어st
쇼나어sn
신디어sd
스리랑카어(싱할라어)si
슬로바키아어sk
슬로베니아어sl
소말리어so
스페인어es
순다어su
스와힐리어sw
스웨덴어sv
타갈로그어(필리핀어)tl
타지크어tg
타밀어ta
타타르어tt
텔루구어te
태국어th
티그리냐어ti
총가어ts
튀르키예어tr
투르크멘어tk
트위어(아칸어)ak
우크라이나어uk
우르두어ur
위구르어ug
우즈베크uz
베트남어vi
웨일즈어cy
코사어xh
이디시어yi
요루바어yo
줄루어zu

또한 translate 함수의 반환값은 객체로 다음과 같은 프로퍼티를 갖는다.

  • src: 번역 대상 문장의 언어코드
  • dest: 번역 완료 문장의 언어코드
  • origin: 원문
  • text: 번역 완료 문장
  • pronunciation: 번역 완료 문장의 발음 방법(영어로 표기)
  • extra_data: 번역 과정에서 사용되거나 도출된 중간 결과물들

03. 예제

다음은 일본어 문장 お早う御座います 를 한국어로 번역하는 예제 코드이다.

src=auto 로 설정하여 googletrans에서 검출하도록 설정했다.

import googletrans

transaltor = googletrans.Translator()

originSentence = "お早う御座います"

translatedSentence = transaltor.translate(originSentence, dest='ko', src='auto')

print(translatedSentence)
print(translatedSentence.text)
print(translatedSentence.src)
print(translatedSentence.dest)
print(translatedSentence.pronunciation)
print(translatedSentence.extra_data)

파일을 실행한 결과는 다음과 같다.

답글 남기기

이메일 주소는 공개되지 않습니다. 필수 필드는 *로 표시됩니다