본문 바로가기
Programming

구글에서 사전의 음성 및 TTS 음성 MP3 받기..

by 신규하 2011. 5. 2.

음성이 파일이 필요해서, 파이썬 스크립트를 작성해 봤습니다.

아래는 2가지 인데.. 한개는 사전에서 음성을 받아 오는 거고, 2번째는 구글 번역에서 받아 옵니다.
둘다 음성 파일의 파일 목록이 필요 합니다.




구글 사전에서 음성 파일 받아 오기.
#!/usr/bin/python
# -*- coding: utf-8 -*-

import sys
import string
import os
import shutil
import codecs

if len(sys.argv) is 1:
    print >> sys.stderr, '읽을 파일명을 입력해 주세요'
    print ''
    print '* 파일의 내용'
    print '\t[원본 파일명]
    print ''
    print '* 사용예'
    print '\t./getWordSound.py [목록 파일 이름]'
    exit(1)

try:
    f = codecs.open(sys.argv[1], "r", "utf-8") # 파일 오픈
except IOError:
    print >> sys.stderr, '그런 파일이 없거나, 열기 에러입니다.'
    exit(1)

topath = "mp3"
if    os.path.exists(topath) == False:
    os.mkdir(topath, 0755)

for line in f.readlines():
    word =  line.strip('\n\r').strip();
    url = "http://www.gstatic.com/dictionary/static/sounds/de/0/"+word+".mp3"
    print url
    os.system("wget -P "+topath+" "+url)

구글 번역에서 TTS 음성 받아 오기
#!/usr/bin/python
# -*- coding: utf-8 -*-

import sys
import string
import os
import shutil
import codecs

if len(sys.argv) is 1:
    print >> sys.stderr, '읽을 파일명을 입력해 주세요'
    print ''
    print '* 파일의 내용'
    print '\t[음성 파일 스크립트]'
    print ''
    print '* 사용예'
    print '\t'+sys.argv[0]+' [목록 파일 이름]'
    exit(1)

try:
    f = codecs.open(sys.argv[1], "r", "utf-8") # 파일 오픈
except IOError:
    print >> sys.stderr, '그런 파일이 없거나, 열기 에러입니다.'
    exit(1)

topath = "mp3"
if    os.path.exists(topath) == False:
    os.mkdir(topath, 0755)

os.chdir(topath)
for line in f.readlines():
    script = line.strip()
    if script.startswith(u'\ufeff'):
        script = script[1:]
    url = "\"http://translate.google.com/translate_tts?tl=en&q="+script+"\""
    output = "\""+script+".mp3\""
    getCommand = "wget -U firefox "+url+" -O "+output
    print getCommand
    os.system(getCommand)

그런데 이렇게 받은 음성의 라이센스를 아시는 분 있으신가요?
구글에 문의를 해 봤는데.. 함흥차사네요..
내 영어가 너무 구린가? ㅜ.ㅜ

댓글