diff --git a/README.md b/README.md index bef8fc8..10bdeb5 100644 --- a/README.md +++ b/README.md @@ -21,7 +21,8 @@ pip install kbbi Buat objek `KBBI` baru (contoh: `kata = KBBI('kata kunci')`), lalu manfaatkan representasi `str`-nya dengan memanggil `str(kata)` atau ambil `dict` hasil -serialisasinya dengan memanggil `kata.serialisasi()`. +serialisasinya dengan memanggil `kata.serialisasi()`. Apabila ingin memanfaatkan +representasi `str`-nya tanpa contoh (jika ada), gunakan `__str__(contoh=False)`. Untuk lebih jelasnya, lihat contoh berikut. diff --git a/kbbi/kbbi.py b/kbbi/kbbi.py index 609970e..868a616 100644 --- a/kbbi/kbbi.py +++ b/kbbi/kbbi.py @@ -8,6 +8,7 @@ .. moduleauthor:: sage """ +from re import sub from urllib.parse import quote import requests @@ -72,8 +73,11 @@ def serialisasi(self): self.nama: [entri.serialisasi() for entri in self.entri] } - def __str__(self): - return '\n\n'.join(str(entri) for entri in self.entri) + def __str__(self, contoh=True): + result = '\n\n'.join(str(entri) for entri in self.entri) + if not contoh: + result = sub(':.*', '', result) + return result def __repr__(self): return "".format(self.nama) @@ -241,6 +245,7 @@ def _init_kelas(self, makna_label): kelas = makna_label.find(color='red') lain = makna_label.find(color='darkgreen') + info = makna_label.find(color='green') if kelas: kelas = kelas.find_all('span') if lain: @@ -251,6 +256,7 @@ def _init_kelas(self, makna_label): self.kelas = { k.text.strip(): k['title'].strip() for k in kelas } if kelas else {} + self.info = info.text.strip() if info else '' def _init_contoh(self, makna_label): """Memproses contoh yang ada dalam makna. @@ -276,6 +282,7 @@ def serialisasi(self): return { "kelas": self.kelas, "submakna": self.submakna, + "info": self.info, "contoh": self.contoh } @@ -306,6 +313,7 @@ def _contoh(self): def __str__(self): hasil = self._kelas() + ' ' if self.kelas else '' hasil += self._submakna() + hasil += ' ' + self.info if self.info else '' hasil += ': ' + self._contoh() if self.contoh else '' return hasil diff --git a/setup.py b/setup.py index 3373f66..4d13481 100644 --- a/setup.py +++ b/setup.py @@ -9,7 +9,7 @@ setup( name='kbbi', - version='0.3.0', + version='0.3.1', description=( "A module that scraps a page in the online Indonesian dictionary (KBBI)" ),