YouTube Abspann Automator

AutoIt GUI-Automation

AutoIt GUI Automation YouTube

🚀 Interesse an diesem Projekt? Sprechen Sie mich an!

📞 02406 803 7603 ✉️ info@computerkumpel.de

💰 Business Value

Automatisiert massenhaft YouTube-Abspänne: CSV-Datei mit Video-IDs einlesen, per Mausklick-Simulation alle Endscreen-Einstellungen durchführen — Stunden Arbeit in Minuten.

⏱️
Massive Zeitersparnis
Statt jedes Video einzeln zu bearbeiten, verarbeitet das Tool CSV-Listen mit Hunderten Videos in Batch-Läufen.
💶
Kostensenkung
Keine Abo-Kosten, kein API-Limit — reine Windows-Automation mit kostenlosem AutoIt-Framework.
🎯
Fehlerfrei
Jeder Klick konsistent und an exakt derselben Position — keine Flüchtigkeitsfehler wie bei manueller Bearbeitung.
ESC-Notaus
HotKey-basierter Notausstieg — jederzeit abbrechbar ohne Datenverlust oder inkonsistente Zustände.

⚙️ Funktionsweise

Die Kern-Mechanik des Projekts im Überblick.

📄
1. CSV laden
CSV-Datei mit YouTube-Video-IDs auswählen — eine ID pro Zeile, einfaches Format.
⚙️
2. Klicks konfigurieren
Per GUI die 5 Mausklick-Positionen und Pause-Dauern festlegen — Standard oder benutzerdefiniert.
🤖
3. Batch ausführen
Firefox/Chrome automatisch öffnen, YouTube Studio laden, Klick-Sequenz pro Video ausführen.
4. Abschluss
Nach letztem Video: Meldung „Vorgang abgeschlossen" — alle Abspänne gesetzt.

💻 Code-Einblicke

Ein Blick unter die Haube — so ist das Projekt technisch umgesetzt:

GUI-Erstellung mit Mausklick-Konfiguration

; GUI erstellen
$gui = GUICreate("YouTube Video Updater", 700, 700)

; Schaltflächen und Steuerelemente
$csvButton = GUICtrlCreateButton("CSV-Datei auswählen", 50, 20, 150, 30)
$radioStandard = GUICtrlCreateRadio("Standardpositionen verwenden", 50, 70, 200, 20)
$radioCustom = GUICtrlCreateRadio("Benutzerdefinierte Positionen", 50, 100, 200, 20)

Global $inputFields[5][3] ; 3 Felder für X, Y und Pausendauer
For $i = 0 To 4
    Local $labelText = ""
    Switch $i
        Case 0
            $labelText = "Position für 'Abspann hinzufügen' (X, Y):"
        Case 1
            $labelText = "Position für 'Aus Video importieren' (X, Y):"
        Case 2
            $labelText = "Position für 'Video auswählen' (X, Y):"
        Case 3
            $labelText = "Position für 'Speichern' (X, Y):"
        Case 4
            $labelText = "Position für 'Video speichern' (X, Y):"
    EndSwitch

    GUICtrlCreateLabel($labelText, 50, 150 + ($i * 80), 200, 20)
    $inputFields[$i][0] = GUICtrlCreateInput($g_aStandardPositions[$i][0], 250, 150 + ($i * 80), 50, 20)
    $inputFields[$i][1] = GUICtrlCreateInput($g_aStandardPositions[$i][1], 310, 150 + ($i * 80), 50, 20)
Next

CSV-Batch-Verarbeitung mit Browser-Automation

