Задать вопрос
  • Как запустить счëтчик по открытию приложения?

    qwertiss
    @qwertiss
    Тупо на чиле, на расслабоне
    Если нужно зацепиться за другой элемент, вбей
    powershell gps | where {$_.MainWindowTitle } | select *


    import asyncio
    
    class timer_executer:
        def __init__(self, appname, timeout, do):
            self.appname = appname
            self.timeout = timeout
            self.do = do
    
        async def get_active_apps(self):
            cmd = 'powershell "gps | where {$_.MainWindowTitle } | select Path'
            cmd_execution_result = await asyncio.create_subprocess_shell(cmd, shell=True, stdout=asyncio.subprocess.PIPE)
            responce_raw, _ = await cmd_execution_result.communicate()
            responce_splited = responce_raw.decode().split("\n")[3:]
            return [responce_line.strip().lower() for responce_line in responce_splited if responce_line.strip()]
    
        async def loop_await(self):
            time_on_active = 0
            while True:
                active_apps = await self.get_active_apps()
    
                if self.appname.lower() in active_apps:
                    time_on_active += 1
                    if time_on_active >= self.timeout:
                        self.do()
                        break
                else:
                    time_on_active = 0
                await asyncio.sleep(1)
    
        async def start(self):
            await self.loop_await()
    
    
    def do_something():
        print("Привет!")
    
    
    async def main():
        timer = timer_executer("c:\\program files\\windowsapps\\microsoft.windowsnotepad_11.2409.9.0_x64__8wekyb3d8bbwe\\notepad\\notepad.exe", 10, do_something)
        await timer.start()
    
    asyncio.run(main())
    Ответ написан
  • Проблема с компиляцией .pyd в Nuitka: "SyntaxError: invalid or missing encoding declaration"?

    qwertiss
    @qwertiss Автор вопроса
    Тупо на чиле, на расслабоне
    Короче, извиняюсь за путаницу. Прочитал недостоверную инфу и повёлся.
    Итог таков, .pyd не компилиться в Nuitka
    Nuitka работает только с .py и в C++/C сама уже собирает (для этого собственно и качается отдельно gcc mingw64).
    Изначально хотел сделать код более нечитабельным и сложно декомпилируемым, потому решил так заморочиться.

    В общем, решил забить и нашёл в докумке аргументы для сборки, которые хотел воплотить с Cython.
    --lto=yes --nofollow-import-to=unittest --nofollow-import-to=pytest --nofollow-import-to=pdb --assume-yes-for-downloads --remove-output --noinclude-pytest-mode=nofollow --noinclude-setuptools-mode=nofollow
    Ответ написан
    Комментировать
  • Как сформировать десктопное приложение на питоне?

    qwertiss
    @qwertiss
    Тупо на чиле, на расслабоне
    Pyinstaller, cx_Freeze, Nuitka, py2exe, Cython.

    ... можно использовать cx_Freeze, но хотелось бы знать, на сколько это сейчас актуально? ...
    Ну, с cx_Freeze у меня опыт неприятный был, не могу точно сказать. Места жрёт конкретно. Посоветовал бы обойтись простым Pyinstaller.
    Ответ написан
    Комментировать
  • Правильно ли связанны мои таблицы в sqlite?

    qwertiss
    @qwertiss
    Тупо на чиле, на расслабоне
    Числа можете хранить как строку или float
    У того и другого ограничение в 1 миллиард вроде или миллион. Ван этого точно должно хватить
    Ответ написан
    Комментировать
  • Почему происходит ошибка в datetime?

    qwertiss
    @qwertiss Автор вопроса
    Тупо на чиле, на расслабоне
    Короче сам исправил.

    Вместо delta.seconds нужно использовать delta.total_seconds()
    Ответ написан
    Комментировать
  • Как сделать чтобы бот сразу на несколько аргументов?

    qwertiss
    @qwertiss
    Тупо на чиле, на расслабоне
    If и условный оператор OR: Ну да, ну да пошли мы на***
    Ответ написан
    Комментировать