Download Latest Version Sourcecode.zip (12.7 kB)
Email in envelope

Get an email when there's a new version of Eskalations-Radar

Home
Name Modified Size InfoDownloads / Week
readme.txt < 8 hours ago 4.0 kB
eskalation_gui(exe).zip < 10 hours ago 11.3 MB
Sourcecode.zip < 10 hours ago 12.7 kB
Totals: 3 Items   11.3 MB 0
===============================================================================
PROJEKT: Multiperspektivisches Eskalations-Radar (Linguistisches Auswertungstool)
===============================================================================

1. BESCHREIBUNG
-------------------------------------------------------------------------------
Diese Desktop-Anwendung dient der Früherkennung und linguistischen Risiko-
bewertung von Konfliktpotenzialen bei politischen Versammlungen. 

Das Tool führt ein asynchrones Scraping politischer Web-Feeds durch und gleicht 
deren aktuelle Trigger live mit frei eingegebenen Texten oder historisch belegten 
Real-Szenarien ab. Ein gewichtetes mathematisches Modell berechnet daraus eine 
prozentuale Eskalationswahrscheinlichkeit, prognostiziert polizeiliche Taktiken 
und bewertet das Kräfteverhältnis.


2. ARCHITEKTUR & DATEISTRUKTUR
-------------------------------------------------------------------------------
Das Projekt ist modular aufgebaut und besteht aus den folgenden drei Dateien:

* `eskalation_config.py` (Konfiguration / Datenbasis)
  - Speichert statische URL-Listen (Links, Rechts, Behörden) und Signalwörter.

* `eskalation_core.py` (Modell / Logik)
  - FeedScraper: Extrahiert und filtert Web-Trigger über reguläre Ausdrücke.
  - EskalationAnalysator: Berechnet Risiko-Scores, Bonus-Punkte und Taktik-Muster.

* `eskalation_gui.py` (Anwendungskern / UI-Controller)
  - Enthält die Klasse EskalationApp für den Datenfluss und die Event-Listener.
  - Importiert GuiLayout, bindet die GUI an Worker-Threads und startet die App.
  - Setzt ein "Cyberpunk Dark Theme" farblich um.


3. SYSTEMVORAUSSETZUNGEN & KOMPATIBILITÄT
-------------------------------------------------------------------------------
* Betriebssysteme: Vollständig kompatibel mit Linux und Windows.
* Laufzeitumgebung: Python 3.x oder höher.
* Das GUI-Framework (Tkinter) ist in der Python-Standardbibliothek enthalten.

Installation der benötigten RSS-Bibliothek:
$ pip install feedparser


4. STARTEN DER ANWENDUNG
-------------------------------------------------------------------------------
Das Programm wird direkt über die GUI-Datei gestartet. Öffne das Terminal oder 
die Eingabeaufforderung im Projektverzeichnis und führe folgenden Befehl aus:

Unter Linux / Windows (Terminal):
$ python eskalation_gui.py


5. FUNKTIONSMERKMALE & BEDIENUNG
-------------------------------------------------------------------------------
* Asynchrones Live-Scraping:
  Beim Start und per Klick auf 'Live-Feeds synchronisieren' lädt das Programm 
  Web-Feeds im Hintergrund (Threading). Die GUI bleibt durchgehend bedienbar.

* Szenarien-Datenbank (Historische Real-Daten):
  Das Tool verfügt über eine Dropdown-Auswahl realer Großproteste (2020–2026), 
  inklusive verifizierter Kräftezahlen (Polizei- und Teilnehmerstärken) für:
  - Essen 2024 (AfD-Bundesparteitag, 4.000 Polizisten / 50.000 Demonstranten)
  - Gießen 2025 (AfD-Jugend-Gründung, 6.000 Polizisten / 25.000 Demonstranten)
  - Erfurt 2026 (AfD-Parteitag, 5.000 Polizisten / 20.000 Demonstranten)

* Integriertes Logging:
  Alle Aktionen, Netzwerkergebnisse, geladenen Szenarien und Validierungsfehler 
  werden plattformunabhängig in der Datei `eskalation_analyse.log` protokolliert.

* Risikostufen-Ampel:
  - < 25%:  GRÜN  - Niedriges Eskalationspotenzial (Legalprotest)
  - < 55%:  ORANGE - Moderates Eskalationspotenzial (Blockaden / Sachschäden)
  - < 75%:  ROT    - Hohes Eskalationspotenzial (Massenblockaden / Durchbrüche)
  - >= 75%: PINK   - Akute Eskalationsgefahr (Sabotage / Brandanschläge)


6. FEHLERBEHANDLUNG & VALIDIERUNG
-------------------------------------------------------------------------------
* Netzwerkfehler: Schlägt das Scraping fehl, schaltet das Tool automatisch 
  auf einen lokalen Offline-Fallback um und loggt den Fehler.
* Eingabe-Validierung: Die Felder für Kräftezahlen akzeptieren nur positive 
  Ganzzahlen. Ungültige Werte werden über Tkinter-Dialoge abgefangen.

Source: readme.txt, updated 2026-07-04