data/yesterday.txt 번역

  1. yesterday.txt파일 읽기
  2. requests로 http통신
  3. 번역된 결과를 파일로 쓰기
In [11]:
from requests import Request, Session

# yesterday.txt파일 읽기
def get_text_list():
    result_list = []
    with open('data/yesterday.txt','r', encoding='utf-8') as file:
        contents = file.read()
        result_list = contents.split('\n')
    return result_list

# yesterday.txt파일 읽기
def save_to_file(my_list):
    with open('data/yesterday_trans.txt','w', encoding='utf-8') as file:
        file.writelines(my_list)

# requests로 http통신
def main():
    session = Session()
    client_id = "5sfTzHnrTT64IxBAn9CE"
    client_secret = "ECiex2ErDf"
    url = "https://openapi.naver.com/v1/papago/n2mt"

    req_headers = {"X-Naver-Client-Id":client_id, 
                   "X-Naver-Client-Secret":client_secret
    }
    
    lyric_list = get_text_list()
    # list comprehension
    lyric_list = [lyric for lyric in lyric_list if len(lyric)!= 0]
    print(lyric_list, len(lyric_list))
    
    trans_list = []
    for en_text in lyric_list:
        params = {'source':'en', 
                  'target':'ko', 
                  'text':en_text
        }       
        print(en_text)
        
        req = Request('POST', url, data=params, headers=req_headers)
        prepared = req.prepare()
        res = session.send(prepared)
        print(res.status_code)
        try:
            ko_text = res.json()['message']['result']['translatedText']
        except Exception as err:
            print(err)
        else:
            print(ko_text)
        
        trans_list.append(en_text+'\n')
        trans_list.append(ko_text+'\n')
    
    save_to_file(trans_list)
    print('번역종료')

main()
['Yesterday all my troubles seemed so far away.', "Now it looks as though they're here to stay.", 'Oh, I believe in yesterday.', "Suddenly I'm not half the man I used to be.", "There's a shadow hanging over me.", 'Oh, yesterday came suddenly.', "Why she had to go, I don't know, she wouldn't say.", 'I said something wrong, now I long for yesterday.', 'Yesterday love was such an easy game to play.', 'Now I need a place to hide away.', 'Oh, I believe in yesterday.', "Why she had to go, I don't know, she wouldn't say.", 'I said something wrong, now I long for yesterday.', 'Yesterday love was such an easy game to play.', 'Now I need a place to hide away.', 'Oh, I believe in yesterday.'] 16
Yesterday all my troubles seemed so far away.
200
어제 나의 모든 고민들은 너무나 멀리 떨어져 있는 것 같았다.
Now it looks as though they're here to stay.
200
이제 그들은 여기 머물기 위해 온 것처럼 보인다.
Oh, I believe in yesterday.
200
오, 나는 어제를 다시 그리게 돼.
Suddenly I'm not half the man I used to be.
200
갑자기 나는 예전과 같은 사람이 아니다.
There's a shadow hanging over me.
200
내 위에 그림자가 드리워져 있다.
Oh, yesterday came suddenly.
200
아, 어제 갑자기 왔구나.
Why she had to go, I don't know, she wouldn't say.
200
왜 그녀가 가야만 했는지 모르겠다, 그녀는 말하지 않을 것이다.
I said something wrong, now I long for yesterday.
200
내가 말을 잘못해서 어제가 그립다.
Yesterday love was such an easy game to play.
200
어제는 사랑이 정말 쉬운 게임이었다.
Now I need a place to hide away.
200
이제 나는 숨을 곳이 필요해.
Oh, I believe in yesterday.
200
오, 나는 어제를 다시 그리게 돼.
Why she had to go, I don't know, she wouldn't say.
200
왜 그녀가 가야만 했는지 모르겠다, 그녀는 말하지 않을 것이다.
I said something wrong, now I long for yesterday.
200
내가 말을 잘못해서 어제가 그립다.
Yesterday love was such an easy game to play.
200
어제는 사랑이 정말 쉬운 게임이었다.
Now I need a place to hide away.
200
이제 나는 숨을 곳이 필요해.
Oh, I believe in yesterday.
200
오, 나는 어제를 다시 그리게 돼.
번역종료
In [ ]:
 
In [ ]: