네이버 개발자에서 어플리케이션 등록
- Papago 번역 API 추가
- 비로그인 오픈 API 서비스 환경: WEB설정 -> http://localhost.com
기본 예제
https://developers.naver.com/docs/papago/papago-nmt-example-code.md#python
import os
import sys
import urllib.request
client_id = "YOUR_CLIENT_ID" # 개발자센터에서 발급받은 Client ID 값
client_secret = "YOUR_CLIENT_SECRET" # 개발자센터에서 발급받은 Client Secret 값
encText = urllib.parse.quote("반갑습니다")
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()
print(response_body.decode('utf-8'))
else:
print("Error Code:" + rescode)
메모장 내용 번역
메모장(.txt)의 한글 -> 영어로 번역해보자
import os
import sys
import urllib.request
import json # json
client_id = "" # 개발자센터에서 발급받은 Client ID 값
client_secret = "" # 개발자센터에서 발급받은 Client Secret 값
# 텍스트 파일 불러오기
with open('source.txt', 'r', encoding='utf8') as f:
srcText = f.read()
encText = urllib.parse.quote(srcText)
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()
#print(response_body.decode('utf-8'))
# json 형 변환
res = json.loads(response_body.decode('utf-8'))
from pprint import pprint
pprint(res)
# translate.txt 파일에 쓰기
with open('translate.txt', 'w', encoding='utf8') as f:
f.write(res['message']['result']['translatedText'])
else:
print("Error Code:" + rescode)
참고
'Python > 실습' 카테고리의 다른 글
[웹크롤링] 교보문고 베스트셀러 Top20 크롤링하기 (0) | 2020.05.07 |
---|---|
[Django 유튜브 동영상 업로드 서비스] 나의 첫번째 DjangoTube 프로젝트(계속 업데이트 중...2020/04/28) (0) | 2020.04.14 |
[웹크롤링: bs4, requests] 네이버 날씨 미세먼지 가져오기 / 네이버 웹툰 제목 가져오기 / 네이버 웹툰 썸네일 가져오기 (0) | 2020.03.28 |
[django 연습] 나의 첫 번째 Django 프로젝트 / Django Girls(장고 걸스) Tutorial (0) | 2020.03.21 |
[django 연습] Diary / 일기장 / CRUD 구현 (0) | 2020.03.04 |