Çeviriyi Google Translate’ye yapmak büyük başarısızlık demektir. Ama özellikle projesel veya test amaçlı işlemlerde Google Translate Api’yi kullanarka çoklu dil desteği vermek kadar doğal birşey olamaz.

google

Proje yapmaktan hergün birşeyler öğreniyorum.

Çoklu dil birçok alanda problem olmuştur. Form elementlerini değerlendirdiğimizde, dile özel karakterlerin yayınlanması vb uzar gider. UTF-8 bu tür sorunlara kısmende olsa çözüm bulmuştur.

 

İnteraktif çeviri yinede önem kazanmaktadır. Bu noktada Google Translate hiç yoktan iyidir diye projemdeki bilgileri eş zamanlı google Translate aracılığı ile çevirir ve kullanmayı düşündüm. Maalesef (Mayıs 2013 itibari ile) Google Translate harf başına para alıyormuş ve minimum 20$ mış. BU ücreti vermek istemediğim için nasıl yaparız diye düşündüm; ve Sangdol bu işi yapan bir sistem yazmış. Google Spread Sheet api’yi kullanarak kelimeleri yüklüyor, çeviri yapıyor ve sonucu alıyor.

http://google-translate-api.herokuapp.com/translate?from=tr&to=en&text%5B%5D=ahmet+in+blogu+cok+guzel

 

Sonuc:ahmet in a very nice blog

Üsteki kırmızı kısım olması gereken, diğer kısım ise gönderdiğimiz metin.

Http post’u

String adress = “http://google-translate-api.herokuapp.com/translate?from=tr&to=en&text%5B%5D=” + text;
String content = null;
URLConnection connection = null;
try {

connection = new URL(adress).openConnection();
Scanner scanner = new Scanner(connection.getInputStream(), “UTF-8”);
scanner.useDelimiter(“\\Z”);
content = scanner.next();
sonuc = content;
} catch (Exception e) {
e.printStackTrace();
}

şeklinde gönderdim ve aldım.

if(sonuc.indexOf(“:”)>0) sonuc = sonuc.substring(sonuc.indexOf(“:”) + 2);
if(sonuc.indexOf(“\””)>0)sonuc = sonuc.substring(0, sonuc.indexOf(“\””));

işlemleri ile’de sonuçtan sadece çeviriyi elde ettim.
text = text.replaceAll(” “, “+”);
komutu ile’de boşlukları + yapmayı ve ‘ = ? ( ) gibi url içinde özel anlama gelecek işaretçileri çıkarmanız gerekmektedir.

Tabi Google SpreedSheed’lerle ilgili bir değişiklik olduğunda / herokuapp vb bozulduğunda / kodu yazan geri çektiğinde sistem çalışmayacaktır. Ayrıca sistem gerçekten yavaş çalışmaktadır.

Reklamlar