5분 만에 Python으로 번역기를 구축하세요.

파이썬으로 언어 번역기를 만드는 것은 재미있습니다.



파이썬으로 5분 만에 효과적인 다국어 번역기를 구축할 수 있는데 왜 번역가에게 돈을 지불하거나 값비싼 번역 앱을 구입합니까?

더 나아가 이 번역기에 TTS(텍스트 음성 변환) 기능을 추가하여 이 번역기를 더욱 재미있게 만들 것입니다. 이것은 또한 이 번역기를 사용하여 새로운 언어를 배우는 것을 쉽게 만들 것입니다. 흥미롭지 않나요?

말은 싸다..알아? 그럼 오늘의 업무로 넘어가겠습니다. 파이썬으로 이 놀라운 번역기를 구축하려면 몇 가지 파이썬 모듈이 필요합니다.
  • googletrans

  • gtts (Google 텍스트 음성 변환)
  • playsound
  • pprint

  • 앞서 언급한 내용에 익숙해지려면 해당 항목을 클릭하고 모듈 설명서를 보기만 하면 됩니다.

    코딩을 시작하세요..



    먼저 해당 모듈을 가져오는 것으로 시작합니다.

    from googletrans import Translator, constants
    from pprint import pprint
    from playsound import playsound
    from gtts import gTTS
    


    이러한 모듈이 필요한 이유는 무엇입니까?


  • 따라서 Google 번역을 사용하여 선택한 언어로 번역합니다.
  • 프리티 프린터(pprint)는 언어 코드를 깔끔한 형식으로 출력합니다.
  • 한편 gtts를 사용하여 번역된 언어 텍스트를 음성/오디오 형식(mp3)으로 변환합니다. 그런 다음 playsound를 사용하여 번역된 단어(mp3)를 재생합니다.

  • 이 모든 것을 하나의 함수로 통합해 보겠습니다.

    def trnslate():
        tr = Translator()
        pprint(f'The available languages and their codes are: 
     {constants.LANGUAGES}')
        lan = input('Please enter your desired language:\n')
        phrase = input('Say something nice:\n')
        translated = tr.translate(phrase, dest = lan)
        print(translated.text)
    


    코드를 빠르게 설명하겠습니다.



    우리는 trnslate()라는 함수를 만들었습니다. 모듈의 메서드이기 때문에 문제를 피하기 위해 번역이라고 부르지 않았습니다. 그런 다음 Translator 클래스의 인스턴스를 만들고 변수 tr에 할당했습니다. 우리는 상수.LANGUAGES를 사용하여 사용 가능한 모든 언어와 해당 코드를 프로그램 사용자에게 인쇄했습니다.

    우리는 lan과 phrase라는 변수에 번역할 단어와 선호하는 언어를 설정했습니다.

    그런 다음 구문/단어를 번역하여 번역된 변수에 저장하고 pprint를 사용하여 인쇄합니다. 일반적으로 번역된 변수 끝에 .text를 추가하지 않으면 번역된 단어에 대한 추가 정보를 얻을 수 있지만 번역된 텍스트로만 제한하기 위해 .text를 추가합니다.

    TTS(텍스트 음성 변환)로 더 재미있게 만들어 봅시다.




    def trnslate():
        tr = Translator()
        pprint(f'The available languages and their codes are: {constants.LANGUAGES}')
        lan = input('Please enter your desired language:\n')
        phrase = input('Say something nice:\n')
        translated = tr.translate(phrase, dest = lan)
        print(translated.text)
        aud = gTTS(translated.text, lang = lan)
        aud.save('trantest.mp3')
        playsound('trantest.mp3')
    
    trnslate()
    


    그래서 추가된 코드는 번역된 단어를 음성으로 변환하는 것이었습니다. 텍스트를 사용자가 선호하는 동일한 언어로 번역하기 위해 ggts를 사용했습니다.

    그러나 googletrans에서 사용 가능한 모든 언어가 gtts에 있는 것은 아닙니다. 따라서 사용하는 언어가 두 모듈에서 모두 사용 가능한지 확인하십시오. 이를 확인하려면 googletrans에서 print(constants.LANGUAGES)로 언어를 확인한 다음 명령줄로 이동하여 gtts-cli –all을 실행하십시오. 정보를 통해 두 모듈이 공통적으로 사용하는 모든 언어를 파악할 수 있습니다.

    오류를 방지하려면 코드를 실행하기 전에 모든 모듈이 이미 설치되어 있고 가져왔는지 확인하십시오. 그러나 원하는 언어가 gtts에 없기 때문에 텍스트를 음성으로 변환하는 부분 없이만 번역하려는 경우 gtts와 관련된 모든 코드를 주석 처리하거나 제거하면 코드가 여전히 완벽하게 작동합니다.

    TTS(텍스트 음성 변환)에 대한 다른 자습서를 보려면 이 짧은 자습서here를 확인하세요.

    파이썬 코드로 이 빠른 번역기를 구축하는 것을 즐겼기를 바랍니다. 이 코드가 효과적으로 작동하려면 인터넷이 필요하다는 것을 기억하십시오.

    다음 게시물이나 파이썬 튜토리얼이 포함된 고급 번역기가 게시되면 팔로우 버튼을 클릭하면 자동으로 직접적인 정보를 얻을 수 있습니다.

    좋은 웹페이지 즐겨찾기