네이버 개발자센터( https://developers.naver.com/main/ )에서 제공하는 Open API 중에서, Papao 번역 API 사용을 위한 방법입니다.
먼저 네이버 개발자 센터의 Papago 번역과 관련된 내용의 페이지로 접속하면, 하단에 오픈 API 이용 신청 방법이 있습니다.
( https://developers.naver.com/products/papago/nmt/nmt.md)
Step 1.
API 사용에 대한 이용 약관에 먼저 동의를 합니다.
Step 2
다음은 계정 정보를 등록합니다.
저는 개인적으로 사용하는 것이기 때문에 개인 계정 정보를 확인하여 등록합니다.
Step 3
다음은 API 이용 신청을 할 애플리케이션을 등록합니다.
애플리케이션 명과, 사용 할 API를 선택합니다. Papago 번역 API를 사용 할 것이기 때문에 Papago 번역을 선택합니다.
API를 위해 생성된 애플리케이션의 Client ID와 Client Secret 정보를 다음과 같이 확인 할 수 있습니다.
해당 ID와 Secret를 이용해서, Papago 번역을 사용 할 수 있습니다.
네이버 개발자 센터에서 제공하는 예시 코드를 약간 수정하여 아래와 같이 코드를 작성했습니다.
지정한 문장을 번역 문장과 함께 출력합니다.
Papago 번역 API의 경우 무료로 사용 할 수 있기는 하나, 하루에 API를 호출 할 수 있는 양(10000자)이 제한적이기 때문에 간단한 테스트 정도로 사용 할 수 있습니다.
참고로, 한 번에 번역 가능한 최대는 5,000자입니다.
사용 가능한 API량은 애플리케이션 정보에서 다음과 같이 확인이 가능합니다.
import os
import sys
import urllib.request
import json
client_id = "개발자센터에서 발급받은 Client ID 값"
client_secret = "개발자센터에서 발급받은 Client Secret 값"
src_text = "저는 ZIGISPACE라는 블로그를 운영하는 ZIGI라고 합니다."
encText = urllib.parse.quote(src_text)
data = "source=ko&target=en&text=" + encText
url = "https://openapi.naver.com/v1/papago/n2mt"
request = urllib.request.Request(url)
request.add_header("X-Naver-Client-Id",client_id)
request.add_header("X-Naver-Client-Secret",client_secret)
response = urllib.request.urlopen(request, data=data.encode("utf-8"))
rescode = response.getcode()
if(rescode==200):
response_body = response.read().decode('utf-8')
result =json.loads(response_body)
print(f"원 문({result['message']['result']['srcLangType']}) : {src_text}")
print(f"번역문({result['message']['result']['tarLangType']}) : {result['message']['result']['translatedText']}")
else:
print("Error Code:" + rescode)