Zum Inhalt

Die Vornamencheck-API per Python abfragen

Hier ein mögliches Skript in Python, das auf die Vornamencheck-API zugreift.

import requests
import sys
from typing import Optional

def check_name(name: str) -> Optional[dict]:
    """
    Fragt die Vornamencheck-API für den gegebenen Namen ab.

    Args:
        name: Der zu überprüfende Vorname

    Returns:
        Dictionary mit den API-Ergebnissen oder None bei einem Fehler
    """
    api_url = f"https://vornamencheck.de/api/v1/names/gender"

    try:
        response = requests.get(api_url, params={'name': name})
        response.raise_for_status()  # Wirft Exception bei HTTP-Fehlern
        return response.json()
    except requests.RequestException as e:
        print(f"Fehler beim API-Aufruf: {e}", file=sys.stderr)
        return None

def print_result(result: dict) -> None:
    """
    Gibt das API-Ergebnis formatiert aus.

    Args:
        result: Dictionary mit den API-Ergebnissen
    """
    # Geschlecht auf Deutsch übersetzen
    gender_mapping = {
        'female': 'weiblich',
        'male': 'männlich'
    }
    gender = gender_mapping.get(result['gender'], 'unbekannt')

    # Formatierte Ausgabe
    print(f"\nErgebnis für den Namen '{result['name']}:'")
    print("-" * 40)
    print(f"Geschlecht: {gender}")
    print(f"Wahrscheinlichkeit weiblich: {result['statistics']['femaleProbability']} von 10")
    print(f"Wahrscheinlichkeit männlich: {result['statistics']['maleProbability']} von 10")

def main():
    # Kommandozeilenargument prüfen
    if len(sys.argv) != 2:
        print("Verwendung: python script.py VORNAME")
        sys.exit(1)

    name = sys.argv[1]
    result = check_name(name)

    if result:
        print_result(result)
    else:
        sys.exit(1)

if __name__ == "__main__":
    main()

Die Ausgabe erfolgt dann in dieser Form:

Ergebnis für den Namen 'Petra:'
----------------------------------------
Geschlecht: weiblich
Wahrscheinlichkeit weiblich: 10 von 10
Wahrscheinlichkeit männlich: 0 von 10

Feedback / Kontakt

Wenn Sie Fragen oder Anregungen zum Artikel Vornamencheck haben, senden Sie mir bitte eine E-Mail an: vornamencheck+python@technotes.jakoubek.net