Cara menggunakan TRNSLATE pada Python

Python-Google-Translate

Python Google Translate by python.web.id

/******************************* Credit By : //python.web.id Author : Agus Makmun (Summon Agus) Name : Python Google Translate. Powered : Python Licence : GNU GENERAL PUBLIC LICENSE Version 2, June 1991. Tanks to : Kamyar Ghasemlou ( for adding tab file ). ********************************/

Project Python Google Translate - Program ini merupakan program Translate Bahasa yang memanfaatkan Layanan Google Translate yang diambil fungsi translatenya kemudian di terapkan pada Python Programming.

Program ini ada 2 file berupa:
1. Translate.py ( merupakan programnya )
2. id_country.txt ( merupakan database ID Negara dan Nama Negara )

Untuk File lengkapnya bisa langsung bisa dilihat di github: //github.com/agusmakmun/Python-Google-Translate/

Cara Kerja:

Untuk cara kerjanya sendiri, jadi kita mengambil hasil result dari Google Translate ketika kita inputkan data tertentu untuk kemudian di translate ke bahasa yang kita inginkan. Dan module yang kita gunakan adalah module urllib2 untuk mengakses ke Internet.

Pengambilan ID Country dan Name Country

Disini kami sedikit mengakali bagaimana caranya agar mendapatkan ID dan Nama Negara saja dengan menggunakan Python, karena untuk keperluar tampilan ID dan Nama Negaranya di Program yang kita buat. import urllib2 url = '//translate.google.com/m?mui=tl' agent = {'User-Agent':'Mozilla/5.0'} cari_hasil = 'div class="small">' end_tag = 'div class="small center">' request = urllib2.Request(url, headers=agent) page = urllib2.urlopen(request).read() result = page[page.find(cari_hasil)+len(cari_hasil):] res = result.replace('<br>', '').replace('Send us feedback', '').replace('in:<b>Mobile</b>', '') operasi = res.split() count = 0 while True: try: count += 1 spl = operasi[count].split() y = spl for s in y: repp = s.replace('</a><a', '').replace('href="//translate.google.com/m?tl=', '').replace('">', '') kode = repp[:2] negara = repp[2:].replace('</a></div><div', '') if negara >= 'ass="small': break print kode, negara except IndexError: break

Dari script diatas, data yang kita dapatkan hasilnya adalah seperti ini..

af Afrikaans sq Albanian ar Arabic hy Armenian az Azerbaijani eu Basque be Belarusian bn Bengali bs Bosnian bg Bulgarian ca Catalan ny Chichewa zh -CNChinese zh -TWChinese hr Croatian cs Czech da Danish .....etc

Masalah yang dihadapi: Dari situ kita sudah mendapatkan data dengan ID dan Name Country, namun yang menjadi masalah adalah pada bagian data zh -CNChinese dan zh -TWChinese yang seharusnya ID-nya adalah zh-CN dan zh-TW (tanpa spasi).

Itu sebabnya mengapa kita membuat Database baru yang bernama id_country.txt, sebenarnya tanpa ini kita juga sudah bisa memanfaatkan Python Google Translate ini. Namun untuk mempermudah user dengan adanya tampilan data dari ID dan Name Country, sehingga tidak bingung ketika ingin memasukkan ID pada bahasa yang mereka tidak kenal.

Didalam id_country.txt sendiri jika memang datanya seperti pada zh -CNChinese dan zh -TWChinese dengan menggunakan spasi, seperti yang ada pada data diatas, kami juga telah mengutiknya dengan membuatkan program seperti ini:

import UserString f = open('id_country.txt', 'r') count_me = 0 lines = f.readlines() for i in lines: count_me += 1 if i[3] == '-': depan = i[:2] + i[3:6] belakang = UserString.MutableString(i).replace('\n', '') del belakang[:6] print depan,'\t', belakang else: print i[:2], '\t', i[3:].replace('\n', '')

Dan akan menghasilkan seperti ini (dengan tab):

af Afrikaans sq Albanian ar Arabic hy Armenian az Azerbaijani eu Basque be Belarusian bn Bengali bs Bosnian bg Bulgarian ca Catalan ny Chichewa zh-CN Chinese zh-TW Chinese hr Croatian cs Czech da Danish .....etc

Dengan adanya tampilan yang demikian, maka muncul kendala lagi, yaitu akan memboroskan tampilan layar, oleh sebab itu alhamdulillah dengan bantuan dari forum stackoverflow oleh jawaban Kamyar Ghasemlou terjawab dengan menambahkan tab baru dengan panjang dari data yang dibagi 2, dan tampilan yang setelahnya menambah tab baru (hal ini akan lebih meminimalisir tampilan dari layar).

Kemudian kita kembangkan lagi menjadi 3 tab dengan script berikut ini:

f = open('id_country.txt','r') lines = f.readlines() panjang = len(lines) for i in range(panjang/3): print lines[i].replace('\n', ''),'\t', lines[i + panjang/2].replace('\n', ''),'\t', lines[i + panjang/3].replace('\n', '') if panjang%2: #if it is odd print lines[-1].replace('\n', '')

Yang pada hasil endingnya adalah menjadi seperti ini: Maaf untuk lebih bagusnya seperti ini: //gist.github.com/agusmakmun/40ac361269b2b9703e34

af Afrikaans ko Korean ht Haitian sq Albanian lo Lao ha Hausa ar Arabic la Latin iw Hebrew hy Armenian lv Latvian hi Hindi az Azerbaijani lt Lithuanian hu Hungarian eu Basque mk Macedonian is Icelandic be Belarusian mg Malagasy ig Igbo bn Bengali ms Malay id Indonesian bs Bosnian ml Malayalam ga Irish bg Bulgarian mt Maltese it Italian ca Catalan mi Maori ja Japanese ny Chichewa mr Marathi jw Javanese zh -CNChinese mn Mongolian kn Kannada zh -TWChinese my Myanmar kk Kazakh hr Croatian ne Nepali km Khmer cs Czech no Norwegian ko Korean ....etc

Naah demikianlah dokumentasi singkat dari proses pembuatan Project Python Google Translate, jika dirasakan orang yang baru mengenal python seperti saya, rasanya sangat puas apabila sukses membuat program sesuai dengan apa yang kita inginkan.. :D

Postingan terbaru

LIHAT SEMUA