Slido Bot
Über das Projekt
Ein Python-Bot zur automatisierten Teilnahme an Slido-Abstimmungen. Der Bot nutzt OCR (Optical Character Recognition), um bestimmte Namen in Abstimmungsoptionen zu erkennen und automatisch auszuwählen.
Technologien
- Python 3.8+ - Programmiersprache
- Selenium WebDriver - Browser-Automatisierung
- EasyOCR - OCR mit hoher Genauigkeit
- Pytesseract - Alternative OCR-Engine
- OpenCV - Bildverarbeitung und -vorverarbeitung
- Pillow - Bildmanipulation
- ChromeDriver - Automatische Treiberverwaltung
Funktionen
- OCR-basierte Texterkennung mit EasyOCR und Pytesseract
- Automatische Browser-Steuerung via Selenium
- Intelligente Suche mit mehreren Fallback-Methoden
- Bildvorverarbeitung zur Verbesserung der OCR-Genauigkeit
- Detailliertes Logging für Debugging
- Koordinaten-basiertes Klicken auf erkannte Textbereiche
Ablauf
- Initialisierung des Chrome WebDrivers mit Anti-Detection
- Navigation zur Slido-Event-URL
- Screenshot der Abstimmungsseite
- Bildvorverarbeitung (Graustufen, Kontrast, Binarisierung)
- OCR-Texterkennung
- Suche nach dem Zielnamen
- Klick auf die entsprechende Option
- Absenden der Abstimmung
Architektur
Der Bot ist als Python-Klasse implementiert mit folgenden Hauptkomponenten:
SlidoBot- Hauptklasse mit Konfigurationsetup_driver()- WebDriver-Initialisierungpreprocess_image()- Bildoptimierung für OCRextract_text_easyocr()/extract_text_pytesseract()- Texterkennungfind_and_click_option()- Intelligente Suche und Interaktionrun_automation()- Kompletter Workflow