← Alle Projekte

YouTube Kommentar Manager

Python / PHP / MySQL

Beschreibung

Automatisiertes Kommentar-Management-System für YouTube. Das Projekt besteht aus einem Python-Backend zum Abrufen und Speichern von YouTube-Kommentaren in einer MySQL-Datenbank, sowie einer PHP-Web-GUI zur Bearbeitung und Verwaltung dieser Kommentare. Inklusive OpenAI-Integration zur automatischen Generierung von Antwortvorschlägen.

Technologien

🐍 Python 3
🐘 PHP 7+
🗄️ MySQL
📺 YouTube Data API v3
🤖 OpenAI API
jQuery / AJAX

Funktionen

Architektur

verkooyen/
├── comment.py           # YouTube API Kommentar-Abruf (Python)
├── config.py            # Konfiguration (API-Keys, DB-Credentials)
├── googleAPI.json       # Google OAuth Credentials
├── token.json           # YouTube API Token
└── webgui/              # Web-Interface (PHP)
    ├── index.php        # Hauptseite mit Tabellenansicht
    ├── config.php       # DB-Verbindung & OpenAI Key
    ├── save.php         # AJAX: Kommentar speichern
    ├── delete.php       # AJAX: Kommentar löschen
    ├── done.php         # AJAX: Als erledigt markieren
    └── generate_response.php  # AJAX: OpenAI Antwort generieren

Code-Highlights

YouTube API Integration (Python)

# YouTube API Client aufbauen
youtube = build('youtube', 'v3', credentials=creds)

# Paginierte Abfrage aller Kommentare
page_token = None
while True:
    request = youtube.commentThreads().list(
        part="snippet",
        allThreadsRelatedToChannelId=channelID,
        textFormat="plainText",
        pageToken=page_token
    )
    response = request.execute()
    # Verarbeitung & Speicherung in MySQL...

OpenAI Antwort-Generierung (PHP)

// 3 Antwort-Varianten per OpenAI API generieren
$data = [
    "prompt" => "generate an german answer to this youtube comment: " . $original,
    "temperature" => 0.1,
    "max_tokens" => 1000,
    "n" => 3  // 3 Varianten
];

$ch = curl_init('https://api.openai.com/v1/engines/davinci/completions');
// ... cURL Request mit Bearer Token

AJAX-basierte Updates (jQuery)

// Speichern ohne Reload
$("button.save").click(function() {
    const row = $(this).closest("tr");
    // Daten extrahieren...
    $.post("save.php", { id, ytID, original, ... }, function(data) {
        alert(data.message);
    });
});

Datenbank-Schema

Tabelle: coments
├── ID (PK, Auto-Increment)
├── ytID (YouTube Comment ID)
├── original (Original-Kommentar)
├── versionA (KI-Antwort Variante 1)
├── versionB (KI-Antwort Variante 2)
├── versionC (KI-Antwort Variante 3)
└── custom (Manuell bearbeitete Antwort)

Deployment

Das System läuft auf einem Plesk-Server unter computerkumpel.de. Der Python-Cronjob für den Kommentar-Abruf wird regelmäßig ausgeführt, während die PHP-WebGUI über Apache/NGINX erreichbar ist.

Projektstatus

✅ Produktiv im Einsatz

Verwendet für den @GeburtstagsKanal YouTube-Channel.