Func ProcessVideos($sCsvPath)
    Local $hFile = FileOpen($sCsvPath, $FO_READ)
    If $hFile = -1 Then
        MsgBox($MB_SYSTEMMODAL, "Fehler", "Kann die CSV-Datei nicht öffnen.")
        Return
    EndIf

    ; URLs aus der CSV-Datei lesen und Aktionen durchführen
    While 1
        Local $sLine = FileReadLine($hFile)
        If @error Then ExitLoop

        ; Starten von Firefox
        Run("C:\Program Files\Mozilla Firefox\firefox.exe")
        WinWait("[CLASS:MozillaWindowClass]")

        $aLineData = StringSplit($sLine, ",")
        If UBound($aLineData) >= 1 Then
            $sVideoID = $aLineData[1]
            $sURL = "https://studio.youtube.com/video/" & $sVideoID & "/edit"

            ClipPut($sURL)
            WinActivate("[CLASS:MozillaWindowClass]")
            Send("^l") ; Adressleiste fokussieren
            Send("^v{ENTER}")
            Sleep(6000)

            ; Klicks durchführen
            Local $aPositions = GUICtrlRead($radioStandard) = $GUI_CHECKED ? $g_aStandardPositions : $g_aCustomPositions
            For $i = 0 To UBound($aPositions) - 1
                MouseClick("left", $aPositions[$i][0], $aPositions[$i][1])
                Sleep($g_iPauseDuration)
            Next
        EndIf
    WEnd
    FileClose($hFile)
EndFunc

ESC-Hotkey für Notausstieg

HotKeySet("{ESC}", "TerminateScript")

Func TerminateScript()
    Exit
EndFunc

⚡ In wenigen Tagen zum MVP — mit Vibecoding.

📞 02406 803 7603 ✉️ info@computerkumpel.de

🚀 Gebaut mit Vibecoding

👴 Klassische Entwicklung
  • 📋 2–3 Wochen Requirements
  • 🏗️ 2–3 Wochen Architektur
  • 💻 3–4 Wochen Implementierung
  • 🧪 1–2 Wochen Testing
  • ⏱️ Gesamt: 8–13 Wochen
🤖 Vibecoding-Ansatz
  • 🗣️ 0.5 Tage Prompt-Engineering
  • ⚡ 2–3 Tage iterative Generierung
  • 🔧 1–2 Tage Refinement
  • ✅ 1 Tag Testing & Deployment
  • ⏱️ Gesamt: 5–7 Tage

🎯 Strategische Erkenntnisse

Jedes Projekt liefert wertvolle Einsichten — technisch wie strategisch. Diese Learnings fließen direkt in Folgeprojekte ein.

🔒
Open Source = Unabhängigkeit
Offene Technologien bedeuten keine Vendor-Lock-ins, volle Kontrolle über den Code und langfristige Wartbarkeit ohne Lizenzkosten.
📈
Bottom-up statt Big Bang
Kleine, funktionierende Prototypen schlagen monatelange Planungsphasen. Erst beweisen, dann ausrollen — iterativ und risikominimiert.
🔄
Wiederverwendbarkeit
Modular aufgebauter Code beschleunigt Folgeprojekte massiv. Einmal gelöste Probleme werden zur Template-Bibliothek für zukünftige Herausforderungen.
🤖
KI als Beschleuniger
Vibecoding mit Coding-Agenten komprimiert Entwicklungszyklen von Wochen auf Tage — ohne Qualitätseinbußen durch iterative Prompt-Verfeinerung.

Bereit für Ihr nächstes Projekt?

Lassen Sie uns gemeinsam herausfinden, wo Automatisierung und KI den größten Hebel für Ihr Business haben — unverbindlich und pragmatisch.

🔍
Analyse & Konzept
Wir analysieren Ihre Anforderungen und skizzieren eine passgenaue Lösung — technisch fundiert und wirtschaftlich sinnvoll.
🧪
Proof-of-Concept
Ein funktionierender Prototyp innerhalb weniger Tage — Sie sehen das Ergebnis, bevor Sie sich committen.
🤝
Projektbegleitung
Von der Entwicklung über das Deployment bis zum Go-Live — ich begleite Sie durch den gesamten Prozess.
📞 02406 803 7603 ✉️ info@computerkumpel.de