VB .NET -  Tradutor com API do BING


Você conhece o BING ? 

Bing (anteriormente Live Search, Windows Live Search e MSN Busca), renomeado Kumo, é o novo motor de pesquisa da Microsoft, criado para competir com os líderes Google e Yahoo!. Revelado por Steve Ballmer, em  28 de maio de 2009, na conferência "All Things D", em San Diego. O Bing é um substituto do Live Search, sendo disponibilizado totalmente em 1 junho de 2009. (fonte: http://pt.wikipedia.org/wiki/Bing)

Por que eu estou falando do BING ?

Porque neste artigo vamos criar um tradutor de textos em uma aplicação Windows Forms usando a linguagem Visual Basic e a API do BING.

Vamos usar o Web Service da API do BING para traduzir textos em uma aplicação desktop.

A primeira coisa a fazer é acessar o site : http://www.bing.com/developers e criar um código de acesso chamado AppID para podermos usar a API.

Acessando a página : http://www.bing.com/developers/appids.aspx (você vai precisar de código e senha) clique  no link Create an AppID;

Preencha o formulário e o submeta, em seguida você vai receber o seu ID. Copie o ID recebido para usar na sua aplicação.

Para saber mais detalhes sobre como usar a API veja a documentação em: http://www.bing.com/developers/s/API%20Basics.pdf

Agora abra o Visual Basic 2010 Express Edition e crie uma nova aplicação Windows Forms Application com o nome TradutorBING;

Defina o  leiaute do formulário form1 conforme a figura abaixo usando dois controles GroupBox, duas caixas de textos e um controle Button;

Agora vamos incluir uma referência a API do BING. Clique com o botão direito sobre o nome do projeto na janela Solution Explorer e selecione a opção Add Service Reference;

Em seguida informe o endereço do serviço: http://api.microsofttranslator.com/V1/SOAP.svc e informe o Namespace : TradutorService e clique em OK;

Se não houver erros você deverá ver a referência ao serviço no seu projeto conforme a figura acima.

Agora no evento Click do botão Traduzir inclua o código abaixo:

Private Sub btnTraduzir_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles btnTraduzir.Click


Dim
textoTraduzido As String = Nothing


Try

    Dim cliente As New TradutorService.LanguageServiceClient()

    textoTraduzido = cliente.Translate("coloque aqui o seu AppID", txtTextoAtraduzir.Text, "", "en")

    txtTextoTraduzido.Text = textoTraduzido

Catch ex As Exception

  MessageBox.Show(ex.Message)

End Try

End Sub

O método Translate usa 4 parâmetros :

No exemplo o idioma de origem(terceiro parâmetro) foi deixado em branco de forma que a API detecta automaticamente o idioma.

Executando o projeto e fazendo um teste temos:

Simples, simples assim...
Obs: Havendo qualquer erro na utilização do serviço verifique a documentação e a geração correta do AppID.
Pegue o programa completo aqui:  TradudorBING.zip
Referências:

José Carlos Macoratti