Scraping HTML von Google Translate

.net c# google-translate html-agility-pack winforms

Frage

Ich möchte eine Zeichenfolge mit Google Translator übersetzen.

Meine Beispielzeichenfolge ist "this is my string" .

Ich möchte HTML Agility Pack zum Parsen von HTML-Dokumenten verwenden.

Ich habe es versucht:

using HtmlAgilityPack; 

........

var webGet = new HtmlWeb();
var document = webGet.Load(
    "http://translate.google.com/#en/bn/this%20is%20my%20string");

var node = document.DocumentNode.SelectNodes(
    "//span[@class='short_text' and @id='result_box']");

if (node != null)
{
    foreach (var xx in node)
    {
        x = xx.InnerText;
        MessageBox.Show(x);
    }
}

Aber ich bekomme keine Ergebnisse.

Mein Ziel ist es, eine vollständige Zeichenfolge mit Google Übersetzer zu übersetzen und die übersetzte Zeichenfolge in einem Label in Windows Forms anzuzeigen.

Wie kann ich das machen?

Beliebte Antwort

Das ist eine schlechte Idee. Wie Kommentatoren hervorgehoben haben, bietet Google eine programmatische Schnittstelle als kostenpflichtigen Dienst an. Google hat sicherlich Sicherheitsfunktionen, um zu versuchen, genau das zu blockieren, was Sie tun, und deshalb funktioniert es nicht. Vielleicht könnten Sie es irgendwie in Gang bringen, aber selbst dann wären Sie immer in Gefahr, dass Google seine Sicherheit verbessert und Ihr Skript wieder blockiert wird. Darüber hinaus brechen Sie mit großer Wahrscheinlichkeit die Google Nutzungsbedingungen.

2017 Update: Microsoft Translator API unterstützt jetzt Bengali und ist kostenlos für bis zu zwei Millionen Zeichen pro Monat.




Lizenziert unter: CC-BY-SA with attribution
Nicht verbunden mit Stack Overflow
Ist diese KB legal? Ja, lerne warum
Lizenziert unter: CC-BY-SA with attribution
Nicht verbunden mit Stack Overflow
Ist diese KB legal? Ja, lerne warum