Файл .session от Telethon нельзя считать готовым файлом для Pyrogram. Встроенные файловые хранилища обеих библиотек используют SQLite, но ожидают разные таблицы и поля. У строк сессии тоже свои форматы. Переименование файла или добавление соседнего JSON не меняет его внутреннюю структуру.
Если программа не принимает сессию, выясните, на каком этапе возникла ошибка. Поиск файла, чтение формата и проверка авторизации на стороне Telegram — три разные операции. По одному расширению нельзя определить, какая из них не удалась.
Что именно лежит перед вами
Файловая сессия — база, которую создал конкретный клиент. Имя файла часто заканчивается на .session. Строка сессии — текст, записанный в формате библиотеки. Обычный текстовый файл со строкой внутри не превращается в базу SQLite после переименования.
В комплекте SESSION + JSON соседний JSON может описывать настройки, а отдельная программа может требовать эту пару для импорта. Уточняйте роль JSON в инструкции. Сам факт, что файлы лежат рядом, не указывает на Telethon или Pyrogram. Папку TData, экспорт истории и другие варианты выдачи описывает справочник форматов Telegram.
Почему две базы SQLite читаются по-разному
SQLite определяет, как хранится и читается база. Библиотека определяет, какие данные она ищет внутри. Даже имя таблицы sessions в обеих базах не означает, что поля этой таблицы совпадают.
Мы сравнили исходный код Telethon 1.45.0 и Pyrogram 2.0.106. В схеме Telethon есть server_address и port. В схеме Pyrogram есть user_id, api_id и test_mode. У обоих хранилищ есть поле auth_key, но одного общего поля недостаточно, чтобы загрузчик одной библиотеки прочитал все данные другой.
На двух пустых базах с этими структурами мы проверили чтение отдельных полей. SQLite вернул no such column: user_id для базы Telethon и no such column: server_address для базы Pyrogram. Это демонстрация несовпадения схем, а не обещание, что клиент всегда выдаст именно такой текст. В реальном запуске он может остановиться раньше, например при проверке версии базы. В проверке не было строк сессий, ключей и подключения к Telegram.
Можно ли передать строку другой библиотеке
Telethon StringSession и строка Pyrogram кодируют данные по разным правилам. В проверенной версии Telethon строка содержит свой признак версии и данные об адресе, порте и авторизации. У Pyrogram есть собственные поля и варианты чтения прежних форматов. Внешнее сходство текста и его длина не подтверждают совместимость.
Смотрите, как строка была получена и какой параметр ожидает принимающая программа. Pyrogram может загрузить свою строку в хранилище в памяти, а Telethon использует собственную реализацию StringSession. Поддержку конкретного форка проверяйте отдельно. Оригинальный репозиторий Pyrogram архивирован, и одно имя импорта не гарантирует, что перед вами именно Pyrogram 2.0.106.
На каком шаге возникла ошибка
| Что видно | Где искать причину | Что проверить |
|---|---|---|
| Файл не найден или клиент предлагает новый вход | Путь или выбранная сессия | Рабочую папку, имя файла и тип аргумента |
| no such column или ошибка версии базы | Локальная схема | Библиотеку, версию и хранилище, создавшие файл |
| database is locked | Доступ к базе | Не открыт ли тот же файл другим процессом |
| Telegram вернул AUTH_KEY_UNREGISTERED | Серверная авторизация | Использует ли клиент ожидаемую сессию и доступен ли штатный вход |
Это ориентиры для диагностики. Например, приглашение войти не доказывает отзыв старого сеанса. Программа могла создать новую локальную базу, потому что не нашла файл по указанному пути. И наоборот, правильная структура базы сама по себе не доказывает, что Telegram ещё принимает её авторизацию.
Как проверить совместимость и сохранить доступ
- Уточните название и версию программы, которая создала файл или строку. Для рабочего проекта проверьте, какая библиотека установлена в окружении, где запускается клиент.
- Сверьте тип входных данных. Если инструкция требует базу SQLite, не подставляйте файл с текстом или архив. Если требует строку конкретной библиотеки, не вставляйте строку другой.
- Сохраните оригинал в закрытом хранилище. Для проверки структуры достаточно названий таблиц и полей в собственной локальной копии, открытой только для чтения. Значения полей для такой проверки не нужны.
- Если целевая программа поддерживает нужную библиотеку и версию, используйте соответствующее хранилище. Если требуется другой клиент и вы можете войти штатно, создайте в нём отдельную авторизацию. Сохраните текущий доступ, пока не подтвердите новый.
Сама сессия может давать доступ к аккаунту. Не вставляйте строку в форму проверки, бота или лог и не пересылайте базу ради диагностики. Рекомендации по хранению есть в руководстве по защите данных. Если новый вход запрашивает подтверждение, сначала определите какой код или пароль просит Telegram.
Что уточнить по комплекту SESSION + JSON
В каталоге Telegram ориентируйтесь на описание конкретного комплекта. Запись SESSION + JSON описывает состав выдачи. Если нужна определённая версия библиотеки или способ импорта, выясните совместимость до покупки. При получении сразу сопоставьте файлы с инструкцией заказа.
Если описание и фактический формат расходятся, сообщите в поддержку AKKUNO номер заказа, название и версию целевой программы, тип ожидаемого хранилища и точный текст ошибки с удалёнными секретами. Для первого обращения достаточно этих сведений. Ключи, строки сессий, коды входа и сами файлы прикладывать не нужно.
Источники и проверка сведений
- Telethon 1.45.0. Session Files, FAQ и исходный код SQLite и StringSession. Проверено 7 ноября 2026 года.
- Pyrogram 2.0.106. Storage Engines и исходный код файлового и строкового хранилищ. Проверено 7 ноября 2026 года.
- Telegram API. Документация ошибок авторизации. Проверено 7 ноября 2026 года.
- AKKUNO. Проверка структуры на двух пустых базах SQLite. 7 ноября 2026 года.

