원 하 는 정보 만 수집 한다 ! 크롤링 과 빅 데이터 분석 활용 | 삼성 디스플레이 뉴스룸 
 빅 데이터 분석 의 사회 적 필요 성 
 현대 사회 에서 의 빅 데이터 에 대한 지속 적 인 관심 과 실험 적 인 시도 들 은 다변 화 된 현대 사회 를 보다 정교 하 게 예측 하 고 효율 적 으로 작동 하 도록 정보 를 제공 하 며 , 개인 화 된 사회 구성원 들 에게 적합 한 정보 를 제공 하 고 관리 하 려는 목적 에 기인 한다 . 실례 로 , 민간 영역 에서 는 신용카드 이용 내역 에 관한 정보 부터 소셜 미디어 의 웹 데이터 등 을 토대 로 고객 선호도 를 분석 하 고 , 고객 의 구매 패턴 과 실 구매 트렌드 를 파악 해 개인 고객 수요 에 맞 는 맞춤 형 정보 제공 등 마케팅 에 적극 활용 하 고 있 다 . 
 본 기고 에서 는 크롤링 과 스크랩 핑 그리고 이 와 연관 된 용어 의 정의 를 알아보 고 , 크롤링 후 모집 된 데이터 를 어떠 한 방식 으로 분석 하 여 결과 와 분석 함의 를 도출 할 수 있 을지 논하 고자 한다 . 
 크롤링 이란 무엇 일까 ? 
 스크랩 핑 ( 혹은 웹 스크랩 핑 ) 은 인터넷 에서 존재 하 는 데이터 를 컴퓨터 프로그램 을 통하 여 자동 화 된 방법 으로 웹 에서 데이터 를 수집 하 는 모든 작업 을 말 한다 . 크롤링 은 많 은 사람 들 이 스크랩 핑 과 혼용 하 여 사용 하 고 있 지만 , 사실 은 그 의미 가 상이 한 용어 다 . 
 크롤링 은 데이터 를 수집 하 고 분류 하 는 것 을 의미 하 며 , 주로 인터넷 상 의 웹 페이지 ( html , 문서 등 ) 를 수집 해서 분류 하 고 저장 하 는 것 을 뜻 한다 . 엄밀히 말 해 , 크롤링 은 데이터 의 수집 보다 는 여러 웹 페이지 를 돌아다닌다는 뜻 이 강하 며 , 데이터 가 어디 에 저장 되 어 있 는지 위치 에 대한 분류 작업 이 크롤링 의 주요 목적 이 라 할 수 있 다 . 
 파싱 은 프로그램 언어 를 문법 에 맞 게 분석 해 내 는 것 인데 , 어떤 웹 페이지 의 데이터 를 사용 자 가 원 하 는 형식 , 즉 일정 한 패턴 으로 추출 해 어떠 한 정보 를 만들 어 내 는 것 을 의미 한다 . 어느 위치 에 저장 된 데이터 에 접근 을 했 다면 , 이 데이터 를 원하 는 형태 로 가공 하 는 작업 이 주요 목적 이 라고 생각 하 면 된다 . 
 종합 하 여 , 언급 한 각각 의 작업 을 수행 하 는 프로그램 을 크롤러 ( crawler ) , 파서 ( parser ) , 스 크 래퍼 ( scraper ) 등 으로 부른다 . 여러 자료 를 보 면 크롤링 , 스크랩 핑 그리고 파싱 은 인터넷 에서 프로그램 을 이용 해 자료 를 추출 하 는 작업 을 의미 하 며 , 종종 혼용 해서 쓰 는 경우 가 많 다 . 전문 개발 자 가 아니 라면 정확 하 게 구분 할 필요 는 없 지만 , 기본 적 으로 다소 상이 한 개념 에 대한 이해 정도 는 필요 하 다 . 
 크롤링 의 대상 은 바로 온라인 상 데이터 ! 
 크롤링 의 주요 대상 은 다양 한 형태 로 존재 하 는 데이터 이 다 . 데이터 는 앞서 언급 한 바 와 같이 , 데이터 생성 스타일 에 따라 , 정형 , 반정 형 그리고 비 정형 데이터 로 구분 되 기 도 하 지만 , 데이터 를 생산 하 는 주체 에 따라 기업 ( 혹은 기관 / 조직 ) 과 사용자 가 생성 하 는 데이터 로 분류 할 수 있 다 . 조직 이 생성 하 는 데이터 는 언론 이 제공 하 는 뉴스 와 방송 영상 , 민간 기업 이 제공 하 는 제품 관련 정보 , 영화 · 음악 · 게임 등 의 미디어 산업체 가 생산 하 는 콘텐츠 형 데이터 등 이 있 다 . 
 사용자 에 의해 생성 되 는 데이터 는 서비스 와 제품 소비 에 의해 자동 적 으로 만들 어 진 데이터 ( 뉴스 기사 를 읽 은 횟수 , 온라인 쇼핑 웹 사이트 방문자 수 등 ) 와 뉴스 댓글 , 상 품평 , 메신저 · 블로그 · 온라인 카페 · 유튜브 · SNS 내 활동 에 의해 생산 된 데이터 를 포함 한다 . 이러 한 데이터 는 사용 자 단 말 을 통하 여 읽 을 수 있 는 데이터 이 므로 , 크롤링 이나 스크랩 핑 방법 을 사용 하 여 수집 할 필요 가 있 다 . 
 크롤링 , 어떻게 하 는 것 일까 ? 
 크롤링 을 하 는 방법 에 는 크 게 연구자 가 직접 코드 를 작성 하 는 경우 와 데이터 를 수집 하 고자 하 는 사이트 혹은 회사 에서 제공 하 는 API ( application programming interface ) 를 사용 하 는 방법 이 있 다 . API 라 함 은 다양 한 의미 를 갖 고 있 지만 , 크롤링 의 경우 에 는 사용 자 에게 데이터 를 쉽 게 제공 하 기 위한 툴 이 라 할 수 있 다 . API 를 사용 하 다 보 면 , 빠른 시간 에 정제 된 형태 의 데이터 를 수집 할 수 있 고 , 데이터 를 소유 하 고 있 는 기업 에서 제공 하 는 툴 이 기 때문 에 데이터 사용 에 따른 법 적 · 윤리 적 문제 가 거의 없 지만 최소한 의 프로그래밍 은 필요 하 다 . 
 직접 크롤링 명령어 를 작성 해서 데이터 를 수집 하 는 경우 는 크 게 , 데이터 를 수집 하 려는 사이트 에서 API 를 제공 하 지 않 는 경우 , API 를 제공 하 더라도 API 를 통하 여 원 하 는 데이터 를 수집 할 수 없 는 경우 도 발생 한다 . 또한 , 크롤링 을 하 고자 하 는 정보 가 웹 페이지 의 소스 코드 에 담겨 있 지 않 는 경우 에 는 요소 검사 ( network inspection ) 이나 셀레늄 ( selenium ) 과 같 은 헤드 리스 브라우저 ( headless browser ) 를 사용 할 수 도 있 다 . 
 ▲ 키보드 F 12 를 누르 면 볼 수 있 는 웹 페이지 소스 코드 ( 출처 : 네이버 메인 화면 ) 
 크롤링 후 분석 방법 은 어떻게 ? 
 크롤링 한 대용량 데이터 를 엑 셀 에 저장 하 고 , 아래 에 기술 할 다양 한 툴 ( tool ) 들 을 이용 하 여 수집 한 기사 와 댓글 데이터 를 분석 하 여 , 궁극 적 으로 데이터 내 담겨 있 는 함의 를 도출 할 수 있 다 . 
 1 ) 주제 어 ( 키워드 ) 빈도 분석 
 크롤링 에 의해 수집 된 , 텍스트 자료 에 포함 된 특정 단어 들 의 빈도 에 따라 주요 단어 를 추출 할 수 있 다 . 즉 , 주제 어 빈도 분석 은 특정 문서 집단 내 에서 자주 언급 되 는 주제 어 를 추출 하 고 이 들 이 언급 되 는 빈도 에 따라 중요도 를 분석 하 는 방법 이 며 , 특정 단어 가 수집 된 총 문서 에서 얼마나 자주 등장 하 는지 를 나타내 는 ‘ 단어 빈도 ( Term Frequency : TF ) ’ 로 단순 하 게 결정 할 수 있 다 . 
 2 ) 주제 어 ( 키워드 ) 중요 도 분석 
 단순 하 게 는 , TF 값 이 큰 단어 일수록 중요도 가 높 다고 판단 할 수 있 지만 , 사실 TF 값 이 큰 단어 는 모든 문서 에서 자주 등장 하 는 , 즉 그 단어 가 흔하 게 등장 한다는 것 을 의미 하 는 ‘ 문서 빈도 ( Document Frequency : DF ) ’ 값 이 큰 단어 일 수 있 다 . 이 에 , 중요 도 높 은 키워드 도출 을 위해 TF - IDF 라는 값 을 사용 한다 . TF - IDF 는 DF 값 의 역수 인 IDF ( 역문 서 빈도 , inverse document frequency ) 에 단순 단어 빈도 ( TF ) 값 을 곱한 것 으로 , 이 처럼 모든 문서 에서 자주 출현 하 는 상투어 를 걸러 내 기 위함 이 며 , 이 는 단순 한 단어 의 빈도 처리 가 아닌 단어 의 출현 확률 을 기준 으로 출현 빈도 를 재 가공 한 것 이 다 . 
 즉 , TF - IDF 는 특정 문서 에서 의 단어 중요도 를 나타내 는 TF 에 전체 문서 와 관계 된 단어 의 중요도 인 IDF 를 곱한 값 으로 , 특정 문서 내 에서 단어 빈도 가 높 을수록 , 그리고 전체 문서 들 중 그 단어 를 포함 한 문서 가 적 을수록 그 값 이 커짐 을 알 수 있 다 . 이러 한 TF - IDF 를 통해 언론 기사 나 댓글 텍스트 데이터 전체 에서 공통 적 으로 혹은 무의미 하 게 반복 적 으로 출현 하 는 특정 단어 를 제거 할 수 있 다 . 
 ▲ TF - IDF 수식 
 3 ) 텍스트 마이닝 ( text mining ) 
 텍스트 마이닝 은 TF 와 TF - IDF 분석 을 발전 시킨 것 으로 , 텍스트 형태 로 이루어진 비 정형 데이터 들 을 자연어 처리 방식 을 이용 하 여 정보 를 추출 하 거나 연계 성 을 파악 하 는 기법 이 다 . 웹 문서 에서 특정 주제 어 와 매칭 ( matching ) 되 는 단어 를 찾 아 수 를 부여 하 는 인덱싱 ( indexing ) 검색 기법 에서 발전 되 어 왔으며 , 점차 특정 주제 어 나 문맥 ( context ) 을 기반 으로 데이터 의 숨 은 의미 를 탐색 하 는 데 활용 되 고 있 다 . 텍스트 마이닝 이 두드러지 는 분야 는 뉴스 기사 분석 으로 , 이 를 활용 하 면 텍스트 의 문맥 에 따라 쟁점 을 파악 하 고 텍스트 간 연계 를 분석 할 수 있 다는 장점 이 있 다 . 
 ‘ 연관 어 분석 ( association keyword analysis ) ’ 혹은 ‘ 의 미망 분석 ( semantic network analysis ) ’ 은 텍스트 마이닝 의 한 종류 이 다 . 관심 주제 어 를 포함 한 대상 문서 에서 함께 언급 된 주제 어 를 추출 하 여 관심 주제 어와 어떠 한 토픽 들 이 연결 되 는 지 분석 할 때 사용 한다 . 예컨대 , 하나 의 뉴스 기사 에서 동시 출현 한 용어 의 쌍 을 추출 하 고 전체 문서 집합 에서 주제 어의 쌍 별 발생 빈도 와 연결 관계 를 분석 하 면 , 언론 기사 상 의 주요 관심 토픽 과 그 연계 성 의 변화 를 추적 할 수 있 다 . 또한 주제 어 를 특정 토픽 별로 분류 한 후 연관 어 분석 을 실시 하 면 주요 쟁점 간 의 관련 성 을 구조 적 으로 파악 하 기 에 용이 하 다 . 
 TF 와 TF - IDF 분석 을 통하 여 언론 이 자주 언급 하 는 아젠다 ( 의제 혹은 주요 이슈 ) 를 간단 하 게 추출 할 수 있 으며 , 추출 된 단어 가 내재 하 는 감성 적 인 긍 · 부정 의미 를 파악 하 여 , 특정 아젠다 에 대한 언론 이 바라보 는 시각 및 관점 , 즉 프레임 을 이해 하 는 데 도움 이 된다 . 
 이전 기사 일상 속 디스플레이 의 발견 8 편 : 리얼 블랙 화면 , 눈부심 이 없 다 ! 
 다음 기사 [ 호기심 과학 ] 사라지 기 도 하 고 나타나 기 도 하 는 마술 같 지만 이것 이 바로 과학 !