스크래핑과 API, 뭐가 다르죠?

스크래핑 VS. API

금융위원회가 2018년 마이데이터 산업 도입방안을 발표한 후로, 스크래핑과 API가 핀테크 업계의 화두로 떠올랐습니다. 그렇다면, 스크래핑 기술과 API 기술은 무엇이며, 두 기술의 특징과 장단점은 무엇 일까요?

스크래핑 기술이란?

스크래핑은 1990년대 말부터 국내에서 보편화된 기술입니다. 초기에는 웹사이트 콘텐츠를 수집 저장하여 정보화에 활용하기 위해 만들어 졌죠.

스크래핑은 고객의 인증정보를 이용해 특정 금융사나 공공기관, 정부 사이트의 개인정보 중 필요한 정보를 자동으로 추출해 제공하는 기술입니다. 기계가 자동으로 특정 사이트에 접속해 개인에 대한 인증을 한 후 화면에 보여지는 정보를 캡처해 간다고 생각하면 쉽죠. 각종 비대면 금융서비스에서 예전처럼 수많은 서류를 고객이 직접 수집, 제출할 필요가 없는 것도 스크래핑 기술 덕 입니다.​

스크래핑 기술은 스크래핑 동작을 실행하는 위치에 따라 ‘클라이언트’ 기반과 ‘서버’기반 스크래핑으로 나눌 수 있습니다. 클라이언트 기반 스크래핑은 고객의 PC안에 스크래핑 엔진이 있어서 직접 고객 PC에서 스크래핑이 실현되는 방식입니다. 고객이 관련 프로그램을 다운받아 실행되어 데이터 저장과 모든 과정은 고객 PC에 보관됩니다.

서버 기반 스크래핑은 스크래핑 엔진이 스크래핑 업체의 중계 서버에 위치해 있습니다. 사전 고객의 인증정보를 받은 후 정보를 수시로 미리 저장해두고 필요할 때 수시로 추출하여 곧바로 제공하는 방식입니다. 시스템간 연동이 필요 없어 속도가 클라이언트 스크래핑 방식보다 빠르죠. 그러나 보안 문제가 발생할 가능성은 상대적으로 커집니다.

출처: Getty Images

이 스크래핑 기술은 다양한 핀테크 서비스를 가능하게 했습니다. 각종 비대면 금융서비스에서 예전처럼 수많은 서류를 고객이 직접 수집하거나 제출할 필요가 없게 된 데는 스크래핑 기술의 덕이 크죠. 최근 서비스 되고 있는 온라인 보험슈퍼마켓 ‘보험 다모아’ 등이 바로 스크래핑 기술을 기반으로 한 서비스 입니다.

API란 무엇일까?

API는 애플리케이션 프로그래밍 인터페이스 (Application Programming Interface)를 줄인 말입니다.  즉, 어떠한 응용 프로그램에서 데이터를 주고 받기 위한 인터페이스를 의미 하는데요, 어떤 특정 인터페이스에서 특정 데이터를 공유할 경우 어떠한 방식으로 데이터를 요청하고, 어떠한 데이터를 제공 받을 수 있을 지에 대한 규격을 설정하는 것이 API입니다. 다시말해, 특정 프로그램의 기능과 데이터를 다른 프로그램이 접근할 수 있도록 미리 정한 통신 규칙입니다.

조금 더 쉽게 설명하고 싶지만, 설명이 어려우니 동영상을 한 번 참고해 보실까요? 유튜버 노마드 코더 께서 정말 알기 쉽게 설명해주셨어요.

다시 한 번 글로 풀어 설명하자면, API는 식당에서 주문서를 주방에 가져다 주고 완성된 요리를 손님에게 내어주는 웨이터/웨이트리스의 역할을 하는 것입니다. API는 프로그램들이 서로 작용하는 것을 도와주는 매개체인 것이죠.

