[파파고 API: 파이썬] 파파고 API를 사용하여 문장 번역하기

Date:     Updated:

카테고리:

태그:

🔔 네이버에서 제공하는 파파고 API를 사용하여 간단하게 문장을 번역할 수 있습니다.

1️⃣ Application 등록하기

https://developers.naver.com/apps/#/list

위 주소로 이동하여 ‘Application 등록’을 클릭해 주세요.

image

  • 원하는 애플리케이션 이름 입력
  • 사용 API (Papago 번역, Papago 언어감지)
  • 원하는 서비스 환경이 있다면 개별적으로 입력, 없다면 위와 같이 입력


image

  • 위 코드 모두 API 호출에 사용됩니다.


2️⃣ API 호출

한국어를 영어로 번역

import urllib.request
import json

client_id = "Client ID" # 개발자센터에서 발급받은 Client ID 값 입력
client_secret = "Client Secret" # 개발자센터에서 발급받은 Client Secret 값 입력

encText = urllib.parse.quote("반갑습니다") # 번역할 문장 입력

# source(번역할 언어), target(번역 결과 언어)
# ko(한국어), en(영어)
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 = json.loads(response.read().decode('utf-8'))
    print(response_body['message']['result']['translatedText']) # 번역 출력
else:
    print("Error Code:" + rescode)
# 결과
Nice to meet you.


언어 코드

언어코드


언어를 감지하여 영어로 번역

import urllib.request
import json

client_id = "Client ID" # 개발자센터에서 발급받은 Client ID 값 입력
client_secret = "Client Secret" # 개발자센터에서 발급받은 Client Secret 값 입력

# 언어 감지 및 번역할 문자
encText = urllib.parse.quote("반갑습니다")

data = "query=" + encText
url = "https://openapi.naver.com/v1/papago/detectLangs"
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()
    langCode = json.loads(response_body.decode('utf-8'))['langCode']
else:
    print("Error Code:" + rescode)


# 감지된 언어를 영어로 변환
data = "source=" + langCode + "&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 = json.loads(response.read().decode('utf-8'))
    print(response_body['message']['result']['translatedText']) # 번역 출력
else:
    print("Error Code:" + rescode)
# 결과
Nice to meet you.


💾 공부한 내용을 기록하기 위한 블로그입니다.
📄 오류와 질문은 댓글로 남겨주시면 감사하겠습니다!

맨 위로 이동하기

Project 카테고리 내 다른 글 보러가기

댓글 남기기