
증분 지원, 다양한 출력 형식(JSON, HTML, 일반 텍스트) 및 telegram-cli 원격 제어를 통한 미디어 다운로드를 제공하는 Telegram 채팅 로그 백업
이 유틸리티는 telegram-json-backup의 후속 버전으로, Ruby로 처음부터 작성되었습니다. telegram-cli의 원격 제어 기능을 사용하여 Telegram 사용자 및 (슈퍼)그룹 대화의 백업을 생성할 수 있습니다.
이전 프로젝트와 비교하여 telegram-history-dump는:
기본 구성은 모든 대화를 JSON 형식으로 output 디렉토리에 백업하며, 미디어를 다운로드하지 않습니다.
ruby --versionconfig.yaml을 편집하여 백업 루틴을 구성합니다.telegram-cli --json -P 9009ruby telegram-history-dump.rb기록은 항상 JSON Lines 호환 파일로 저장됩니다. 그러나 구성 파일에서 몇 줄의 주석을 해제하면 추가 출력 형식을 생성할 수 있습니다.
다음 포맷터 모듈 중 하나 이상을 활성화할 수 있습니다:
html은 웹 브라우저에서 볼 수 있는 스타일이 지정된 페이지별 채팅 로그를 생성합니다.
plaintext는 사람이 읽을 수 있는 텍스트 파일을 생성하며, 하루에 하나의 파일로 구성됩니다.
bare는 컨텍스트 없이 실제 메시지 텍스트만 출력합니다. 언어학적/통계적 분석을 위한 것입니다.
pisg는 PISG 채팅 통계 생성기의 입력으로 EnergyMech IRC 로깅 형식과 호환되는 일일 로그를 생성합니다. 또한 telegram-pisg를 참조하십시오.
사용자 정의 포맷터를 구현할 수도 있습니다. 자세한 내용은 formatters/lib/formatter_base.rb를 참조하십시오.
대부분의 백업 구성은 구성 파일을 통해 이루어지지만, 몇 가지 특정 옵션은 CLI 옵션으로 사용할 수 있습니다. 이들 중 필수 옵션은 없습니다.
Usage: telegram-history-dump.rb [options]
-c, --config=cfg.yaml Path to YAML configuration file
-k, --kill-tg Kill telegram-cli after backup
-h, --help Show help
-d, --dir=DIR Subdirectory for output files
(relative to backup_dir in YAML config)
-l, --limit=LIMIT Maximum number of messages to backup
for each target (overrides YAML config)
사용 참고 사항:
--accept-any-tcp를 전달하고 원치 않는 노출을 방지하기 위해 포트를 적절히 방화벽으로 보호해야 합니다. 미디어 파일에 관한 일부 옵션은 원격 설정에서 작동하지 않을 수 있습니다.chunk_delay를 줄이거나 chunk_size를 늘릴 때 주의하십시오. Telegram이 기록 요청에 속도 제한을 가하는 것 같습니다. 너무 빠르게 진행하면 작업이 시간 초과되어 스크립트가 덤프의 일부를 건너뛰게 될 수 있습니다.telegram-history-dump에 영향을 미치는 것으로 알려진 Telegram-cli 문제: