Всем привет!
Давно не было Питона, давайте это исправим =)
В этой статье напишем не большую программу которая будет нам отправлять сообщение в Telegram, если на диске осталось мало свободного места, например меньше 10 Гб.
В этом коде:
- Получим значение свободного места на диске С:/
- Получим значение свободного места на диске F:/
- Загрузку Центрального Процессора (ЦП)
- Загрузку Оперативной Памяти (ОЗУ или RAM)
- Если значение диска С:/ будет меньше 10 Гб, тогда отправим себе сообщение в Telegram
Начнем как обычно с импорта необходимых библиотек, сегодня нам понадобятся:
- psutil
- requests
psutil - это библиотека которая собирает метрики или данные вашего компа
requests - это библиотека для запросов, в нашем случае через нее будет отправлять сообщение в себе "телегу"
В этой статье как создать Telegram бота я описывать не буду, не однократно писал у себя на канале.
Начнем писать код
Импортируем библиотеки, присвоим переменной bot наш токен телеграм бота и присвоим переменным названия дисков, в моем случае диски C и F.
Теперь получим значения свободного места на дисках, загрузку ЦП и RAM и присвоим им переменные.
Значение дисков получаются в килобайтах, поэтому мы преобразуем их в ГБ путем деления на (1024*1024*1024)
Выведем полученные значения в консоль, командой Print. При этом оставив значения у дисков только первые 4 символа, дабы не было слишком цифр после запятой, так сказать округлим.
Сейчас уже можно проверить наш код, вот результат:
Теперь самое интересное, сделаем так, если на диске "С" окажется мало места, то программа отправит нам сообщение в Telegram.
У меня сейчас на диске свободно 76 Гб.
Поэтому ради проверки я буду ставить значение например 80 "Гигов", то есть получается, если на диске меньше 80 "Гигов", то будет отправлено сообщение в Телеграм.
Напишем условие, если на диске меньше 80 "Гигов", то будет отправлено сообщение. Присвоим актуальные значения для переменных msg1, msg2, msg3, msg4 и объединим их в msg только каждое значение в сообщении будет с новой строки.
С помощью библиотеки requests выполним запрос на отправку сообщения с нужными нам параметрами, такими как chat_id и text
chat_id - это id чата или аккаунта в телеграм (кому отправлять сообщение)
text - это параметр передаст наше сообщение из переменной msg
В конце просто выведем в консоль, то что ушло в Telegram
Результат
После запуска кода, мне в "личку" пришло сообщение:
Данный код можно добавить в расписание (планировщик), что - бы например раз в день производилась проверка.