본문 바로가기
IT 개발/JAVA

[JAVA] 파파고 번역기 API 사용

by Love of fate 2023. 4. 5.
728x90
반응형

[파파고 번역기 API 사용하기]


파파고 번역기 API는 OPEN API로 
네이버 로그인 후
'API 신청' 후 
Client ID Client Secret 받고
사용!!

 

[애플리케이션 등록 API 이용신청]
Appiction 카테고리 hover -> 애플리케이션 등록 선택 시 아래와 같은 화면이 나온다.
애플리케이션 이름과, 사용 API (Papago 번역) 선택
사용 API를 선택하면 '비로그인 오픈 API 서비스 환경' 란이 생긴다.
IOS, Android, WEB 중에 선택하고 등록하기 버튼 클릭한다.
 
등록하고 나면 '내 애플리케이션' 메뉴에 내가 등록한 애플리케이션 이름이 하위 메뉴로 노출되며
해당 화면에 진입하게 되면 '애플리케이션 목록'이라고 하여 
Client IDClient Secret 코드를 받게 된다. 
 
* 애플리케이션 등록도 중요하지만 JAVA에서 코드 작성 시 Client ID와 Client Secret 코드가 없으면
  사용하지 못한다.

[JAVA 파파고 번역 API 활용코드]

 

    @PostMapping("/papagoTransTest")
    public String papagoTransTest(){
    	String result = "";
    	try {
        	//cliendId, ClientSecret은 파파고홈페이지에서 로그인 후 api신청하면 받으실 수 있습니다. 
			text = URLEncoder.encode(keyword, "UTF-8");
			String param = "source=ko&target=en&text=" + "오늘"; //오늘은 검색 단어
			URL url = new URL(url); //파파고 API 주소
			HttpsURLConnection con = (HttpsURLConnection) url.openConnection();
			con.setRequestProperty("X-Naver-Client-Id", ClientId); 
			con.setRequestProperty("X-Naver-Client-Secret", ClientSecret); 
			con.setRequestMethod("POST");
			con.setRequestProperty("Content-Type", "application/x-www-form-urlencoded; charset=UTF-8");
			con.setDoInput(true);
			con.setDoOutput(true);
			con.setUseCaches(false);
			con.setDefaultUseCaches(false);
			
			OutputStreamWriter osw = new OutputStreamWriter(con.getOutputStream());
			osw.write(param);
			osw.flush();
			
			int responseCode = con.getResponseCode();
			
			JSONParser jsonParser = new JSONParser();
			JSONObject jsonObject =  (JSONObject)jsonParser.parse(new InputStreamReader(con.getInputStream()));
			JSONObject jsonResult = (JSONObject)((JSONObject) jsonObject.get("message")).get("result");
			String text = jsonResult.get("translatedText").toString();
			System.out.print("text : " + text);
    	}catch (Exception e) {
			e.printStackTrace();
            result = "";
		} catch (IOException e) {
			e.printStackTrace()
			result = "";
		}
    	return result;
    }

[결과]  'text : today' 라고 나오는 것을 확인할 수 있다.
 
 
[파파고 번역기 API 사용하러 가기]
https://developers.naver.com/products/papago/nmt/nmt.md

Neural Machine Translation - INTRO

Neural Machine Translation NAVER Developers - Papago 소개 NMT는 Neural Machine Translation(인공신경망 기반 기계번역)의 약어입니다. 파파고의 NMT 기술은 입력 문장을 문장벡터로 변환하는 신경망(encoder)과 문장벡

developers.naver.com

728x90
반응형