Files
AccountForger-neuerUpload/config/platform_config.py
Claude Project Manager 04585e95b6 Initial commit
2025-08-01 23:50:28 +02:00

210 Zeilen
8.4 KiB
Python

"""
Platform-spezifische Konfiguration
"""
from typing import Dict, List, Any
PLATFORM_CONFIG: Dict[str, Dict[str, Any]] = {
'instagram': {
'mobile_probability': 0.7,
'min_age': 13,
'max_age': 99,
'supported_registration': ['email'],
'default_email_domain': 'z5m7q9dk3ah2v1plx6ju.com',
'requires_phone_verification': False,
'session_expiry_days': 30,
'rate_limits': {
'registrations_per_hour': 3,
'registrations_per_day': 10,
'cooldown_minutes': 15
},
'error_patterns': {
'already taken': 'Dieser Benutzername ist bereits vergeben',
'weak password': 'Das Passwort ist zu schwach',
'rate limit': 'Zu viele Versuche - bitte später erneut versuchen',
'network error': 'Netzwerkfehler - bitte Internetverbindung prüfen',
'captcha': 'Captcha-Verifizierung erforderlich',
'verification': 'Es gab ein Problem mit der Verifizierung des Accounts',
'proxy': 'Problem mit der Proxy-Verbindung',
'timeout': 'Zeitüberschreitung bei der Verbindung',
'username': 'Der gewählte Benutzername ist bereits vergeben oder nicht zulässig',
'password': 'Das Passwort erfüllt nicht die Anforderungen von Instagram',
'email': 'Die E-Mail-Adresse konnte nicht verwendet werden',
'phone': 'Die Telefonnummer konnte nicht für die Registrierung verwendet werden'
},
'ui_config': {
'primary_color': '#E4405F',
'secondary_color': '#C13584',
'icon': 'instagram.svg'
}
},
'tiktok': {
'mobile_probability': 0.9,
'min_age': 13,
'max_age': 99,
'supported_registration': ['email', 'phone'],
'default_email_domain': 'z5m7q9dk3ah2v1plx6ju.com',
'requires_phone_verification': True,
'session_expiry_days': 14,
'rate_limits': {
'registrations_per_hour': 2,
'registrations_per_day': 5,
'cooldown_minutes': 30
},
'error_patterns': {
'captcha': 'TikTok hat einen Captcha-Test angefordert',
'verification': 'Es gab ein Problem mit der Verifizierung des Accounts',
'proxy': 'Problem mit der Proxy-Verbindung',
'timeout': 'Zeitüberschreitung bei der Verbindung',
'username': 'Der gewählte Benutzername ist bereits vergeben oder nicht zulässig',
'password': 'Das Passwort erfüllt nicht die Anforderungen von TikTok',
'email': 'Die E-Mail-Adresse konnte nicht verwendet werden',
'phone': 'Die Telefonnummer konnte nicht für die Registrierung verwendet werden',
'phone number required': 'Telefonnummer erforderlich',
'invalid code': 'Ungültiger Verifizierungscode',
'age': 'Das eingegebene Alter erfüllt nicht die Anforderungen von TikTok',
'too_many_attempts': 'Zu viele Registrierungsversuche',
'rate limit': 'Zu viele Versuche - bitte später erneut versuchen',
'already taken': 'Der gewählte Benutzername ist bereits vergeben',
'weak password': 'Das Passwort ist zu schwach',
'network error': 'Netzwerkfehler - bitte Internetverbindung prüfen'
},
'ui_config': {
'primary_color': '#000000',
'secondary_color': '#FE2C55',
'icon': 'tiktok.svg'
}
},
'facebook': {
'mobile_probability': 0.5,
'min_age': 13,
'max_age': 99,
'supported_registration': ['email', 'phone'],
'default_email_domain': 'z5m7q9dk3ah2v1plx6ju.com',
'requires_phone_verification': False,
'session_expiry_days': 90,
'rate_limits': {
'registrations_per_hour': 2,
'registrations_per_day': 8,
'cooldown_minutes': 20
},
'error_patterns': {
# Facebook-spezifische Fehler hier hinzufügen
},
'ui_config': {
'primary_color': '#1877F2',
'secondary_color': '#42B883',
'icon': 'facebook.svg'
}
},
'ok': {
'mobile_probability': 0.3,
'min_age': 16,
'max_age': 99,
'supported_registration': ['email', 'phone'],
'default_email_domain': 'z5m7q9dk3ah2v1plx6ju.com',
'requires_phone_verification': True,
'session_expiry_days': 60,
'rate_limits': {
'registrations_per_hour': 2,
'registrations_per_day': 6,
'cooldown_minutes': 25
},
'error_patterns': {
'already taken': 'Dieser Benutzername ist bereits vergeben',
'weak password': 'Das Passwort ist zu schwach',
'rate limit': 'Zu viele Versuche - bitte später erneut versuchen',
'network error': 'Netzwerkfehler - bitte Internetverbindung prüfen',
'captcha': 'Captcha-Verifizierung erforderlich',
'verification': 'Es gab ein Problem mit der Verifizierung des Accounts',
'proxy': 'Problem mit der Proxy-Verbindung',
'timeout': 'Zeitüberschreitung bei der Verbindung',
'phone required': 'Telefonnummer erforderlich für OK.ru',
'invalid phone': 'Ungültige Telefonnummer',
'blocked region': 'Registrierung aus dieser Region nicht möglich'
},
'ui_config': {
'primary_color': '#FF6600',
'secondary_color': '#FF8533',
'icon': 'ok.svg'
}
},
'gmail': {
'mobile_probability': 0.4,
'min_age': 13,
'max_age': 99,
'supported_registration': ['phone'],
'default_email_domain': 'gmail.com',
'requires_phone_verification': True,
'session_expiry_days': 365,
'rate_limits': {
'registrations_per_hour': 1,
'registrations_per_day': 3,
'cooldown_minutes': 60
},
'error_patterns': {
'phone required': 'Telefonnummer erforderlich für Gmail',
'phone already used': 'Diese Telefonnummer wurde bereits verwendet',
'invalid phone': 'Ungültige Telefonnummer',
'verification failed': 'SMS-Verifizierung fehlgeschlagen',
'account suspended': 'Account-Erstellung gesperrt',
'rate limit': 'Zu viele Versuche - bitte später erneut versuchen',
'captcha': 'Captcha-Verifizierung erforderlich',
'username taken': 'Gewünschter Benutzername nicht verfügbar',
'weak password': 'Passwort erfüllt nicht die Sicherheitsanforderungen',
'network error': 'Netzwerkfehler - bitte Internetverbindung prüfen'
},
'ui_config': {
'primary_color': '#EA4335',
'secondary_color': '#4285F4',
'icon': 'gmail.svg'
}
}
}
def get_platform_config(platform: str) -> Dict[str, Any]:
"""Gibt die Konfiguration für eine Platform zurück"""
platform_lower = platform.lower()
if platform_lower not in PLATFORM_CONFIG:
# Fallback zu Standard-Konfiguration
return {
'mobile_probability': 0.5,
'min_age': 13,
'max_age': 99,
'supported_registration': ['email'],
'default_email_domain': 'z5m7q9dk3ah2v1plx6ju.com',
'requires_phone_verification': False,
'session_expiry_days': 30,
'rate_limits': {
'registrations_per_hour': 3,
'registrations_per_day': 10,
'cooldown_minutes': 15
},
'error_patterns': {},
'ui_config': {
'primary_color': '#000000',
'secondary_color': '#666666',
'icon': 'default.svg'
}
}
return PLATFORM_CONFIG[platform_lower]
def get_error_patterns(platform: str) -> Dict[str, str]:
"""Gibt die Error-Patterns für eine Platform zurück"""
config = get_platform_config(platform)
return config.get('error_patterns', {})
def get_rate_limits(platform: str) -> Dict[str, int]:
"""Gibt die Rate-Limits für eine Platform zurück"""
config = get_platform_config(platform)
return config.get('rate_limits', {})
def is_registration_method_supported(platform: str, method: str) -> bool:
"""Prüft ob eine Registrierungsmethode unterstützt wird"""
config = get_platform_config(platform)
supported = config.get('supported_registration', ['email'])
return method in supported