Naver Open API - 뉴스 검색 API , 파파고 번역 API 사용하기
파파고 API를 사용하기 위한 라이브러리 설치
pip install requests
app.py
from flask import Flask
from flask_restful import Api
from flask_jwt_extended import JWTManager
from config import Config
from resources.naver import NaverPapagoResource, NaverSearchResource
app = Flask(__name__)
jwt = JWTManager(app)
api = Api(app)
# 경로를 리소스와 연결한다.
api.add_resource(NaverSearchResource,'/news')
api.add_resource(NaverPapagoResource,'/chinese')
if __name__ == '__main__' :
app.run()
naver.py
필요 라이브러리 import
from flask import request
from flask_restful import Resource
from flask_jwt_extended import create_access_token,jwt_required,get_jwt
from flask_jwt_extended import create_access_token,jwt_required,get_jwt
from mysql.connector import Error
from mysql_connection import get_connection
from datetime import datetime
import boto3
from config import Config
import requests
네이버 뉴스 검색 API 코드 (get)
class NaverSearchResource(Resource) :
def get(self) :
keyword=request.args.get('keyword')
limit = request.args.get('limit')
## 네이버 API를 호출
### Restful Open API를 호출할 때 사용하는 라이브러리 => requests
data = {'query':keyword,'display':limit}
headers = {'X-Naver-Client-Id':Config.NAVER_CLIENT_ID,'X-Naver-Client-Secret':Config.NAVER_CLIENT_SECRET}
response = requests.get('https://openapi.naver.com/v1/search/news.json',data, headers= headers)
response=response.json()
# print(response['items'][0]['title'])
title_list=[]
for row in response['items'] :
title_list.append(row['title'])
return {'result' : 'success' , 'items' : title_list} , 200
네이버 파파고 번역 API (post)
class NaverPapagoResource(Resource) :
def post(self) :
# {"content":"안녕하세요~"}
data = request.get_json()
headers = {'X-Naver-Client-Id':Config.NAVER_CLIENT_ID,'X-Naver-Client-Secret':Config.NAVER_CLIENT_SECRET,
'Content-Type':'application/x-www-form-urlencoded; charset=UTF-8'}
# 네이버 파파고 api 호출
req_data = {'source':'ko','target':'zh-CN','text': data['content']}
response=requests.post('https://openapi.naver.com/v1/papago/n2mt',req_data,headers=headers)
response=response.json()
result_text = response['message']['result']['translatedText']
return {'result':'success','result_text':result_text}
Json 구조 파악 :https://jsoneditoronline.org/
JSON Editor Online: JSON editor, JSON formatter, query JSON
You need to enable JavaScript to run this app. JSON Editor Online JSON Editor Online is a web-based tool to view, edit, format, repair, compare, query, transform, validate, and share your JSON data. About JSON Editor Online JSON Editor Online is a versatil
jsoneditoronline.org
네이버 검색 API : https://developers.naver.com/docs/serviceapi/search/news/news.md#%EB%89%B4%EC%8A%A4
검색 > 뉴스 - Search API
검색 > 뉴스 뉴스 검색 개요 개요 검색 API와 뉴스 검색 개요 검색 API는 네이버 검색 결과를 뉴스, 백과사전, 블로그, 쇼핑, 영화, 웹 문서, 전문정보, 지식iN, 책, 카페글 등 분야별로 볼 수 있는 API
developers.naver.com
네이버 파파고 번역 API : https://developers.naver.com/docs/papago/papago-nmt-overview.md
Papago 번역 - Papago API
Papago 번역 개요 Papago 번역 개요 Papago 번역은 Papago의 인공 신경망 기반 기계 번역 기술(NMT, Neural Machine Translation)로 텍스트를 번역한 결과를 반환하는 RESTful API입니다. Papago 번역으로 번역할 수 있
developers.naver.com