Найти тему
Удалёнка

Python: уведомление в Telegram, если на диске "C:\" осталось мало места

Всем привет!

Давно не было Питона, давайте это исправим =)

В этой статье напишем не большую программу которая будет нам отправлять сообщение в Telegram, если на диске осталось мало свободного места, например меньше 10 Гб.

-2

В этом коде:

  1. Получим значение свободного места на диске С:/
  2. Получим значение свободного места на диске F:/
  3. Загрузку Центрального Процессора (ЦП)
  4. Загрузку Оперативной Памяти (ОЗУ или RAM)
  5. Если значение диска С:/ будет меньше 10 Гб, тогда отправим себе сообщение в Telegram

Начнем как обычно с импорта необходимых библиотек, сегодня нам понадобятся:

  • psutil
  • requests

psutil - это библиотека которая собирает метрики или данные вашего компа

requests - это библиотека для запросов, в нашем случае через нее будет отправлять сообщение в себе "телегу"

В этой статье как создать Telegram бота я описывать не буду, не однократно писал у себя на канале.

Начнем писать код

Импортируем библиотеки, присвоим переменной bot наш токен телеграм бота и присвоим переменным названия дисков, в моем случае диски C и F.

-3

Теперь получим значения свободного места на дисках, загрузку ЦП и RAM и присвоим им переменные.

-4

Значение дисков получаются в килобайтах, поэтому мы преобразуем их в ГБ путем деления на (1024*1024*1024)

Выведем полученные значения в консоль, командой Print. При этом оставив значения у дисков только первые 4 символа, дабы не было слишком цифр после запятой, так сказать округлим.

-5

Сейчас уже можно проверить наш код, вот результат:

-6

Теперь самое интересное, сделаем так, если на диске "С" окажется мало места, то программа отправит нам сообщение в Telegram.

У меня сейчас на диске свободно 76 Гб.

-7

Поэтому ради проверки я буду ставить значение например 80 "Гигов", то есть получается, если на диске меньше 80 "Гигов", то будет отправлено сообщение в Телеграм.

Напишем условие, если на диске меньше 80 "Гигов", то будет отправлено сообщение. Присвоим актуальные значения для переменных msg1, msg2, msg3, msg4 и объединим их в msg только каждое значение в сообщении будет с новой строки.

С помощью библиотеки requests выполним запрос на отправку сообщения с нужными нам параметрами, такими как chat_id и text

chat_id - это id чата или аккаунта в телеграм (кому отправлять сообщение)

text - это параметр передаст наше сообщение из переменной msg

-8

В конце просто выведем в консоль, то что ушло в Telegram

Результат

После запуска кода, мне в "личку" пришло сообщение:

-9

Данный код можно добавить в расписание (планировщик), что - бы например раз в день производилась проверка.

Весь код целиком:

-10