Skip to content

PHP Telegram Parser — fetch posts & media from any public channel, save as JSON + HTML viewer.

Notifications You must be signed in to change notification settings

va-proger/vproger_parce_php

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

1 Commit
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

📡 Telegram Channel Parser (MadelineProto v8)

Парсер Telegram-каналов на PHP с автоматической загрузкой постов, фото и генерацией HTML-страницы просмотра.
Подходит для архивирования постов, создания витрин контента, бэкапов и аналитики.


🚀 Возможности

  • Подключение к Telegram через MadelineProto
  • Парсинг постов с фильтром по тегу (#шпора, #гайд, и т.д.)
  • Загрузка фото и документов
  • Сохранение в формате NDJSON (по строке на пост)
  • Автоматическая генерация страницы просмотра view.php
  • Конфигурация через .env
  • Безопасное хранение сессий (файлы session_*.madeline не коммитятся)

⚙️ Установка

git clone https://github.com/username/telegram-parser.git
cd telegram-parser
composer install
cp .env.example .env

Открой .env и вставь свои ключи с my.telegram.org:

TELEGRAM_API_ID=123456
TELEGRAM_API_HASH=abcdef1234567890abcdef1234567890

▶️ Запуск

php parser.php folder=js_ready group_id=javascript_readyy tag=шпора limit=100

📂 После выполнения появится структура:

out/js_ready/
├── media/
│   ├── photo_*.jpg
│   └── ...
├── tg_posts_YYYY-MM-DD.ndjson
└── view.php

🌐 Просмотр постов

php -S localhost:8080 -t out/js_ready

Зайди в http://localhost:8080/view.php


🧠 Советы

  • Если включена двухфакторная защита Telegram → введи пароль при первом запуске.

  • Чтобы запустить на сервере без входа, авторизуйся локально и скопируй session_*.madeline.

  • Для разных каналов можно использовать разные папки:

    php parser.php folder=python group_id=python_ru tag=гайд
    php parser.php folder=bitrix group_id=bitrixnews tag=bitrix

🧰 Требования

  • PHP 8.1+
  • Composer
  • Расширения: curl, json, mbstring, openssl
  • Telegram-аккаунт с доступом к публичным каналам

🛡️ Безопасность

  • Никогда не публикуй .env и session_*.madeline
  • Используй .env.example для шаблона
  • Настрой cron-задачу для автоматической выгрузки раз в день

✨ Автор

👨‍💻 Андрей Викулов (VProger) Senior Web Developer / DevOps Bitrix | Laravel | Django | React | Tailwind VKGitHubWebsite

About

PHP Telegram Parser — fetch posts & media from any public channel, save as JSON + HTML viewer.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages