Программа для сканирования папок и предупреждения об отсутствии файла(ов)? Есть 50 папок, в которые раз в час попадает файл, таких файлов набирается 12 за день. Возможно ли написать программу которая сможет проверять файлы в папках, и если нет свежего файла, отправлять предупреждение ответственному пользователю посредством, например, Telegram.
Да, возможно написать подобную программу. Пример кода на Python:
import os import time import datetime from telegram.ext import Updater, CommandHandler # Функция для проверки наличия файлов в папке def check_files(folder_path): files = os.listdir(folder_path) current_time = datetime.datetime.now() if len(files) == 0: send_telegram_message("В папке {} нет файлов".format(folder_path)) else: latest_file = max(files, key=os.path.getctime) file_time = datetime.datetime.fromtimestamp(os.path.getctime(os.path.join(folder_path, latest_file))) if (current_time - file_time).total_seconds() > 3600: send_telegram_message("В папке {} нет свежего файла".format(folder_path)) # Функция для отправки сообщения в Telegram def send_telegram_message(message): updater = Updater(token='YOUR_TELEGRAM_BOT_TOKEN', use_context=True) dispatcher = updater.dispatcher def start(update, context): context.bot.send_message(chat_id=update.effective_chat.id, text=message) dispatcher.add_handler(CommandHandler('start', start)) updater.start_polling() # Основной цикл программы if __name__ == "__main__": folders_list = ["folder1", "folder2", "folder3", ..., "folder50"] while True: for folder in folders_list: check_files(folder) time.sleep(3600)
Перед использованием этого кода необходимо установить библиотеку python-telegram-bot с помощью команды pip install python-telegram-bot. Также нужно создать Telegram бота и получить его токен для использования в коде.
Этот код будет сканировать указанные папки раз в час, проверять наличие свежего файла, и отправлять сообщение в Telegram в случае отсутствия файла.
Да, возможно написать подобную программу. Пример кода на Python:
import osimport time
import datetime
from telegram.ext import Updater, CommandHandler
# Функция для проверки наличия файлов в папке
def check_files(folder_path):
files = os.listdir(folder_path)
current_time = datetime.datetime.now()
if len(files) == 0:
send_telegram_message("В папке {} нет файлов".format(folder_path))
else:
latest_file = max(files, key=os.path.getctime)
file_time = datetime.datetime.fromtimestamp(os.path.getctime(os.path.join(folder_path, latest_file)))
if (current_time - file_time).total_seconds() > 3600:
send_telegram_message("В папке {} нет свежего файла".format(folder_path))
# Функция для отправки сообщения в Telegram
def send_telegram_message(message):
updater = Updater(token='YOUR_TELEGRAM_BOT_TOKEN', use_context=True)
dispatcher = updater.dispatcher
def start(update, context):
context.bot.send_message(chat_id=update.effective_chat.id, text=message)
dispatcher.add_handler(CommandHandler('start', start))
updater.start_polling()
# Основной цикл программы
if __name__ == "__main__":
folders_list = ["folder1", "folder2", "folder3", ..., "folder50"]
while True:
for folder in folders_list:
check_files(folder)
time.sleep(3600)
Перед использованием этого кода необходимо установить библиотеку python-telegram-bot с помощью команды pip install python-telegram-bot. Также нужно создать Telegram бота и получить его токен для использования в коде.
Этот код будет сканировать указанные папки раз в час, проверять наличие свежего файла, и отправлять сообщение в Telegram в случае отсутствия файла.