러시아-우크라이나 전쟁 관련 텔레그램 메시지 영구 저장하는 법

2022년 05월 18일 16시 00분

한국탐사저널리즘센터-뉴스타파는 글로벌탐사저널리즘네트워크(GIJN)과 함께 전 세계 저명 저널리스트의 탐사보도 노하우와 취재 팁을 우리 말로 번역해 공개합니다. 비영리 탐사보도 기관인 뉴스타파와 GIJN이 공동 진행하는 이번 프로젝트는 탐사저널리즘의 저변 확대를 위해 기획됐습니다. -- 편집자 주
러시아어권 인터넷상에서 텔레그램 메신저가 큰 인기를 끌고 있습니다. 페이스북과 트위터 서비스가 차단되거나 제한된 지금, 러시아 내 인터넷 사용자가 제약 없이 사용할 수 있는 유일한 소셜미디어 앱이기 때문입니다. 
최근 들어 텔레그램은 러시아의 우크라이나 침공을 기록하는 매우 중요한 도구로 활용되고 있습니다. 우크라이나 시민들은 전쟁의 참상을 담은 영상과 사진을 꾸준히 게시하고 있습니다. 이 게시물을 통해서 우리는 민간인에 대한 공격 지점을 파악하고 러시아 군대의 집속탄 사용 정황을 포착할 수 있었습니다.  
하지만 러시아와 우크라이나의 온라인 미디어 환경은 현재 급변하고 있습니다. 처음부터 콘텐츠를 영구 저장하면 사용자가 게시물 삭제해도, 채널이 삭제 당해도, 혹은 플랫폼 자체에 접근이 차단되는 상황에서도 해당 콘텐츠를 사용할 수 있습니다. 
인터넷 콘텐츠는 시간이 지나면 언젠가는 그 링크가 작동하지 않게 됩니다. 이처럼 디지털 이미지 원본이 사라지는 현상을 ‘링크 깨짐’(link rot)이라 합니다. 하지만 콘텐츠를 영구 저장, 즉 ‘박제’(archiving)하면 몇 년이고 그 자료를 보관할 수 있습니다. 
지난 2월 25일, 텔레그램 채널 ‘@MariypolCalling’은 러시아 군의 침공 전 이동 상황을 담은 영상을 게시했습니다. 이 기사를 작성하는 시점 현재, 해당 게시물은 ‘검토 조치’로 인해서 더 이상 볼 수 없게 되었습니다. 
▲우크라이나 마리우폴에서 올라온 텔레그램 게시물이다. 텔레그램 검토 조치로 인해 삭제되었다. (출처: 스크린샷)
그러나 우리 벨링캣 기술팀에는 해당 영상의 복사본이 있습니다. 영상을 보자마자 영구 저장해둔 덕분입니다. 텔레그램은 콘텐츠를 영구 저장할 수 있는 가장 간편한 소통 플랫폼이자 이미지 메타데이터를 저장할 수 있는 몇 안되는 플랫폼 중 하나입니다. 사용자 입장에서는 개인정보 침해 위험 요소로 받아들여질 수 있지만 오픈소스 연구자에게는 매우 유용한 도구입니다. 또한, 텔레그램의 대화 내보내기 기능은 구글 번역기로 전체 채널을 번역하기가 쉽게 구성돼 있어 기술적 지식이 없는 사용자도 쉽게 사용할 수 있습니다. 
텔레그램 콘텐츠는 다양한 상황에서 유용하게 쓰일 수 있습니다. 예를 들어, 벨링캣은 극우단체'큐어넌’(QAnon) 음모론 관련 취재 과정에서 텔레그램 게시물을 영구 저장해본 바 있습니다.
아래에 제시된 사례들은 위의 내용과는 무관한 일반 그룹에 중점을 두고 있지만, 여기서 설명하는 아카이빙 원리는 모든 텔레그램 그룹과 게시물에 적용할 수 있습니다. 

특정 게시물, 이미지, 영상을 영구 저장하는 법 

