Files
instaloader_1/README.md

3.4 KiB
Raw Blame History

Instagram → Telegram Bot

Telegram-бот для мониторинга Instagram: отслеживает новые посты и сториз у выбранных подписок и присылает их в Telegram.

Как это работает

  1. Авторизуется в Instagram через cookies.txt (без пароля)
  2. Получает список всех подписок
  3. Проверяет новые посты (за последние N часов) и активные сториз
  4. Скачивает медиа и отправляет в Telegram
  5. Цикл повторяется каждые N минут

Требования

  • Python 3.12+
  • Telegram Bot Token (через @BotFather)
  • Cookies Instagram (сессионная кука sessionid)

Установка

Локально

pip install -r requirements.txt

Скопируй .env.example в .env и заполни настройки. Положи cookies.txt (Netscape format) в data/.

python bot.py

Docker

docker compose up -d

Настройка

Telegram

Создай бота через @BotFather, получи токен. Узнай свой chat_id (можно у @userinfobot).

Instagram cookies

Бот использует cookies вместо логина по паролю. Экспортируй sessionid из браузера в формате Netscape:

.instagram.com	TRUE	/	TRUE	0	sessionid	<значение>
.instagram.com	TRUE	/	TRUE	0	ds_user_id	<id>
.instagram.com	TRUE	/	TRUE	0	csrftoken	<токен>

Положи файл в data/cookies.txt.

Переменные окружения (.env)

Переменная По умолчанию Описание
TELEGRAM_BOT_TOKEN Токен бота Telegram
TELEGRAM_CHAT_ID ID чата для отправки
INSTAGRAM_USERNAME Instagram username
CHECK_INTERVAL_MINUTES 15 Интервал проверки
MAX_MEDIA_SIZE_MB 50 Макс. размер медиа
MAX_POST_AGE_HOURS 24 Возраст постов для проверки
CONCURRENT_CHECKS 5 Параллельных запросов
DOWNLOAD_DIR /data/downloads Папка для загрузки

Команды

Команда Описание
/start Информация о боте
/check Проверить обновления сейчас
/status Статистика базы
/stop Остановить мониторинг

API

Бот использует неофициальный Instagram Private API:

  • Посты: i.instagram.com/api/v1/feed/user/{pk}/ — мобильное API
  • Сториз: www.instagram.com/api/v1/feed/user/{pk}/story/ — веб-API (Chrome UA)

Проект

├── bot.py                   # Telegram bot (aiogram)
├── instagram_monitor.py     # Instagram API клиент
├── config.py                # Конфиг из .env
├── requirements.txt
├── Dockerfile
├── docker-compose.yml
└── data/
    ├── cookies.txt           # Сессия Instagram
    └── downloads/            # Скачанные медиа