Реализация проверки обновлений скрипта на Python Данил Пистолетов, 23 июля 202423 июля 2024 Реализация проверки обновлений скрипта на Python с помощью сравнения версий. Будет описан лишь один из вариантов проверки обновлений, можно реализовать несколько разных способов. После написания кода для проверки обновлений решил поискать альтернативы в интернете, из которых мне попалось лишь решение 2012 года для, видимо, ещё второй версии Python. В остальном же речь касалась pip и обновления библиотек, а не конкретных скриптов. Суть кода очень проста. Для проверки обновлений скрипта на Python загружается актуальная версия скрипта на GitHub, из которой берётся часть с указанной версией и сравнивается с версией используемого скрипта. Если версии отличаются, то программа сообщает об этом и предлагает скачать актуальную версию по ссылке. Если же версия та же, то программа сообщает об актуальности скрипта. ### Указатель в начальной части кода скрипта version = "1.5" ### Сам код проверки версии import wget import os wget.download("https://raw.githubusercontent.com/DanilPistoletov/flask-chat/main/main.py", "git.html") with open('git.html') as f: s = f.read() f.close() os.remove("git.html") if f"version = \"{version}\"" in s: return "Версия чата актуальна" else: return "Чат устарел, загрузите новую версию по адресу github.com/DanilPistoletov/flask-chat/" Утилита загружает файл, сверяет, а после удаляет файл. Конечно, можно сделать обработчик ошибок, чтоб в случае проблем с получением файла утилита не «умирала». version = "1.5" import wget import os try: wget.download("https://raw.githubusercontent.com/DanilPistoletov/flask-chat/main/main.py", "git.html") with open('git.html') as f: s = f.read() f.close() os.remove("git.html") if f"version = \"{version}\"" in s: return "Версия чата актуальна" else: return "Чат устарел, загрузите новую версию по адресу github.com/DanilPistoletov/flask-chat/" except: return "Не удалось проверить обновления" Если хотите реализовать обновление в самой программе, то можете это сделать, используя тот же GitHub. update = str(input("Введите 1 для обновления или 0 для отказа от обновления")) if update == "1": import wget wget.download("https://raw.githubusercontent.com/DanilPistoletov/flask-chat/main/main.py", "newversion.py") elif update == "0": pass Статьи