윈도우, 맥, 리눅스 버전의 텔레그램 데스크톱 애플리케이션을 사용하면 가장 간편하게 미디어를 영구 저장할 수 있습니다. 이미지나 영상에 커서를 놓고 마우스 오른쪽 버튼을 클릭해 ‘다른 이름으로 저장’하면 됩니다. 이미지가 파일로 첨부된 경우라면 파일 원본의 메타데이터도 함께 저장됩니다. 
▲텔레그램 데스크톱 앱을 이용해 이미지 파일을 아카이빙하려면 마우스 오른쪽 버튼을 클릭해 ‘다른이름으로 저장하기’를 선택하면 된다. (출처: 스크린샷)
이 방식으로 텔레그램 앱에서 볼 수 있는 모든 메시지를 저장할 수 있습니다. 해당 그룹 참여자가 아니어도 메시지를 저장할 수 있습니다. 만약 https://t.me/euronews_tr/2011과 같은 형식의 게시물 URL을 갖고 있다면 클릭 후 ‘채널에서 보기’(View in Channel)를 선택하면 URL을 열 수 있습니다.
▲텔레그램 데스크톱 앱을 통해 채널에 올라온 게시물을 보려면 게시물 URL을 클릭한 후 ‘채널에서 보기’를 선택하면 된다. (출처: 스크린샷)
타임스탬프와 사용자를 저장하고 해당 이미지 또는 영상을 찾은 장소를 기억하려면 원 게시물의 스크린샷을 찍어 두는 것이 좋습니다. 
더 나아가 텔레그램 방에 올라온 전체 콘텐츠와 메타데이터를 ‘Show Json Bot’ 계정으로 전달하면 봇이 응답 값을 보내주는데, 이 Json 콘텐츠를 별도 텍스트 파일로 저장해보십시오. 전체 콘텐츠의 복사본을 저장할 수 있습니다. 
Json은 컴퓨터가 읽을 수 있는 정보를 나타내는 여러가지 파일 형식 중 하나입니다. API를 사용해 받을 수 있는 콘텐츠와 동일합니다. 민감한 메시지나 개인 메시지는 봇을 이용해 전달하면 안 됩니다. 메타데이터에는 사용자 ID, 대화방 ID, 전체 타임스탬프 등의 게시물에 대한 가능한 많은 정보가 담겨 있습니다. 때문에 메타데이터를 저장해두면 유용하게 사용될 수 있습니다.
▲텔레그램 대화방의 모든 게시물과 콘텐츠, 그리고 그 메타데이터까지 모두 저장하고자 한다면 ‘Show Json Bot’으로 게시물을 전달하면 된다. (출처: 스크린샷) 
▲전달한 후 보내기 버튼을 누르면 ‘Show Json Bot’이 이처럼 저장된 응답 값을 보내준다. (출처: 스크린샷)

채널 또는 그룹 전체를 영구 저장하는 방법

