Automatisch Texte mit Google Translate übersetzen

Mit Google Translate können Texte auf einer Homepage automatisch übersetzt werden. Damit können mehrsprachige Formulare, Menüs und ansatzweise auch Inhalte auf Knopfdruck generiert werden.

Mit einer Webseite in mehreren Sprachen kann man deutlich mehr Benutzer erreichen. Die Übersetzung ist zwar nicht perfekt, aber bei einfachen Sätzen und einfacher Grammatik funktioniert es bereits recht gut.

Möchte man die Übersetzung fest in einer Datenbank speichern, dann kann man mit dem nachfolgenden JavaScript-Quellcode den gesamten Text automatisch in alle gwünschten Fremdsprachen übersetzen. Was im Prototyp noch fehlt, ist die Speicherung per AJAX-Request in der

function googleTranslateElementInit() {
  new google.translate.TranslateElement({
    pageLanguage: 'de',
    includedLanguages: 'en,fr,it',
    autoDisplay: false,
    layout: google.translate.TranslateElement.InlineLayout.HORIZONTAL
  }, 'google_translate_element');
}


batch_googleTranslate_id = 'google_translate_element';
function eventBatch_googleTranslate(element,event){
  if (document.createEventObject){
    /* dispatch for IE */
    var evt = document.createEventObject();
    return element.fireEvent('on'+event,evt)
  }
  else{
    /* dispatch for firefox + others */
    var evt = document.createEvent("HTMLEvents");
    evt.initEvent(event, true, true );
    return !element.dispatchEvent(evt);
  }
}
batch_googleTranslate_pos = 0;
batch_googleTranslate_time = 5000;
function startBatch_googleTranslate() {
  batch_googleTranslate_pos = 0;
  googleTranslate_element = document.getElementById(batch_googleTranslate_id);
  googleTranslate_select = googleTranslate_element.getElementsByTagName('SELECT');
  if (googleTranslate_select.length > 0) {
    alert('Start');
    window.status = 'load ... '+batch_googleTranslate_pos;
    window.setTimeout("nextBatch_googleTranslate()",batch_googleTranslate_time);
    googleTranslate_select[0].selectedIndex = 0;
    eventBatch_googleTranslate(googleTranslate_select[0],'change');
  }
}
function nextBatch_googleTranslate() {
  batch_googleTranslate_pos += 1;
  googleTranslate_element = document.getElementById(batch_googleTranslate_id);
  googleTranslate_select = googleTranslate_element.getElementsByTagName('SELECT');
  if (googleTranslate_select.length > 0) {
    window.status = 'load ... '+batch_googleTranslate_pos;
    if (googleTranslate_select[0].length > batch_googleTranslate_pos) {
      window.setTimeout("nextBatch_googleTranslate()",batch_googleTranslate_time);
      googleTranslate_select[0].selectedIndex += 1;
      eventBatch_googleTranslate(googleTranslate_select[0],'change');
    } else {
      alert('Ende');
    }
  }
}
function buttonBatch_googleTranslate() {
  document.getElementById('buttonBatch_googleTranslate').value = 'translate-batch';
  window.setTimeout("buttonBatch_googleTranslate()",100);
}
buttonBatch_googleTranslate();


Vorname:
Nachname:
Strasse:
Postleitzahl:
Ort:
Land:

Advertisements

2 Responses to Automatisch Texte mit Google Translate übersetzen

  1. Sirko says:

    Hallo. Ich bin heute durch lange Suche hier auf den Artikel gestossen. Versteh ich es richtig, das es sich hier um den Ansatz handelt eine Seite bei Anzeige bereits übersetzen zu lassen? Ich suche nach einer Lösung um deutsche Texte auf einer ausländischen Webseite automatisch übersetzen zu lassen. Die Texte werden importiert, alles ist englisch, nur der Inhalt leider noch deutsch. Dafür wäre eine automatische Übersetzung bei Anzeige ein Traum, so das auch Google die Inhalte in der richtigen Sprache lesen kann. Über Rückmeldung und evtl. etwas Unterstützung würde ich mich freuen, da ich derzeit am Rande der Verzweifelung stehe 🙂

    • RoHa says:

      Hallo Sirko,

      ja, man kann deutschsprachige Texte nach Englisch, Spanisch und so weiter automatisch übersetzen lassen. Am besten funktioniert es jedoch, wenn der Text englischsprachig ist.

      Die normale Translate-API von Google basiert auf Javascript, d.h. der Browser und auch Google würde in deinem Fall zunächst den Text in deutsch laden und an Google übergeben. Google übersetzt dann den Text nach Englisch und zeigt dem Besucher den englischen Text, nicht mehr den deutschen.

      Das bringt z.B. für die Suchmaschinenoptimierung nix, denn der Text ist ja immer deutsch. Mit meinem Ansatz wird der Text einmalig mit der Google-API übersetzt, z.B. in 30 verschiedene Sprachen. Das Ergebnis – der übersetzte Text – wird dann gespeichert. So kannst du z.B. für einen Shop die Menüs und Produkttexte in arabisch, polnisch oder was auch immer anbieten. Google indeziert dann direkt alle Sprachen.

      Die Qualität der Übersetzung ist nur dann brauchbar, wenn du einfache Sätze schreibst. Wenn du kein arabisch kannst, dann schaue dir an, wie gut Google den Text nach Englisch übersetzt. Ist der englische Text schlecht, dann musst du den deutschen Text einfacher fassen und nochmals übersetzen. Sobald der englische Text brauchbar ist, sollten auch die anderen Sprachen ähnlich gut übersetzt sein.

      Schreibe auch deine Seite – so macht es Microsoft in seinen FAQ auch – dass die Texte automatisch übersetzt wurden. Beschreibe mal genauer, was dein Ziel ist.

      Ich kann da gern unterstützen, falls Bedarf besteht.

Kommentar verfassen

Trage deine Daten unten ein oder klicke ein Icon um dich einzuloggen:

WordPress.com-Logo

Du kommentierst mit Deinem WordPress.com-Konto. Abmelden / Ändern )

Twitter-Bild

Du kommentierst mit Deinem Twitter-Konto. Abmelden / Ändern )

Facebook-Foto

Du kommentierst mit Deinem Facebook-Konto. Abmelden / Ändern )

Google+ Foto

Du kommentierst mit Deinem Google+-Konto. Abmelden / Ändern )

Verbinde mit %s

%d Bloggern gefällt das: