Skip to content

Commit 1c6b663

Browse files
authored
Merge pull request #1 from laymonage/0.3-rewrite
Rilis 0.3.0
2 parents f6c1e40 + 3b108db commit 1c6b663

File tree

9 files changed

+663
-100
lines changed

9 files changed

+663
-100
lines changed

.gitignore

Lines changed: 5 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,5 @@
1+
.vscode/
2+
**__pycache__/
3+
build/
4+
dist/
5+
kbbi.egg-info/

LICENSE

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
11
MIT License
22

3-
Copyright (c) 2017 sage
3+
Copyright (c) 2017-2019 sage
44

55
Permission is hereby granted, free of charge, to any person obtaining a copy
66
of this software and associated documentation files (the "Software"), to deal

Pipfile

Lines changed: 14 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,14 @@
1+
[[source]]
2+
name = "pypi"
3+
url = "https://pypi.org/simple"
4+
verify_ssl = true
5+
6+
[dev-packages]
7+
pylint = "*"
8+
9+
[packages]
10+
requests = "*"
11+
beautifulsoup4 = "*"
12+
13+
[requires]
14+
python_version = "3.7"

Pipfile.lock

Lines changed: 175 additions & 0 deletions
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

README.md

Lines changed: 109 additions & 26 deletions
Original file line numberDiff line numberDiff line change
@@ -1,48 +1,131 @@
1-
# [WIP] kbbi-python
2-
3-
Modul Python untuk mengambil entri sebuah kata/frase dalam KBBI Daring
4-
(https://kbbi.kemdikbud.go.id).
1+
# kbbi-python
52

3+
Modul Python untuk mengambil sebuah laman untuk kata/frasa dalam [KBBI Daring][kbbi].
64

75
## Instalasi
86

97
### Melalui pip
108

119
```bash
12-
$ pip install kbbi
10+
pip install kbbi
1311
```
1412

15-
1613
### Manual
1714

18-
- Clone repositori ini atau unduh kbbi.py
19-
- Letakkan kbbi.py dalam direktori yang Anda inginkan
20-
15+
1. Lakukan instalasi untuk paket-paket prasyarat ([`requests`][requests]
16+
dan [`BeautifulSoup4`][beautifulsoup4]).
17+
2. Klonakan repositori ini atau unduh [`kbbi.py`][kbbi-py].
18+
3. Letakkan `kbbi.py` dalam direktori yang Anda inginkan.
2119

2220
## Penggunaan
2321

24-
```bash
25-
$ python
26-
```
22+
Buat objek `KBBI` baru (contoh: `kata = KBBI('kata kunci')`), lalu manfaatkan
23+
representasi `str`-nya dengan memanggil `str(kata)` atau ambil `dict` hasil
24+
serialisasinya dengan memanggil `kata.serialisasi()`.
25+
26+
Untuk lebih jelasnya, lihat contoh berikut.
2727

2828
```python
2929
>>> from kbbi import KBBI
3030
>>> cinta = KBBI('cinta')
3131
>>> print(cinta)
32+
cin.ta
33+
1. (a) suka sekali; sayang benar: orang tuaku -- kepada kami semua; -- kepada sesama makhluk
34+
2. (a) kasih sekali; terpikat (antara laki-laki dan perempuan): sebenarnya dia tidak -- kepada lelaki itu, tetapi hanya menginginkan hartanya
35+
3. (a) ingin sekali; berharap sekali; rindu: makin ditindas makin terasa betapa --nya akan kemerdekaan
36+
4. (a) (kl) susah hati (khawatir); risau: tiada terperikan lagi --nya ditinggalkan ayahnya itu
3237
```
33-
```text
34-
(a) suka sekali; sayang benar
35-
(a) kasih sekali; terpikat (antara laki-laki dan perempuan)
36-
(a) ingin sekali; berharap sekali; rindu
37-
(a kl) susah hati (khawatir); risau
38-
```
38+
3939
```python
40-
>>> for setiap in cinta.arti_contoh:
41-
>>> print(setiap)
42-
```
43-
```text
44-
(a) suka sekali; sayang benar: orang tuaku -- kepada kami semua; -- kepada sesama makhluk
45-
(a) kasih sekali; terpikat (antara laki-laki dan perempuan): sebenarnya dia tidak -- kepada lelaki itu, tetapi hanya menginginkan hartanya
46-
(a) ingin sekali; berharap sekali; rindu: makin ditindas makin terasa betapa --nya akan kemerdekaan
47-
(a kl) susah hati (khawatir); risau: tiada terperikan lagi --nya ditinggalkan ayahnya itu
40+
>>> kata = KBBI('taksir')
41+
>>> print(kata)
42+
tak.sir [1]
43+
(n) kira-kira; hitungan (kasar)
44+
45+
tak.sir [2]
46+
1. (a) (Ar) tidak mengindahkan; lalai; alpa
47+
2. (n) (Ar) kelalaian; kealpaan
48+
>>> import json
49+
>>> print(json.dumps(kata.serialisasi(), indent=2))
50+
{
51+
"taksir": [
52+
{
53+
"nama": "tak.sir",
54+
"nomor": "1",
55+
"kata_dasar": [],
56+
"pelafalan": "",
57+
"bentuk_tidak_baku": [],
58+
"varian": [],
59+
"makna": [
60+
{
61+
"kelas": {
62+
"n": "Nomina: kata benda"
63+
},
64+
"submakna": [
65+
"kira-kira",
66+
"hitungan (kasar)"
67+
],
68+
"contoh": []
69+
}
70+
]
71+
},
72+
{
73+
"nama": "tak.sir",
74+
"nomor": "2",
75+
"kata_dasar": [],
76+
"pelafalan": "",
77+
"bentuk_tidak_baku": [],
78+
"varian": [],
79+
"makna": [
80+
{
81+
"kelas": {
82+
"a": "Adjektiva: kata yang menjelaskan nomina atau pronomina",
83+
"Ar": "Arab: -"
84+
},
85+
"submakna": [
86+
"tidak mengindahkan",
87+
"lalai",
88+
"alpa"
89+
],
90+
"contoh": []
91+
},
92+
{
93+
"kelas": {
94+
"n": "Nomina: kata benda",
95+
"Ar": "Arab: -"
96+
},
97+
"submakna": [
98+
"kelalaian",
99+
"kealpaan"
100+
],
101+
"contoh": []
102+
}
103+
]
104+
}
105+
]
106+
}
48107
```
108+
109+
## Lisensi
110+
111+
Proyek ini didistribusikan dengan lisensi [MIT][license].
112+
113+
## Penafian
114+
115+
Proyek ini merupakan proyek pribadi yang didasari oleh rasa cinta kepada
116+
bahasa Indonesia dan bahasa pemrograman Python. Proyek ini bertujuan untuk
117+
memudahkan akses ke KBBI daring tanpa menggunakan peramban web. Proyek ini
118+
tidak dimaksudkan untuk menyalahi [hak cipta KBBI daring][hukum]. Proyek ini
119+
dan pengembangnya tidak berafiliasi dengan
120+
[Badan Bahasa Kemdikbud][badan-bahasa] maupun
121+
[Python Software Foundation][psf]. Pengembang tidak bertanggung jawab atas
122+
penyalahgunaan yang mungkin muncul dari proyek ini.
123+
124+
[kbbi]: https://kbbi.kemdikbud.go.id
125+
[requests]: https://pypi.org/project/requests
126+
[beautifulsoup4]: https://pypi.org/project/requests/beautifulsoup4
127+
[kbbi-py]: kbbi/kbbi.py
128+
[license]: LICENSE
129+
[hukum]: https://kbbi.kemdikbud.go.id/Beranda/Hukum
130+
[badan-bahasa]: http://badanbahasa.kemdikbud.go.id
131+
[psf]: https://www.python.org/psf

0 commit comments

Comments
 (0)