ACHO.pk devlog

[멋쟁이사자처럼10기] Python를 이용해서 언어를 감지하고, 번역하기 본문

멋쟁이사자처럼

[멋쟁이사자처럼10기] Python를 이용해서 언어를 감지하고, 번역하기

Acho 2022. 5. 7. 17:54

gtts 라이브러리로 텍스트를 음성으로 바꿔주는 프로그램을 만든 적이 있는데, googletrans 라이브러리는 번역을 해준다.

파파고나 네이버 번역기와 같은 번역 시스템은 이 둘을 합쳐서 사용하나 보다.. ㅎㅎ


Googletrans 라이브러리에 대해 알아보기

 

언어 감지 및 번역 기능을 가진 Module 즉, Library( 모듈을 큰 기능 단위로 묶어둔 것 )

from googletrans import Translator

 

 

언어 감지하기

 

1. 번역기를 만든다.

translator = Translator()	#googletrans 라이브러리 안에 구현되어 있는 번역기 기능을 사용한다.

 

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

sentence1 = "Hello, I'm ACHO."	#언어를 감지할 문장을 적어주기
sentence2= input("언어를 감지할 문장을 입력해주세요: ") #입력받아 사용

 

3. 언어를 감지한다.

detected = translator.detect(sentence1)		#언어 감지를 원하는 문장을 괄호 안에 적어줘야한다.

print(detected)		#Detected(lang=en, confidence=1)
print(detected.lang)	#en

 

vs code를 사용해서 실행해봤는데 에러가 엄청 떴다. 버전이 달라서 그런거라는데, 나는 3.8.3으로 같았다.. 뭐지!!

vs 말고 주피터나 구글 코랩 사용하면 잘 된다.

 

아래 명령어를 사용한 후에 다시 코드를 실행해보니 에러없이 원하는 결과가 출력되었다.

pip install googletrans==3.1.0a0

 

 

https://kin.naver.com/qna/detail.naver?d1id=1&dirId=104&docId=377993602&qb=7YyM7J207I2sIGdvb2dsZXRyYW5z&enc=utf8&section=kin.ext&rank=2&search_sort=0&spq=0 

 

파이썬 googletrans 사용 시 에러

파이썬으로 코딩을 배우고 있습니다. googletrans로 번역을 해보려고 코드를 짜고 있는데googletrans 공식홈페이지도 보고 다른 분들한것도 다 따라 해봤는데자꾸 아래와 ...

kin.naver.com

(위의 링크를 참고했다.)

 

 


 

번역하기

 

1. 번역기를 만든다.

translator = Translator()

 

2. 번역을 원하는 문장을 설정한다. + 언어 감지

setence = "안녕하세요."

detected = translator.detect(setence)

 

3. 번역을 원하는 언어를 설정한다.

  translate(text, dest, src)

      text는 번역을 원하는 문장, dest 번역을 원하는 언어, src는 생략 가능.

result = translator.translate(setence, 'en')

 

4. 번역한다.

print(result)
#출력
#Translated(src=ko, dest=en, text=Hello., pronunciation=None, extra_data="{'translat...")

print(result.text)
#출력
#Hello

print(detected.lang, " : ", setence)		#ko : 안녕하세요
print(result.dest, " : ", result.text)		#en : Hello

 

언어

 

#추가 - 번역 원하는 언어를 입력받아와 설정
dest_lang = input("어떤 언어로 번역을 원하시나요: ")
result = translator.translate(sentence, dest_lang)

 

 

 

<최종 코드>

https://github.com/Acho-mj/Likelion10-study/tree/main/translate

 

GitHub - Acho-mj/Likelion10-study: 멋쟁이 사자처럼 10기 백엔드입니다. 코드라이언과 학교 멋사 스터디

멋쟁이 사자처럼 10기 백엔드입니다. 코드라이언과 학교 멋사 스터디에서 학습한 내용을 올립니다. - GitHub - Acho-mj/Likelion10-study: 멋쟁이 사자처럼 10기 백엔드입니다. 코드라이언과 학교 멋사 스

github.com

 

Comments