전보 채팅 로그 저장


22

Telegram으로 채팅 로그를 저장할 수 없습니다. Android, Mac OS X, Windows 및 Linux의 전보는 내가 아는 한이 옵션을 사용자에게 제공하지 않습니다. 이것은 기본 기능이며이 소프트웨어에없는 것은 실망스럽고 놀라운 일입니다.

이 기능에 대한 요청이 여기에 있습니다 .

뒤로 스크롤하면 모든 기록이 장치에로드되기 때문에 해결 방법이있을 수 있습니다.

장치에로드 된 채팅 기록을 캡처 / 저장하고 채팅 로그의 로컬 백업 사본을 만들 수 있습니까?

답변:


2

공식 데이터 내보내기

Telegram은 2018 년 23 월 24 일부터 GDPR 변경의 일부로이 옵션을 추가했습니다.

이제 모든 데이터 다운로드를 요청할 수 있으므로 채팅 로그를 얻을 수 있습니다.

  • 데이터 내보내기를 위한 텔레 그램 지원 :
    • 전보 데스크탑 -1.3.8 이상
    • Android 용 전보 -4.8.10 이상
    • iOS 용 전보 -4.8.3 이상
    • Telegram Webapp-아직 사용할 수 없음
    • Windows Phone 용 전보-몰라

@GDPRbot 에 메시지 내보내기를 요청하거나 이미 사용 가능한 경우 앱 설정에서 메시지를 보낼 수 있습니다.

참고 : 보안상의 이유로 데이터 내보내기는 즉시 수행되지 않으므로 누군가 사용자의 장치 중 하나를 제어 할 경우 모든 데이터를 즉시 다운로드 할 수 없습니다.

Telegram의 FAQ 내보내기에서 전체 알림을 읽으십시오

Telegram Desktop에서 시연

다른 옵션 (GitHub에서)


6

tg (telegram-cli)는 Lua 스크립트를 허용합니다. 다음은 sqlite 데이터베이스에 원하는만큼의 메시지를 저장하는 스크립트입니다.

https://github.com/psamim/telegram-cli-backup


1
슈퍼 유저에 오신 것을 환영합니다! 이 Q & A 사이트에서 우리는 답변을 소중하게 생각합니다. 하이퍼 링크만으로는 실제로 답이되지 않고 답을 가리킬 수 있습니다. 링크 된 소스의 필수 요소 (예 : 스크립트 자체)를 포함하도록 답변을 편집하십시오.
Ob1lan

1
안녕, 스크립트를 시도했다. 매력처럼 작동합니다. 그러나 그것은 미디어를 백업하지 않습니까? 아니면 내가 잘못하고 있습니까?
neo

@Junaid 아니요 현재 미디어 파일을 백업하지 않습니다. 미디어 파일은 메시지와 다릅니다. 각 미디어 메시지마다 한 번씩 요청해야합니다.
Samim

5

나는 사밈가에서의 @에 따라 내 자신의 스크립트를 생성 요지 .

파일로 인쇄되므로 SQL 데이터베이스를 사용하지 않고 원하는대로 저장할 수 있습니다. 또한 잠자기 기능이있어 더 많은 대화 상자 기록을 사용할 수 있습니다. 여전히 telegram-cli하드 한계 100으로 제한되어 있습니다. 소스를 편집하고 한계를 높여서 변경했습니다.


스크립트가 미디어 파일과 첨부 파일을 저장할 수 있습니까?
Teo

그들은 단지 미디어 유형을 언급했습니다
vedant

한도 변경 방법을 알려주세요. telegram-cli의 코드 중 어느 부분을 변경해야합니까?
Ali Nfr

3

대답 :

공식 애플리케이션을 사용하여 채팅 기록을 자동으로 백업 할 수 없습니다.이 기능은 아직 제공되지 않습니다

해결 방법 :

여전히 수동으로 만들 수 있습니다. Windows의 공식 클라이언트에서 테스트

  • 채팅 창 열기
  • 마지막으로 보낸 /받은 메시지를 클릭하고 계속 클릭하십시오.
  • 마우스를 위로 움직여 모든 메시지를 선택하십시오
  • 메시지를 복사하려면 마우스 오른쪽 버튼을 클릭하십시오
  • 텍스트 파일 또는 다른 이름으로 저장

6
내 질문에 답변 해 주셔서 감사합니다. 메시지가 많은 경우이 해결 방법은 시간이 오래 걸립니다. 또한 이미지와 비디오는 복사 및 붙여 넣기 중에 포함되지 않습니다. 따라서 나는 이것을 대답으로 받아들이지 않을 것이다.
Teo

나는 수천 개의 메시지 채팅을 위해이 작업을 수행했습니다 (전보 폴더의 이미지와 오디오를 별도로 저장했습니다). 이것이 손으로 할 수있는 유일한 방법이 아니라면 아무것도 아닌 것보다 낫습니다 ;-)
anneblue

2

telegram-cli https://github.com/zyberspace/php-telegram-cli-client를 통해 작동하는 예쁜 PHP 라이브러리를 발견했습니다.

모든 메시지와 파일을 다운로드하는 스크립트가 있습니다.

<?php
require('vendor/autoload.php');
$telegram = new \Zyberspace\Telegram\Cli\Client('unix:///tmp/tg.sck');

$chat = 'chat_name_that_you_want_to_download';

$limit = 50;
$offset = 0;

function save($msg)
{
        $path = '/path/where/you/want/to/store/messages';
        file_put_contents($path . '/' . $msg->id, json_encode($msg));
}

function download($telegram, $msg)
{
        $response = $telegram->exec('load_' . $msg->media->type, $msg->id);
        $msg->media->path = $response->result;
}

while($msgList = $telegram->getHistory($chat, $limit, $offset)) {
        $offset += $limit;
        foreach($msgList as $msg) {
                if (isset($msg->media)) {
                        download($telegram, $msg, $msg->media->type);
                }
                save($msg);
        }
}

여기에서 두 개의 문자열을 변경해야합니다.

  1. chat_name_that_you_want_to_download
  2. / path / where / you / want / to / store / messages

    • 스크립트는 모든 메시지 (채팅 "chat_name_that_you_want_to_download")를 "/ path / where / you / want / to / store / messages"폴더에 분리 된 파일로 저장합니다.
    • 모든 파일에는 메시지의 json 표현이 포함됩니다.
    • 파일의 경우 다운로드 된 파일의 경로가있는 "미디어-> 경로"가 있습니다.
    • 파일은 telegram-cli 기본 폴더에 저장됩니다 : ~ / telegram-cli / downloads

0

텍스트 나 HTML로 내보내려는 경우 (메시지를 색칠하려는 경우) 간단한 방법입니다.

당신은 할 수 있습니다

  • 로 로그인 telegram-cli
  • 채팅 내역 열기
  • 터미널 컨텐츠 내보내기

필자의 경우 Konsole을 사용하므로 File>을 사용하므로 Save output asHTML에서 선호합니다.

당사 사이트를 사용함과 동시에 당사의 쿠키 정책개인정보 보호정책을 읽고 이해하였음을 인정하는 것으로 간주합니다.
Licensed under cc by-sa 3.0 with attribution required.