HOME FORUMS MEMBERS RECENT POSTS LOG IN  
× Авторизация
Имя пользователя:
Пароль:
Нет аккаунта? Регистрация
Баннер 1   Баннер 2
НОВЫЕ ТОРГОВАЯ НОВОСТИ ЧАТ
loading...
Скрыть
Вернуться   ANTICHAT > ПРОГРАММИРОВАНИЕ > Python
   
 
 
Опции темы Поиск в этой теме Опции просмотра

  #1  
Старый 17.04.2022, 17:25
pomidorq
Участник форума
Регистрация: 17.04.2020
Сообщений: 184
С нами: 3197792

Репутация: 83
По умолчанию

Доброго времени бытия.

Решил сбацать полу-бесполезный стиллер на питоне, который не знаю где может пригодиться.

Суть работы:
1) При запуске программы она добавляет .bat файл в папку C:\Users\NAME\AppData\Roaming\Microsoft\Windows\St art Menu\Programs\Startup,что позволяет ей совершать автозапуск после рестарта ПК.

2) Далее создаётся папка в C:\Users\NAME\AppData\Roamingпод именем Opera, в которую в дальнейшем будут помещаться .zip архивы с файлами.

3) Начинается два бесконечных цикла while, которые проверяют наличие флешки (второй цикл нужен потому что при краше программы первый сразу же восстановит её, и я знаю что это можно было сделать через один цикл, но мне как-то так приятнее.)

*** Алгоритм определения USB до жопы прост, и это можно считать самым большим костылём во всей программе ***


Если размер диска это флешка.

*** Возможные ошибки***


Проводя тесты, заметил, что ошибка бывает только одна, а именно: если при копировании файлов в .zip вытащить флешку, программа упадёт.

4) Каждые 0.5 секунды идёт проверка на наличие флешки через алгоритм, описанный выше.

5) Если USB найден/найдены, создаётся .zip архив в папке Opera, в него помещаются все файлы с флешки/флешок и отправляются на ваше облачное хранилище. После этого архив/архивы удаляются.

Если вам интересно, то без интернета всё будет работать, просто архивы не удаляются, а при каждой перезагрузке системы происходит проверка папки Opera, и попытка загрузить все .zip архивы на диск. Если загрузится - опять же, архивы самоуничтожатся. Если нет - продолжит собирать файлы в папке Opera.

6)Если удалось загрузить файлы на сервер - вы получите ссылку загруженный архив в чате с вашим Telegram-ботом.

7)После успешного копирования данных в папку Opera программа отправляется сладко спать на 1,5 часа. Сделано это с надеждой на то, что человек за это время извлечёт флешку, и архивы с одинаковыми файлами не создадутся повторно. Вы, конечно, можете менять это значение под свои нужды.

Все ошибки по типу FileNotFoundError, FileExistsError и.т.п отлавливаются, и запуск программы должен проходить гладко.

Что вам необходимо?


1)Установить все зависимости:

pip install mega.py

pip install pyTelegramBotAPI

pip install pyinstaller

2)
Создать диск на MEGA, записать логин и пароль в файл load.py




3)Создать Telegram-бота (@botfather), создать с ним диалог (отправить любое сообщение), записать его token и ваш id в файл notifier.py




4) Скомпилировать программу с помощью pyinstaller. (Компилировать исключительно python 3.10 + версии, ибо я проводил тесты по декомпиляции, и все известные декомпиляторы отказались работать с этими версиями.)

Всё!

Не гарантирую работу на Win 8 и ниже.

Можете отправить это кому угодно, и смотреть, что человек хранит на флешке.

Пишите по поводу ошибок в комментарии. По поводу ошибок с компиляцией - не пишите.

PS.


Я активно пытаюсь переписать эту программу на C++, у меня не получается. Если вы спец в плюсах - добро пожаловать в мою личку телеграм @fearlessillness
 
Ответить с цитированием
 



Предыдущая тема Следующая тема

Здесь присутствуют: 1 (пользователей: 0 , гостей: 1)
 


Быстрый переход




ANTICHAT ™ © 2001- Antichat Kft.