mirror of
https://github.com/Second-Hand-Friends/kleinanzeigen-bot.git
synced 2026-03-12 02:31:45 +01:00
267 lines
15 KiB
YAML
267 lines
15 KiB
YAML
#################################################
|
|
getopt.py:
|
|
#################################################
|
|
do_longs:
|
|
"option --%s requires argument": "Option --%s benötigt ein Argument"
|
|
"option --%s must not have an argument": "Option --%s darf kein Argument haben"
|
|
long_has_args:
|
|
"option --%s not recognized": "Option --%s unbekannt"
|
|
"option --%s not a unique prefix": "Option --%s ist kein eindeutiger Prefix"
|
|
do_shorts:
|
|
"option -%s requires argument": "Option -%s benötigt ein Argument"
|
|
short_has_arg:
|
|
"option -%s not recognized": "Option -%s unbekannt"
|
|
|
|
#################################################
|
|
kleinanzeigen_bot/__main__.py:
|
|
#################################################
|
|
module:
|
|
"[INFO] Captcha detected. Sleeping %s before restart...": "[INFO] Captcha erkannt. Warte %s h bis zum Neustart..."
|
|
|
|
#################################################
|
|
kleinanzeigen_bot/__init__.py:
|
|
#################################################
|
|
module:
|
|
"Direct execution not supported. Use 'pdm run app'": "Direkte Ausführung nicht unterstützt. Bitte 'pdm run app' verwenden"
|
|
|
|
configure_file_logging:
|
|
"Logging to [%s]...": "Protokollierung in [%s]..."
|
|
"App version: %s": "App Version: %s"
|
|
"Python version: %s": "Python Version: %s"
|
|
|
|
__check_ad_changed:
|
|
"Hash comparison for [%s]:": "Hash-Vergleich für [%s]:"
|
|
" Stored hash: %s": " Gespeicherter Hash: %s"
|
|
" Current hash: %s": " Aktueller Hash: %s"
|
|
"Changes detected in ad [%s], will republish": "Änderungen in Anzeige [%s] erkannt, wird erneut veröffentlicht"
|
|
|
|
load_ads:
|
|
"Searching for ad config files...": "Suche nach Anzeigendateien..."
|
|
" -> found %s": "-> %s gefunden"
|
|
"ad config file": "Anzeigendatei"
|
|
"Start fetch task for the ad(s) with id(s):": "Starte Abrufaufgabe für die Anzeige(n) mit ID(s):"
|
|
" -> SKIPPED: inactive ad [%s]": " -> ÜBERSPRUNGEN: inaktive Anzeige [%s]"
|
|
" -> SKIPPED: ad [%s] is not in list of given ids.": " -> ÜBERSPRUNGEN: Anzeige [%s] ist nicht in der Liste der angegebenen IDs."
|
|
" -> SKIPPED: ad [%s] is not new. already has an id assigned.": " -> ÜBERSPRUNGEN: Anzeige [%s] ist nicht neu. Eine ID wurde bereits zugewiesen."
|
|
"Category [%s] unknown. Using category [%s] with ID [%s] instead.": "Kategorie [%s] unbekannt. Verwende stattdessen Kategorie [%s] mit ID [%s]."
|
|
"Loaded %s": "%s geladen"
|
|
"ad": "Anzeige"
|
|
|
|
load_config:
|
|
"Config file %s does not exist. Creating it with default values...": "Konfigurationsdatei %s existiert nicht. Erstelle sie mit Standardwerten..."
|
|
"config": "Konfiguration"
|
|
" -> found %s": "-> %s gefunden"
|
|
"category": "Kategorie"
|
|
|
|
login:
|
|
"Checking if already logged in...": "Überprüfe, ob bereits eingeloggt..."
|
|
"Already logged in as [%s]. Skipping login.": "Bereits eingeloggt als [%s]. Überspringe Anmeldung."
|
|
"Opening login page...": "Öffne Anmeldeseite..."
|
|
"# Captcha present! Please solve the captcha.": "# Captcha vorhanden! Bitte lösen Sie das Captcha."
|
|
|
|
handle_after_login_logic:
|
|
"# Device verification message detected. Please follow the instruction displayed in the Browser.": "# Nachricht zur Geräteverifizierung erkannt. Bitte den Anweisungen im Browser folgen."
|
|
"Press ENTER when done...": "EINGABETASTE drücken, wenn erledigt..."
|
|
"Handling GDPR disclaimer...": "Verarbeite DSGVO-Hinweis..."
|
|
|
|
delete_ads:
|
|
"Processing %s/%s: '%s' from [%s]...": "Verarbeite %s/%s: '%s' von [%s]..."
|
|
"DONE: Deleted %s": "FERTIG: %s gelöscht"
|
|
"ad": "Anzeige"
|
|
|
|
delete_ad:
|
|
"Deleting ad '%s' if already present...": "Lösche Anzeige '%s', falls bereits vorhanden..."
|
|
"Expected CSRF Token not found in HTML content!": "Erwartetes CSRF-Token wurde im HTML-Inhalt nicht gefunden!"
|
|
" -> deleting %s '%s'...": " -> lösche %s '%s'..."
|
|
|
|
publish_ads:
|
|
"Processing %s/%s: '%s' from [%s]...": "Verarbeite %s/%s: '%s' von [%s]..."
|
|
"Skipping because ad is reserved": "Überspringen, da Anzeige reserviert ist"
|
|
"DONE: (Re-)published %s": "FERTIG: %s (erneut) veröffentlicht"
|
|
"ad": "Anzeige"
|
|
|
|
publish_ad:
|
|
"Publishing ad '%s'...": "Veröffentliche Anzeige '%s'..."
|
|
"Failed to set shipping attribute for type '%s'!": "Fehler beim setzen des Versandattributs für den Typ '%s'!"
|
|
"# Captcha present! Please solve the captcha.": "# Captcha vorhanden! Bitte lösen Sie das Captcha."
|
|
"Press a key to continue...": "Eine Taste drücken, um fortzufahren..."
|
|
" -> SUCCESS: ad published with ID %s": " -> ERFOLG: Anzeige mit ID %s veröffentlicht"
|
|
" -> effective ad meta:": " -> effektive Anzeigen-Metadaten:"
|
|
"Could not set city from location": "Stadt konnte nicht aus dem Standort gesetzt werden"
|
|
"Captcha recognized - auto-restart enabled, abort run...": "Captcha erkannt - Auto-Neustart aktiviert, Durchlauf wird beendet..."
|
|
|
|
__set_condition:
|
|
"Unable to close condition dialog!": "Kann den Dialog für Artikelzustand nicht schließen!"
|
|
"Unable to open condition dialog and select condition [%s]": "Zustandsdialog konnte nicht geöffnet und Zustand [%s] nicht ausgewählt werden"
|
|
"Unable to select condition [%s]": "Zustand [%s] konnte nicht ausgewählt werden"
|
|
|
|
__upload_images:
|
|
" -> found %s": "-> %s gefunden"
|
|
"image": "Bild"
|
|
" -> uploading image [%s]": " -> Lade Bild [%s] hoch"
|
|
|
|
__check_ad_republication:
|
|
" -> SKIPPED: ad [%s] was last published %d days ago. republication is only required every %s days": " -> ÜBERSPRUNGEN: Anzeige [%s] wurde zuletzt vor %d Tagen veröffentlicht. Erneute Veröffentlichung ist erst nach %s Tagen erforderlich"
|
|
|
|
__set_special_attributes:
|
|
"Found %i special attributes": "%i spezielle Attribute gefunden"
|
|
"Setting special attribute [%s] to [%s]...": "Setze spezielles Attribut [%s] auf [%s]..."
|
|
"Successfully set attribute field [%s] to [%s]...": "Attributfeld [%s] erfolgreich auf [%s] gesetzt..."
|
|
"Attribute field '%s' could not be found.": "Attributfeld '%s' konnte nicht gefunden werden."
|
|
"Attribute field '%s' seems to be a select...": "Attributfeld '%s' scheint ein Auswahlfeld zu sein..."
|
|
"Attribute field '%s' is not of kind radio button.": "Attributfeld '%s' ist kein Radiobutton."
|
|
"Attribute field '%s' seems to be a checkbox...": "Attributfeld '%s' scheint eine Checkbox zu sein..."
|
|
"Attribute field '%s' seems to be a text input...": "Attributfeld '%s' scheint ein Texteingabefeld zu sein..."
|
|
|
|
download_ads:
|
|
"Scanning your ad overview...": "Scanne Anzeigenübersicht..."
|
|
"%s found.": "%s gefunden."
|
|
"ad": "Anzeige"
|
|
"Starting download of all ads...": "Starte den Download aller Anzeigen..."
|
|
"%d of %d ads were downloaded from your profile.": "%d von %d Anzeigen wurden aus Ihrem Profil heruntergeladen."
|
|
"Starting download of not yet downloaded ads...": "Starte den Download noch nicht heruntergeladener Anzeigen..."
|
|
"The ad with id %d has already been saved.": "Die Anzeige mit der ID %d wurde bereits gespeichert."
|
|
"%s were downloaded from your profile.": "%s wurden aus Ihrem Profil heruntergeladen."
|
|
"new ad": "neue Anzeige"
|
|
"Starting download of ad(s) with the id(s):": "Starte Download der Anzeige(n) mit den ID(s):"
|
|
"Downloaded ad with id %d": "Anzeige mit der ID %d heruntergeladen"
|
|
"The page with the id %d does not exist!": "Die Seite mit der ID %d existiert nicht!"
|
|
|
|
parse_args:
|
|
"Use --help to display available options.": "Mit --help können die verfügbaren Optionen angezeigt werden."
|
|
"More than one command given: %s": "Mehr als ein Befehl angegeben: %s"
|
|
|
|
run:
|
|
"DONE: No configuration errors found.": "FERTIG: Keine Konfigurationsfehler gefunden."
|
|
"You provided no ads selector. Defaulting to \"due\".": "Es wurden keine Anzeigen-Selektor angegeben. Es wird \"due\" verwendet."
|
|
"DONE: No new/outdated ads found.": "FERTIG: Keine neuen/veralteten Anzeigen gefunden."
|
|
"DONE: No ads to delete found.": "FERTIG: Keine zu löschnenden Anzeigen gefunden."
|
|
"You provided no ads selector. Defaulting to \"new\".": "Es wurden keine Anzeigen-Selektor angegeben. Es wird \"new\" verwendet."
|
|
"Unknown command: %s": "Unbekannter Befehl: %s"
|
|
|
|
fill_login_data_and_send:
|
|
"Logging in as [%s]...": "Anmeldung als [%s]..."
|
|
|
|
__set_shipping:
|
|
"Unable to close shipping dialog!": "Versanddialog konnte nicht geschlossen werden!"
|
|
|
|
__set_shipping_options:
|
|
"Unable to close shipping dialog!": "Versanddialog konnte nicht geschlossen werden!"
|
|
|
|
#################################################
|
|
kleinanzeigen_bot/extract.py:
|
|
#################################################
|
|
download_ad:
|
|
"Created ads directory at ./%s.": "Verzeichnis für Anzeigen erstellt unter ./%s."
|
|
"Deleting current folder of ad %s...": "Lösche aktuellen Ordner der Anzeige %s..."
|
|
"New directory for ad created at %s.": "Neues Verzeichnis für Anzeige erstellt unter %s."
|
|
|
|
_download_images_from_ad_page:
|
|
"Found %s.": "%s gefunden."
|
|
"Downloaded %s.": "%s heruntergeladen."
|
|
"NEXT button in image gallery somehow missing, aborting image fetching.": "WEITER-Button in der Bildergalerie fehlt, breche Bildabruf ab."
|
|
"No image area found. Continuing without downloading images.": "Keine Bildbereiche gefunden. Fahre ohne Bilder-Download fort."
|
|
|
|
extract_ad_id_from_ad_url:
|
|
"Failed to extract ad ID from URL '%s': %s": "Fehler beim Extrahieren der Anzeigen-ID aus der URL '%s': %s"
|
|
|
|
extract_own_ads_urls:
|
|
"Ad list container #my-manageitems-adlist not found. Maybe no ads present?": "Anzeigenlistencontainer #my-manageitems-adlist nicht gefunden. Vielleicht sind keine Anzeigen vorhanden?"
|
|
"Multiple ad pages detected.": "Mehrere Anzeigenseiten erkannt."
|
|
"Next button found but is disabled. Assuming single effective page.": "Weiter-Button gefunden, aber deaktiviert. Es wird von einer einzelnen effektiven Seite ausgegangen."
|
|
"No \"Naechste\" button found within pagination. Assuming single page.": "Kein \"Nächste\"-Button in der Paginierung gefunden. Es wird von einer einzelnen Seite ausgegangen."
|
|
"No pagination controls found. Assuming single page.": "Keine Paginierungssteuerung gefunden. Es wird von einer einzelnen Seite ausgegangen."
|
|
"Assuming single page due to error during pagination check.": "Es wird von einer einzelnen Seite ausgegangen wegen eines Fehlers bei der Paginierungsprüfung."
|
|
"Navigating to next page...": "Navigiere zur nächsten Seite..."
|
|
"Last ad overview page explored (no enabled \"Naechste\" button found).": "Letzte Anzeigenübersichtsseite erkundet (kein aktivierter \"Nächste\"-Button gefunden)."
|
|
"No pagination controls found after scrolling/waiting. Assuming last page.": "Keine Paginierungssteuerung nach dem Scrollen/Warten gefunden. Es wird von der letzten Seite ausgegangen."
|
|
"No ad URLs were extracted.": "Es wurden keine Anzeigen-URLs extrahiert."
|
|
"Could not find ad list container or items on page %s.": "Anzeigenlistencontainer oder Elemente auf Seite %s nicht gefunden."
|
|
"Error during pagination detection: %s": "Fehler bei der Paginierungserkennung: %s"
|
|
"Error during pagination navigation: %s": "Fehler bei der Paginierungsnavigation: %s"
|
|
"Error extracting refs on page %s: %s": "Fehler beim Extrahieren der Referenzen auf Seite %s: %s"
|
|
"Extracting ads from page %s...": "Extrahiere Anzeigen von Seite %s..."
|
|
"Found %s ad items on page %s.": "%s Anzeigen-Elemente auf Seite %s gefunden."
|
|
"Successfully extracted %s refs from page %s.": "%s Referenzen von Seite %s erfolgreich extrahiert."
|
|
|
|
naviagte_to_ad_page:
|
|
"There is no ad under the given ID.": "Es gibt keine Anzeige unter der angegebenen ID."
|
|
"A popup appeared!": "Ein Popup ist erschienen!"
|
|
|
|
_extract_ad_page_info:
|
|
"Extracting information from ad with title \"%s\"": "Extrahiere Informationen aus Anzeige mit Titel \"%s\""
|
|
|
|
_extract_contact_from_ad_page:
|
|
"No street given in the contact.": "Keine Straße in den Kontaktdaten angegeben."
|
|
|
|
#################################################
|
|
kleinanzeigen_bot/utils/i18n.py:
|
|
#################################################
|
|
_detect_locale:
|
|
"Error detecting language on Windows": "Fehler bei der Spracherkennung unter Windows"
|
|
|
|
#################################################
|
|
kleinanzeigen_bot/utils/error_handlers.py:
|
|
#################################################
|
|
on_sigint:
|
|
"Aborted on user request.": "Auf Benutzeranfrage abgebrochen."
|
|
on_exception:
|
|
"%s: %s": "%s: %s"
|
|
"Unknown exception occurred (missing exception info): ex_type=%s, ex_value=%s": "Unbekannter Fehler aufgetreten (fehlende Fehlerinformation): ex_type=%s, ex_value=%s"
|
|
|
|
#################################################
|
|
kleinanzeigen_bot/utils/loggers.py:
|
|
#################################################
|
|
format:
|
|
"CRITICAL": "KRITISCH"
|
|
"ERROR": "FEHLER"
|
|
"WARNING": "WARNUNG"
|
|
|
|
#################################################
|
|
kleinanzeigen_bot/utils/dicts.py:
|
|
#################################################
|
|
load_dict_if_exists:
|
|
"Loading %s[%s]...": "Lade %s[%s]..."
|
|
" from ": " von "
|
|
"Unsupported file type. The filename \"%s\" must end with *.json, *.yaml, or *.yml": "Nicht unterstützter Dateityp. Der Dateiname \"%s\" muss mit *.json, *.yaml oder *.yml enden"
|
|
save_dict:
|
|
"Saving [%s]...": "Speichere [%s]..."
|
|
load_dict_from_module:
|
|
"Loading %s[%s.%s]...": "Lade %s[%s.%s]..."
|
|
|
|
#################################################
|
|
kleinanzeigen_bot/utils/web_scraping_mixin.py:
|
|
#################################################
|
|
create_browser_session:
|
|
"Creating Browser session...": "Erstelle Browser-Sitzung..."
|
|
"Using existing browser process at %s:%s": "Verwende existierenden Browser-Prozess unter %s:%s"
|
|
"New Browser session is %s": "Neue Browser-Sitzung ist %s"
|
|
" -> Browser binary location: %s": " -> Browser-Programmpfad: %s"
|
|
" -> Browser profile name: %s": " -> Browser-Profilname: %s"
|
|
" -> Browser user data dir: %s": " -> Browser-Benutzerdatenverzeichnis: %s"
|
|
" -> Custom Browser argument: %s": " -> Benutzerdefiniertes Browser-Argument: %s"
|
|
" -> Setting chrome prefs [%s]...": " -> Setze Chrome-Einstellungen [%s]..."
|
|
" -> Adding Browser extension: [%s]": " -> Füge Browser-Erweiterung hinzu: [%s]"
|
|
|
|
web_check:
|
|
"Unsupported attribute: %s": "Nicht unterstütztes Attribut: %s"
|
|
|
|
web_find:
|
|
"Unsupported selector type: %s": "Nicht unterstützter Selektor-Typ: %s"
|
|
|
|
web_find_all:
|
|
"Unsupported selector type: %s": "Nicht unterstützter Selektor-Typ: %s"
|
|
close_browser_session:
|
|
"Closing Browser session...": "Schließe Browser-Sitzung..."
|
|
|
|
get_compatible_browser:
|
|
"Installed browser could not be detected": "Installierter Browser konnte nicht erkannt werden"
|
|
"Installed browser for OS %s could not be detected": "Installierter Browser für Betriebssystem %s konnte nicht erkannt werden"
|
|
|
|
web_open:
|
|
" => skipping, [%s] is already open": " => überspringe, [%s] ist bereits geöffnet"
|
|
" -> Opening [%s]...": " -> Öffne [%s]..."
|
|
|
|
web_request:
|
|
" -> HTTP %s [%s]...": " -> HTTP %s [%s]..."
|