|
import subprocess |
|
import sys |
|
import os |
|
|
|
|
|
def install(package): |
|
try: |
|
subprocess.check_call([sys.executable, "-m", "pip", "install", package]) |
|
print(f"{package} erfolgreich installiert.") |
|
except Exception as e: |
|
print(f"Fehler bei der Installation von {package}: {e}") |
|
|
|
|
|
required_packages = ['requests', 'mammoth', 'pip'] |
|
|
|
|
|
for package in required_packages: |
|
try: |
|
__import__(package) |
|
except ImportError: |
|
print(f"Bibliothek {package} nicht gefunden. Versuche, sie zu installieren...") |
|
install(package) |
|
|
|
|
|
def read_instructions(word_file): |
|
try: |
|
import mammoth |
|
with open(word_file, "rb") as docx_file: |
|
result = mammoth.extract_raw_text(docx_file) |
|
text = result.value |
|
instructions = parse_instructions(text) |
|
return instructions |
|
except FileNotFoundError: |
|
print(f"Die Datei {word_file} wurde nicht gefunden. Stelle sicher, dass sie im richtigen Verzeichnis ist.") |
|
return None |
|
except Exception as e: |
|
print(f"Fehler beim Auslesen der Datei: {e}") |
|
return None |
|
|
|
|
|
def parse_instructions(text): |
|
try: |
|
instructions = {} |
|
current_section = None |
|
lines = text.split("\n") |
|
for line in lines: |
|
if line.startswith("Finanzen"): |
|
current_section = "Finanzen" |
|
instructions[current_section] = [] |
|
elif line.startswith("Social Media"): |
|
current_section = "Social Media" |
|
instructions[current_section] = [] |
|
elif line.startswith("App-Integration"): |
|
current_section = "App-Integration" |
|
instructions[current_section] = [] |
|
elif line.startswith("Ernährung"): |
|
current_section = "Ernährung und Wohlbefinden" |
|
instructions[current_section] = [] |
|
elif current_section and line.strip(): |
|
instructions[current_section].append(line.strip()) |
|
return instructions |
|
except Exception as e: |
|
print(f"Fehler beim Verarbeiten der Anweisungen: {e}") |
|
return {} |
|
|
|
|
|
def execute_instructions(instructions): |
|
try: |
|
if 'Finanzen' in instructions: |
|
print("Finanzanalyse durchführen...") |
|
analyze_finances() |
|
|
|
if 'Social Media' in instructions: |
|
print("Social Media Beiträge planen...") |
|
plan_social_media_posts() |
|
|
|
if 'App-Integration' in instructions: |
|
print("Apps analysieren und integrieren...") |
|
analyze_and_integrate_apps() |
|
|
|
if 'Ernährung und Wohlbefinden' in instructions: |
|
print("Ernährungspläne erstellen...") |
|
create_nutrition_plans() |
|
|
|
except Exception as e: |
|
print(f"Fehler bei der Ausführung der Anweisungen: {e}") |
|
|
|
|
|
def analyze_finances(): |
|
try: |
|
print("Starte die Finanzanalyse...") |
|
|
|
except Exception as e: |
|
print(f"Fehler bei der Finanzanalyse: {e}") |
|
|
|
def plan_social_media_posts(): |
|
try: |
|
print("Social Media Beiträge werden geplant...") |
|
|
|
except Exception as e: |
|
print(f"Fehler beim Planen der Social Media Beiträge: {e}") |
|
|
|
def analyze_and_integrate_apps(): |
|
try: |
|
print("Apps werden analysiert und in die Multifunktions-App integriert...") |
|
|
|
except Exception as e: |
|
print(f"Fehler beim Analysieren und Integrieren von Apps: {e}") |
|
|
|
def create_nutrition_plans(): |
|
try: |
|
print("Erstelle Ernährungspläne basierend auf deinem Budget...") |
|
|
|
except Exception as e: |
|
print(f"Fehler beim Erstellen der Ernährungspläne: {e}") |
|
|
|
|
|
def run_ki_agent(): |
|
try: |
|
|
|
save_path = os.path.join(os.getcwd(), 'KI_Agent_Steuerung.docx') |
|
|
|
if os.path.exists(save_path): |
|
print(f"Datei erfolgreich vorhanden im Verzeichnis: {save_path}") |
|
instructions = read_instructions(save_path) |
|
if instructions: |
|
execute_instructions(instructions) |
|
else: |
|
print(f"Datei wurde nicht gefunden. Bitte stelle sicher, dass die Datei im Verzeichnis {save_path} liegt.") |
|
except Exception as e: |
|
print(f"Fehler im Hauptskript: {e}") |
|
|
|
|
|
run_ki_agent() |