Top.Mail.Ru
Ответы

Вопрос про python

У меня есть проблема. Ну я написал автокликер на пайтон. Проверил в пайчарме - работает все стабильно. Через pyinstaller скомпилировал .py в .exe
Ну и я запускаю .exe и он сразу закрывается
Кто знает - скажите что делать
Прошу не писать ответы нейросетей, я и без вас спрошу (уже)

Если нужен код, то вот он:
import pyautogui
import time
import keyboard
import threading
import tkinter as tk
from tkinter import messagebox


running = False
click_interval = 1



def start_clicker():
global running, click_interval
try:
click_interval = float(interval_entry.get()) # Получаем интервал из поля ввода
if click_interval <= 0:
raise ValueError("Интервал должен быть положительным числом.")
except ValueError as e:
messagebox.showerror("Ошибка", f"Неверный интервал: {e}")
return

status_label.config(text="Автокликер начнет работу через 5 секунд...")
time.sleep(5) # Задержка в 5 секунд перед началом работы

running = True
clicker_thread = threading.Thread(target=click)
clicker_thread.start()
status_label.config(text="Автокликер запущен. Чтобы остановить кликер, нажмите 'Z'.")

# Запускаем поток для проверки нажатия клавиши 'Z'
threading.Thread(target=check_for_stop_key, daemon=True).start()



def click():
global running
while running:
pyautogui.click ()
time.sleep(click_interval)



def stop_clicker():
global running
running = False
status_label.config(text="Автокликер остановлен.")



def check_for_stop_key():
while running:
if keyboard.is _pressed('z'): #
stop_clicker()
break
time.sleep(0.1)



root = tk.Tk ()
root.title("Автокликер")


interval_label = tk.Label(root, text="Введите интервал между кликами (в секундах):")
interval_label.pack(pady=5)


interval_entry = tk.Entry(root)
interval_entry.insert(0, "1") # Значение по умолчанию
interval_entry.pack(pady=5)


start_button = tk.Button(root, text="Запустить кликер", command=start_clicker)
start_button.pack(pady=10)


stop_button = tk.Button(root, text="Остановить кликер", command=stop_clicker)
stop_button.pack(pady=10)

status_label = tk.Label(root, text="Нажмите 'Запустить кликер' для начала.")
status_label.pack(pady=10)


root.mainloop()

По дате
По рейтингу
Аватар пользователя
Гуру
3мес

Попробуй экзешник с правами администратора запустить