API는 사용하는 방법과 용도에 따라 오픈 API와 비공개 API가 있는데요, 오픈 API는 누구나 쉽게 접근하여 정보를 공유하기 위해 만들어진 인터페이스 이며, 비공개 API는 권한이 있는 일부 사용자들 에게만 정보를 제공하기 위해 만들어진 인터페이스인 것입니다.

​API를 이용할 경우, 내부 개발자의 리소스를 감소시키지 않으면서 제공하는 서비스 자체에 대한 완성도를 높이고, 기존 기능을 강화하고, 새로운 능력을 구축할 수 있어 효율적이고 비용 효과가 높아집니다.  즉, 처음부터 새로운 기능을 개발하는 대신 개발자가 API 엔드 포인트를 호출할 수 있어, 특정 기능을 개발하여 서비스를 제공하지 않아도 된다는 장점이 있습니다.

스크래핑과 API는 양립할 수 있을까요?

​스크래핑과 API는 핀테크 산업의 근간이라고 말할 수 있을 정도의 핵심 기술입니다. 그런데, 최근 금융위원회는 2021년 8월까지 마이데이터 사업에서 스크래핑을 금지하고 API 연계방식으로 바꿔야 한다고 밝혔습니다.

​금융위원회는 스크래핑 방식의 취약성을 보완할 수 있도록 정보수집 과정을 전반적으로 정비하고 개인 신용정보 이동권 행사에 기반 하여 금융회사 등이 마이데이터 사업자에게 직접 정보를 전달하는 방식으로 개선하겠다고 합니다. 스크래핑 이용이 제한되면 금융사와 핀테크 업체는 해당 정보를 API에 기반 하여 주고 받아야 합니다. 금융위가 개인 신용정보 이동권 행사에 기반 해 금융회사 등이 마이데이터 사업자에게 직접 정보를 전달하는 방식으로 개선한다는 계획이죠.

출처

즉, 마이데이터 사업자가 마이데이터 서비스를 목적으로 “개인 신용정보”를 스크래핑 하는 행위를 금지시키고 API를 통해서만 개인 신용정보를 가져올 수 있도록 하며 개인 신용정보 외에는 스크래핑이 사용 가능하다는 것이 기본 입장입니다. 물론, 마이데이터 사업자가 아닌 기업은 스크래핑을 통해 개인 신용정보를 수집하는 것이 가능하다고 하니, 스크래핑 기술 자체를 금지한다는 의미가 아닌 것입니다.

​스크래핑과 API는 닮은 듯 매우 다른 기술이며, 이제까지 쿠콘, 핑거 등 금융 IT시장에서 정보제공 서비스를 영위하고 있는 업체들은 대부분 스크래핑 방식으로 서비스를 제공해 왔습니다. 물론, 통신 프로토콜을 적용한 API방식이 보안성이 뛰어난 것은 사실이지만, API구축에는 시간과 비용이 소요되며, 금융사 마다 각기 다른 데이터 모듈을 맞추는 작업에도 시일이 걸릴 수 밖에 없을 것입니다.​

때문에, API가 무조건 안정적이며 스크래핑이 안정적이지 않다고 비교를 하기는 어려울 것입니다. 마이데이터 산업의 도입으로 API기술에만 관심이 집중되고 있지만 보다 안정적인 핀테크 사업을 운영하기 위해서는 스크래핑 기술과 API기술 모두를 적용하고 결합하여 사용하는 것이 더 안정적일 수 있는 것입니다.

출처: Getty Iamges

CODEF의 고객사 중 PFM서비스를 운영하고 있는 기업들도 평균 3~4,000개의 스크래핑 모듈을 사용하고 있어,  바로 마이데이터 사업 진입이 힘들 것이라는 입장입니다. CODEF는 지속적인 데이터 허브로 마이데이터에 사용 되는 API 및 스크래핑 모두를 중개하는 기관으로 계속해서 서비스를 진행할 예정입니다. CODEF가 제공하는 서비스에 대해 궁금한 점이 있으시면 아래 배너를 눌러 홈페이지를 확인해주세요. CODEF는 CODE로 세상을 연결합니다.