I've written the code in Python, but the built-in Windows Defender antivirus detects the .exe file that I compile my code into as a virus. I believe this might be attributed to the use of keyboard.press_and_release, keyboard.write, and os.startfile.
Could you provide guidance on how to bypass this issue?
The code itself:
import pyttsx3
import speech_recognition as sr
import keyboard
import time
import os
import sys
def get_username():
return os.getlogin()
def open_ragemp():
ragemp_path = "D:/RAGEMP/updater.exe"
try:
os.startfile(ragemp_path)
return True, "RAGEMP"
except Exception as e:
return False, str(e)
def open_yandex_music():
try:
keyboard.press_and_release("win+s")
time.sleep(1)
keyboard.write("Яндекс.Музыка")
keyboard.press_and_release("enter")
return True, "Яндекс.Музыка"
except Exception as e:
return False, str(e)
def respond(text):
print("Бот:", text)
engine.say(text)
engine.runAndWait()
def greet(username):
respond(f"Здравствуйте, {username}! Как я могу помочь вам сегодня?")
def close_program():
respond("До свидания! Спасибо за использование помощника.")
sys.exit()
def main():
global engine
engine = pyttsx3.init()
recognizer = sr.Recognizer()
username = get_username()
greet(username)
with sr.Microphone() as source:
respond(f"{username}, как бы вы хотели вводить команды? Голосом или текстом?")
audio = recognizer.listen(source)
try:
user_input = recognizer.recognize_google(audio, language="ru-RU").lower()
print(f"{username} сказал:", user_input)
except sr.UnknownValueError:
user_input = input("Не удалось распознать. Введите 'голос' или 'текст': ")
if "голос" in user_input:
respond("Хорошо, буду ждать команды голосом.")
while True:
with sr.Microphone() as source:
print(f"{username}, скажите ваш запрос:")
audio = recognizer.listen(source)
try:
user_input = recognizer.recognize_google(audio, language="ru-RU").lower()
print(f"{username} сказал:", user_input)
except sr.UnknownValueError:
print(f"{username}, не удалось распознать команду.")
continue
if "кто твой разработчик" in user_input:
respond("Меня разработал tareqq. Его Discord и Telegram выведены в консоль.")
print('Discord: mewqq. \n Telegram: https://t.me/chvaNNoy')
elif "кто тебя разработал" in user_input:
respond("Меня разработал tareqq. Его Discord и Telegram выведены в консоль.")
print('Discord: mewqq. \n Telegram: https://t.me/chvaNNoy')
elif "кто такой джаспер" in user_input:
respond("Джаспер - это нефор, бывший руководитель Fours Project.")
elif "как дела" in user_input:
respond(f"У меня всё отлично, спасибо! Как у вас, {username}?")
elif "новости" in user_input:
respond("Дайте мне немного времени, и я найду для вас актуальные новости.")
elif "анекдот" in user_input:
respond("Почему программисты так не любят пляж? Потому что они боятся волны!")
elif "способности" in user_input:
respond("Я могу отвечать на вопросы, рассказывать шутки, предоставлять информацию и многое другое. Что вас интересует?")
elif "игры" in user_input:
respond("Я, к сожалению, не умею играть в видеоигры, но могу вам помочь найти информацию о них!")
elif "открой рейдж мп" in user_input:
success, app_name = open_ragemp()
if success:
respond(f"Программа {app_name} успешно запущена.")
else:
respond(f"Программа {app_name} не запустилась. Причина: {app_name}")
elif "открой яндекс музыку" in user_input:
success, app_name = open_yandex_music()
if success:
respond(f"Программа {app_name} успешно запущена.")
else:
respond(f"Программа {app_name} не запустилась. Причина: {app_name}")
elif "пока" in user_input:
close_program()
else:
respond("Извините, я не понял ваш запрос. Пожалуйста, переформулируйте его.")
elif "текст" in user_input:
respond("Хорошо, буду ждать команды в текстовом виде.")
while True:
user_input = input("Введите команду: ")
if "кто твой разработчик" in user_input:
respond("Меня разработал tareqq. Его Discord и Telegram выведены в консоль.")
print('Discord: mewqq. \n Telegram: https://t.me/chvaNNoy')
elif "кто тебя разработал" in user_input:
respond("Меня разработал tareqq. Его Discord и Telegram выведены в консоль.")
print('Discord: mewqq. \n Telegram: https://t.me/chvaNNoy')
elif "кто такой джаспер" in user_input:
respond("Джаспер - это нефор, бывший руководитель Fours Project.")
elif "выключи компьютер" in user_input:
os.system("shutdown /s /t 1") # Выключение через 1 секунду
elif "как дела" in user_input:
respond(f"У меня всё отлично, спасибо! Как у вас, {username}?")
elif "новости" in user_input:
respond("Дайте мне немного времени, и я найду для вас актуальные новости.")
elif "анекдот" in user_input:
respond("Почему программисты так не любят пляж? Потому что они боятся волны!")
elif "способности" in user_input:
respond("Я могу отвечать на вопросы, рассказывать шутки, предоставлять информацию и многое другое. Что вас интересует?")
elif "игры" in user_input:
respond("Я, к сожалению, не умею играть в видеоигры, но могу вам помочь найти информацию о них!")
elif "открой рейдж мп" in user_input:
success, app_name = open_ragemp()
if success:
respond(f"Программа {app_name} успешно запущена.")
else:
respond(f"Программа {app_name} не запустилась. Причина: {app_name}")
elif "открой яндекс музыку" in user_input:
success, app_name = open_yandex_music()
if success:
respond(f"Программа {app_name} успешно запущена.")
else:
respond(f"Программа {app_name} не запустилась. Причина: {app_name}")
elif "пока" in user_input:
close_program()
else:
respond("Извините, я не понял ваш запрос. Пожалуйста, переформулируйте его.")
else:
respond("Извините, не удалось понять ваш выбор.")
engine.runAndWait()
while True:
user_input = input("\nВведите команду: ")
if user_input.lower() == "голос":
# Ввод команд голосом
pass
elif user_input.lower() == "текст":
# Ввод команд текстом
pass
elif user_input.lower() == "закрыть":
close_program()
else:
print("\nНеверная команда. Пожалуйста, выберите действие из списка.")
if __name__ == "__main__":
main()
The .exe file that I'm compiling is detected as a virus by the Windows Defender antivirus.