Утилита командной строки для проверки баланса, остатков трафика и SMS оператора МТС (Россия). Использует API личного кабинета МТС.
Эта утилита явялется следствием вайбкодинга, создано Gemini 2.5 Flash при 0 внесении правок в код. Автор не несёт какой-либо отсветсвенности ни за его работоспособность, ни за его безопасность
Код был минимально проверен на его корректную работоспособоность, из-за чего было решено его запакетировать и публиковать. Можно только сказать что этот Readme отредактирован вручную. 🐈
Вы можете установить пакет с помощью pip:
pip install mts-balance-checker
Для работы утилите требуются ваш номер телефона и строка аутентификационных cookie из браузера. (Например, это можно сделать этим расширением просто скопировав куки сайта lk.mts.ru)
ПРИМЕР 1: Человекочитаемый вывод
mts-check --cookies "JSESSIONID=...; lk_mts_sid=..." --phone 79130598041 --netscape --human --hide-phone
===============================
ДАННЫЕ ПО СЧЕТУ МТС (СКРЫТО)
===============================
Баланс (руб.) : 171.51 руб.
Обновление пакета: 26.10.2025
Интернет : 26.05 ГБ (из 30.0 ГБ)
Минуты : 405 мин (из 600 мин)
SMS : 600 шт (из 600 шт)
===============================
ПРИМЕР 2: Машиночитаемый вывод (JSON)
mts-check --phone 79XXXXXXXXX --cookies-file ~/mts_cookies.txt --output json
{
"balance_rub": 171.51,
"deadline_date": "26.10.2025",
"remaining_internet_mb": 26674.05,
"total_internet_gb": 30.0,
"remaining_minutes_min": 405,
"total_minutes_min": 600,
"remaining_sms_count": 600,
"total_sms_count": 600
}
| Флаг | Описание |
|---|---|
--phone |
Ваш номер телефона в формате 79XXXXXXXXX. |
--cookies |
Полная строка cookie (альтернатива: --cookies-file). |
--cookies-file |
Путь к файлу с cookie. |
--human |
Человекочитаемый вывод (таблица). |
--output parse |
Машиночитаемый вывод key=value (по умолчанию). |
--output json |
Машиночитаемый вывод в формате JSON. |
--lang {ru, en} |
Язык вывода. |
--verbose |
Вывод логов процесса получения данных в stderr. |
--hide-phone |
Спрятать номер телефона в выводе. |
import json, sys
from mts_balance_checker import MTSClient, LOCALES
PHONE_NUMBER = "79110001122"
COOKIE_STRING = """JSESSIONID=...; lk_mts_sid=..."""
client = MTSClient(
phone_number=PHONE_NUMBER,
cookie_string=COOKIE_STRING,
locale_func=lambda key: LOCALES['ru'][key]
)
balance_data = client.get_ruble_balance(lambda msg: None)
traffic_data = client.get_traffic_data(lambda msg: None)
full_data = {}
full_data.update(balance_data)
full_data.update(traffic_data)
print(json.dumps(full_data, indent=2, ensure_ascii=False)){
"ruble_balance_raw": 171.51,
"deadline_date": "26.10.2025",
"remaining_internet_kb": 27240978.0,
"total_internet_kb": 31457280.0,
"remaining_minutes_sec": 24300.0,
"total_minutes_sec": 36000.0,
"remaining_sms_count": 600.0,
"total_sms_count": 600.0
}
Проект распространяется под лицензией MIT. Подробнее см. в файле LICENSE.