用C#翻譯帶有Microsoft Translator API(SOAP)的網頁。我想翻譯我的網站,但使用翻譯器小工具對我並不好,因爲我需要谷歌來抓取翻譯過的頁面。所以我需要在將它發送到瀏覽器之前進行翻譯。使用Microsoft Translator API將整個網頁翻譯爲C#
到目前爲止,沒有API(我試過找到它,我不能,如果你碰巧知道一個請提及),你可以通過一個網址,它會給你發送這樣的翻譯響應:http://www.microsofttranslator.com/bv.aspx?from=&to=nl&a=http%3A%2F%2Fwww.imdb.com%2F
這些是我到目前爲止的嘗試: 1.從Url下載字符串,傳遞給Client.Translate(..)。在反序列化請求消息的主體進行操作 「翻譯」錯誤:
格式化器,而試圖反序列化 消息引發了異常。在讀取XML數據時超過了最大字符串內容長度配額(30720) 。此配額可能會增加 更改創建XML閱讀器時使用的 XmlDictionaryReaderQuotas對象上的MaxStringContentLength屬性。 516 線,位置48
2.
private static void processDocument(HtmlAgilityPack.HtmlDocument html, LanguageServiceClient Client)
{
HtmlNodeCollection coll = html.DocumentNode.SelectNodes("//text()[normalize-space(.) != '']");
foreach (HtmlNode node in coll)
{
if (node.InnerText == node.InnerHtml)
{
//node.InnerHtml = translateText(node.InnerText);
node.InnerHtml = Client.Translate("", node.InnerText, "en", "fr", "text/html", "general");
}
}
}
這一個這樣服用了太多的時間。最後,我得到一個錯誤的請求(400)異常。
解決此問題的最佳方法是什麼?我還計劃保存這些文件,以便我不必每次翻譯。