텔레그램은 사람과 기계가 모두 읽을 수 형식으로 파일 및 미디어를 포함한 전체 채팅 기록을 내보내는 기능을 제공한다는 점에서 다른 채팅 플랫폼을 능가합니다. 그러나 맥 OS에서는 이 기능을 사용할 수 없습니다. 
맥 또는 리눅스 사용자들은 윈도우 가상 머신을 사용하면 이 문제를 간단하게 해결할 수 있습니다. ’브이엠웨어 퓨전’(VMWare Fusion)은 비영리 목적의 사용자를 대상으로 무료 라이선스를 제공합니다. (사용 방법은 여기를 참조) 
먼저, 텔레그램 앱에서 대화방 중 하나를 선택하거나 검색하여 원하는 대화방을 엽니다. 텔레그램의 대화는 ▲비밀대화방, ▲사용자 한 명이 다수의 구독자에게 일방향으로 메시지를 방송하는 채널, 또는 ▲다수의 사용자가 참여해 양방향 소통이 가능한 그룹의 형태로 이루어져 있습니다. 
공개 채널은 미리보기 링크 형태로 사용자들에게 공유됩니다. https://t.me/s/[사용자명] (예: https://t.me/s/euronews_tr) 형식의 URL은 채널의 사용자명을 클릭하면 텔레그램 앱에서 링크를 열 수 있도록 연결해 줍니다. 이 미리보기 URL을 이용해 검색 결과에는 나오지 않는 특정 채널을 찾아 들어갈 수 있습니다.
그룹이나 채널이 열리면 오른쪽 상단의 메뉴 버튼을 클릭한 후 ‘대화 기록 내보내기’(Export chat history)를 선택합니다. 이 기능은 미리보기 URL로 들어온 사용자와 채널 비참여자도 사용할 수 있습니다.
▲텔레그램 대화방 또는 그룹 전체를 다운받고 싶다면 대화창 오른쪽 상단 메뉴에서 ‘대화 내용 내보내기’를 누르면 된다. (출처: 스크린샷) 
내보내기 설정에는 사용자가 필요에 맞게 선택할 수 있는 여러 항목이 있습니다. 모든 항목을 선택하면 해당 채널에 있는 모든 종류의 콘텐츠를 내보내게 됩니다. 용량 한도를 최대치로 하면 가능한 한 많은 콘텐츠를 저장할 수 있지만 내보내는 데 걸리는 시간이 길어질 수 있습니다.
▲내보내기 설정은 특정 콘텐츠만을 선택적으로 다운받도록, 그리고 특정 시점 이후의 콘텐츠만을 다운받도록 설정할 수도 있다. (출처: 스크린샷)
파일 형식은 두 가지입니다. html과 Json 중 하나를 선택할 수 있습니다. Html은 사람이 읽을 수 있는 형식으로 웹 브라우저에서 파일을 열 수 있고 수동 검토에 가장 유용합니다. Json은 기계 처리를 위한 형식으로 추가 분석을 위해 데이터를 내보낼 때 유용합니다. 
▲텔레그램 대화방 내용을 다운받을 때 HTML과 JSON 중 내보낼 파일 형식을 선택해야 한다. (출처: 스크린샷)
전체 채널 내용 중 일부만 필요한 경우에는 기간을 지정하여 처리 속도를 높일 수 있습니다. 마지막으로, ‘내보내기’(Export)를 클릭하면 내보내기 작업이 시작됩니다. 대화 내용이 많으면 작업이 완료되기까지 몇 시간이 걸릴 수 있습니다. 
▲다운받고자 하는 대화의 폭은 기간을 지정하면 설정할 수 있다. (출처: 스크린샷)
내보내기 진행 과정을 보려면 웹 브라우저에서 ‘messages.html’ 파일을 열면 됩니다.
▲참고로 내보내고자 하는 대화가 오래 전부터 현재까지로 규모가 방대하다면 작업에 몇 시간이 걸릴 수도 있다. (출처: 스크린샷)
아쉽지만, 채널의 코멘트 내보내기 기능은 아직 지원되지 않습니다. 

텔레그램 메시지를 번역하는 방법

최근 들어 텔레그램이 모바일 앱에 번역 기능을 추가했습니다. 
앱에서 ‘설정 > 언어’로 들어가 ‘번역 보기’(Show Translation) 기능을 활성화하면 사용할 수 있습니다. 번역하고 싶은 메시지를 길게 눌러 메뉴를 불러온 후 ‘번역’ 옵션을 선택합니다.
▲텔레그램은 다양한 언어의 메시지를 대상으로 번역 기능을 제공하고 있다. (출처: 스크린샷)
단, 한 번에 메시지 하나만 번역할 수 있게 설계돼 있습니다. 그러나 앞서 설명한 바와 같이 대화 기록을 html로 내보낸 후 구글 크롬에서 열면 전체 채널의 콘텐츠를 한 번에 번역할 수 있습니다. 
크롬이 자동으로 번역해서 보여주지 않으면, 페이지 빈 공간에 커서를 두고 마우스 오른쪽 버튼을 클릭해 ‘영어(또는 원하는 언어)로 번역’을 선택하면 됩니다. 

스크래핑과 API

텔레그램 API는 매우 개방적인 플랫폼 액세스를 제공합니다. 그래서 기술이 익숙한 고급 사용자들에게도 메시지와 미디어, 사용자, 채널, 그룹 메타데이터를 손쉽게 영구 저장할 수 있는 툴입니다. Telethon API는 파이썬 개발자를 위한 모든 기능을 갖추고 있으며 체계적으로 문서화되어 있습니다. 
텔레그램 메시지를 다운로드하는 또 다른 방법은 API를 사용하지 않는 스크래퍼를 사용하는 겁니다. 텔레그램의 내보내기 기능보다는 속도가 더 빠를 수 있지만 공개 채널에만 사용할 수 있다는 단점이 있습니다. 
*벨링캣에 게재된 기사를 허락하에 재게재함. 

추가 자료

제작진
벨링캣 기술팀
디자인이도현
웹출판허현재
번역, 감수최시내, 김지윤