본문 바로가기
E4.Live/프로젝트 소개

[IT서비스 사업본부] PRMS JUNCTION API 기능 개발

by E4. 2022. 1. 6.

     IT서비스프로젝트소개   

사업명  : PRMS JUNCTION API 기능 개발
발주처  : 이포넷
사업기간  : 2021년 11월 10일 ~ 2021년 11월 31일
담당PM  :
투입인력  : 전서언 주임


안녕하세요. IT서비스사업본부 전서언 주임입니다.

현재 진행중인 PRMS JUNCTION API 기능 개발에 대해 소개를 해보려고 합니다.
PRMS는 언어서비스사업본부에서 진행하는 프로젝트를 관리 및 정산을 위해 사용하는 시스템입니다.
PM에게 번역 요청이 들어온 프로젝트를 확인 후 PRMS에 등록하고 번역 작업을 진행하게 됩니다.
하지만 프로젝트 수가 굉장히 많고 또 하나하나 확인해서 PRMS에 등록하기까지 너무 많은 시간이 소비되기 때문에 이 프로세스를 자동화하고자 시스템 관리팀에서 웹 스크래핑 프로그램을 지원하고 있습니다.

(출처:https://stackhoarder.com/2019/08/18/python%EB%B6%80%ED%84%B0-web-scraping-%EA%B9%8C%EC%A7%80-%EC%B5%9C%EB%8B%A8-%EC%8B%9C%EA%B0%84%EC%97%90-%EC%9D%B5%ED%98%80%EB%B3%B4%EC%9E%90/)

여기서 웹 스크래핑이란?
웹사이트의 페이지를 그대로 가져와서 그 안에서 데이터를 수집하는 행위입니다. 우리가 원하는 정보를 가지고 있는 웹사이트에서 필요한 데이터를 가져오는 것입니다. 다른 말로 크롤링이라고도 합니다.

저희가 지원하는 웹 스크래핑 프로그램은 파이썬의 selenium 라이브러리를 기반으로 하여 PRMS 등록에 필요한 데이터를 웹에서 자동으로 수집하여 PRMS 프로젝트 등록해주는 프로그램입니다.
하지만 웹 스크래핑은 말그대로 웹에서 데이터를 수집하기 때문에 만약 웹의 구성이 조금이라도 변경되면 오류가 발생하고 다시 수정을 해줘야 하는 단점이 있습니다.
이 단점을 보완하기 위해 웹 스크래핑 방식의 프로그램을 줄이고 API 방식으로 변경하려고 합니다.

(출처: https://assaeunji.github.io/development/2020-08-29-api/)

또 여기서 API란?
애플리케이션 프로그래밍 인터페이스(Application Programming Interface)의 약자로 어떤 응용 프로그램에서 데이터를 주고받기 위한 방식입니다. 쉽게 말해 어떤 특정 사이트에서 특정 데이터를 공유할 경우 어떠한 방식으로 정보를 요청해야 하는지, 그리고 어떠한 데이터를 제공 받을 수 있을지에 대한 규격을 나타내는 것입니다. 우리는 이 규격을 맞춰서 우리가 필요한 데이터를 요청하면 해당 데이터를 제공받을수 있습니다.

이번에 개발중인 기능은 스크래핑 방식을 사용하지 않고 PRMS에 JUNCTION API를 연동시켜 필요한 데이터를 API 호출을 통해서 전달받아 프로젝트 등록하는 방식으로 개발중입니다. API 기능을 개발함으로써 사용자는 별도로 프로그램을 돌릴 필요 없이 PRMS에서 바로 프로젝트 확인 및 등록이 가능해지고 오류가 날 확율이 적어 유지보수에도 용이할 것으로 예상됩니다.
아직 많은 고객사에서 API를 지원 여부가 확실치 않아 스크래핑 프로그램을 사용하는 곳이 많지만 API 지원 여부를 빠르게 파악해서 가능한 웹 스크래핑 방식을 사용하지 않고 API를 사용하는 방향으로 나아가려고 하고 있습니다.

댓글0