Notice
Recent Posts
Recent Comments
Link
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | |||||
3 | 4 | 5 | 6 | 7 | 8 | 9 |
10 | 11 | 12 | 13 | 14 | 15 | 16 |
17 | 18 | 19 | 20 | 21 | 22 | 23 |
24 | 25 | 26 | 27 | 28 | 29 | 30 |
Tags
- Python
- hadoop
- SPC
- R
- Express
- es6
- Android
- table
- xPlatform
- 보조정렬
- MSSQL
- mapreduce
- 공정능력
- mybatis
- JavaScript
- react
- vaadin
- Eclipse
- Spring
- window
- tomcat
- SQL
- IntelliJ
- Kotlin
- NPM
- plugin
- SSL
- Java
- GIT
- Sqoop
Archives
- Today
- Total
DBILITY
python papago translate api example 본문
반응형
이거 보고 광고 한번 안 누른 이는 삼대가 재수가 없을지어다!ㅋㅋ
누르면 오십억게임 최후 승자가 된다!
https://developers.naver.com/docs/papago/papago-nmt-example-code.md#python
naver developer센터에 가입을 해야 한다. 거의 10년 만에 네이버 아이디가 다시 생기다니. 흠.
API 구현 예제를 통째로 붙여 넣고 발급받은 클라이언트 아이디와 키값을 변경 후 json format의 response data를 dictionary로 변환, 번역된 문장만 출력했다.
import os
import sys
import urllib.request
import json
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()
dict_response: dict = json.loads(response_body)
print(dict_response["message"]["result"]["translatedText"])
# print(response_body.decode('utf-8'))
else:
print("Error Code:" + rescode)
실행결과는 그림 1과 아래와 같다.
다음은 파파고 번역을 함수로 만들고 excel파일을 읽어서 번역 후 저장한다.
openpyxl을 설치해야 한다.(Python library to read/write Excel 2010 xlsx/xlsm/xltx/xltm files.)
번역할 내용은 어린 시절(누군가에겐 사춘기) 읽었던 '애너벨 리(Annabell Lee)'. 작가 '애드가 앨런 포(Edgar Allan Poe)'하면 검은 고양이만 기억하는 분들도 있는데, 이 분은 밤하늘이 즉, 우주가 어두운 이유도 산문시인 유레카(Eureka)에 썼다. 서문이던가에 이것은 논문이 아니라고 썼다나 참 특이하고도 대단한 분이다.
import os
import sys
import urllib.request
import json
import pandas as pd
def papago(input_text: str):
client_id = "YOUR_CLIENT_ID" # 개발자센터에서 발급받은 Client ID 값
client_secret = "YOUR_CLIENT_SECRET" # 개발자센터에서 발급받은 Client Secret 값
encText = urllib.parse.quote(input_text)
data = "source=en&target=ko&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()
dict_response: dict = json.loads(response_body)
return dict_response["message"]["result"]["translatedText"]
else:
return "Error Code:" + rescode
df: pd.DataFrame = pd.read_excel("./Annabel_Lee_Edgar_Allan_Poe.xlsx", engine='openpyxl')
for idx, row in df.iterrows():
if (pd.isna(row['English'])):
continue
#print(row['English'])
df.loc[idx, 'Korean'] = papago(row['English'])
df.to_excel("./Annabel_Lee_Edgar_Allan_Poe_Translate2Korean.xlsx", sheet_name="번역결과")
print("Complete!")
번역결과는 시적이진 않다.ㅎㅎ
반응형
'python' 카테고리의 다른 글
python matplot scatter chart , linear regression line exercise (0) | 2021.10.13 |
---|---|
python pandas dataframe (0) | 2021.10.12 |
python matplot pie chart (0) | 2021.08.30 |
python matplot bar chart example (0) | 2021.08.27 |
python matplot line chart example (0) | 2021.08.25 |
Comments