번역기 중에서 구글 번역기, 네이버 파파고, 카카오 번역기 3종류가 있다. 그 중에서 구글 변역기는 R을 지원하는데, 유료 이다. 한국어에서 영어로 변역하기에는 돈이 매우 아깝다. 그리고, 네이버 파파고는 API는 받았는데, 사용하는 방법을 찾아야 한다.
구글, 네이버, 카카오 번역기 모두 도찐 개찐이다. 즉 우리나라 시장이 매우 컸다면, 구글에서 많은 투자를 하였지만, 시장의 크기가 크지 않아 투자도 적어 졌고, 그 만큼 좋지 않다.
이번에는 R에서 카카오 번역을 어떻게 하면, 쉽게 사용할 수 있는 코드를 보여 줄 것이다.
아래의 단어를 번역할 것이다.
입력 : "대한민국 고요한 아침의 나라"
출력 : "the country of the calm morning of korea"
위의 단어가 Kakao i 변역기에서 변역이 잘된다.
구현 예제
# 라이브러리 불러오기
library(httr)
library(stringr)
# 텍스트 가져오기
text <- "대한민국 고요한 아침의 나라"
text_encode <-URLencode(text)
# 한국어에서 영문으로 변역
url= paste0( "https://dapi.kakao.com/v2/translation/translate?",
"src_lang=kr&target_lang=en&query=",text_encode,"" )
# API 키 호출
# rest_api key
rest_api <- "your api key"
res=POST(str_c(url), add_headers("Authorization"=paste("KakaoAK",rest_api)) )
# 리스트 데이터 셋 가져오기
trans_list <- content(res)
trans_result <- trans_list[["translated_text"]][[1]][[1]]
print(trans_result)
## [1] "the country of the calm morning of korea"
api 는 구글링에서 "kakao api"를 클릭 하여, kakao 개발자에 들어가면 받을 수 있다.
텍스트는 그냥 사용하는 것이 아니고 URL encoding 을 사용해서, url 뒤에 걸어 줘야 한다.
POST를 이용해서, api 데이터를 가져온다. api 데이터는 대부분 json document 형태로 데이터가 나오기 때문에, list 형태로 데이터를 가져와야 한다.
]데이터를 가져왔으면, 서브세팅 "[[1]]" 작업을 하여, 변역 된 데이터를 가져온다.
댓글 없음:
댓글 쓰기