Sebuah modul Python untuk mengambil informasi Tesaurus dari Tesaurus Tematis Kemdikbud
Project description
tesaurus-python
Versi 0.1.2
Sebuah modul Python untuk mengambil informasi Tesaurus dari Tesaurus Tematis Kemdikbud (http://tesaurus.kemdikbud.go.id/)
Fitur
- Support Asynchrounous agar bisa digunakan di fungsi async (
TesaurusAsync
) - CLI Support, agar tidak usah import manual
- Batasi hasil ke kelas kata tertentu
- Lihat hasil terkait jika tersedia.
Requirements
- Python 3.6+
- requests
- aiohttp
- beautifulsoup4
Jika anda ingin berkontribusi, anda juga butuh:
- flake8
- isort
- black
Instalasi
Melalui pypi
pip install tesaurus
Manual
- Clone repository ini
- Install requirements yaitu (
aiohttp
,requests
, danbeautifulsoup4
) atau denganpip install -r requirements.txt
- Pindahkan file
tesaurus.py
ke folder yang diinginkan.
Pengunaan
Sebagai modul
tesaurus-python dapat diimport manual sebagai modul sendiri, cukup import seperti ini objek Tesaurus
atau TesaurusAsync
jika ingin menggunakan versi async
from tesaurus import Tesaurus
te = Tesaurus()
te.cari("makan")
print(te)
Objek utama dapat menerima session dari user dengan cukup memberikan objek requests.Session
untuk Tesaurus
atau aiohttp.ClientSession
untuk TesaurusAsync
.
import requests
from tesaurus import Tesaurus
sesi = requests.Session()
sesi.headers.update({"User-Agent": ".............."})
te = Tesaurus(sesi)
te.cari("makan")
print(te)
Jika anda developer dan ingin menggunakan format dictionary, cukup panggil fungsi .serialisasi()
import json
from tesaurus import Tesaurus
te = Tesaurus(sesi)
te.cari("makan")
print(json.dumps(te.serialisasi(), indent=2))
Melalui CLI
tesaurus-python juga dapat diakses melalui CLI, cukup install via PyPI dan ketik tesaurus
Anda bisa melihat bantuan dengan menulis tesaurus -h
.
$ tesaurus
usage: tesaurus [-h] [-V] [-t] [-k {adverbia,konjungsi,nomina,numeralia,partikel,verba}] [-j] [-i N] kata
Mencari informasi tesaurus dari Tesaurus Tematis
positional arguments:
kata Kata atau kalimat yang ingin dicari
optional arguments:
-h, -b, --help, --bantuan
tampilkan pesan bantuan ini dan keluar
-V, --versi, --version
Melihat versi Tesaurus dan keluar
-t, ---dengan-terkait
Tampilkan hasil terkait (bila ada)
-k {adverbia,konjungsi,nomina,numeralia,partikel,verba}, --kelas-kata {adverbia,konjungsi,nomina,numeralia,partikel,verba}
Batasi hasil ke kelas kata tertentu
-j, --json Tampilkan hasil dengan format JSON
-i N, --indentasi N gunakan identasi sebanyak N untuk format JSON
Untuk mencari sebuah kata cukup tulis kata tersebut setelah tesaurus
$ tesaurus makan
makan
[adjektiva]
marah: bengis, berang, berangasan, berangsang, berangus, berapi-api, burangsang, gemas, geram, geregetan, gondok, gusar, hangus dada, hangus hati, jaki, jengkel, kamun, keki, makan bawang, meluap, membayang, mendidih, mengkal, mengkal hati, meradang, merah telinga, merajuk, meruak, murik, murka, naik darah, naik garam, naik palak, naik pitam, naik seh, naik setrum, palak, panas hati, pedar, pegal hati, redut, rongseng, sengiang, serangsang, sewot
malas: celih, celika, cuai, culas, gontai, kelesah, lamban, lambat, lemah, lengah, lesu, loyo, lundung, makan tidur, rengsa, sambalewa, segan, seleder, taufah, teledor, wegah (cak)
makanan: belalah, bosor makan, demap, gelojoh, kemaruk, kenyir, lahap, lalah, majuh, rakus
[nomina]
perdu: (perdu hias) alamanda, bugenvil, gambir hutan, kacapiring, krisantemum, mawar, melati, merak, nona makan sirih, nusa indah, oleander, puding, ros
bunga: akasia, alamanda, amarilis, anggrek, anyelir, aster, azalea, bakung, begonia, bugenvil, bunga bangkai, bunga gambir, bunga kemboja, bunga kana, bunga kenop, bunga landak, bunga lili, bunga matahari, bunga merak, bunga pagoda, bunga raya, bunga sepatu, bunga tahi ayam, bunga tanjung, bunga telang, bungur, cempaka, dahlia, flamboyan, gandasuli, gladiol, hortensia, jengger ayam, kacapiring, kaktus, kamelia, kecubung, kedawung, kembang asoka, kembang goyang, kembang sepatu, kemboja, kemuning, kenanga, kenikir, krisan, lavender, mawar, melati jepang, melati, nona makan sirih, nusa indah, oleander, raflesia, ros, sedap malam, serigading, seroja, tapak dara, teratai, terung susu, tulip, violet
sembuh: pantang (makan), diet, puasa, vegetarian
istirahat: jeda, rehat kopi, selingan, waktu istirahat, waktu rehat, isoma (istirahat, salat, makan siang)
nafsu: (hawa nafsu) nafsu amarah, nafsu bejat, nafsu berahi, nafsu iblis, nafsu lawamah, nafsu makan, nafsu mutmainah, nafsu seks, nafsu setan, nafsu syahwat
nafsu: (nafsu makan) begah, berliur, haus, kenyang, lahap, lapar, selera
permusuhan: musuh bebuyutan, musuh dalam selimut, musuh lama, musuh turun-temurun, pagar makan tanaman
doa: (islam) doa harian, doa bangun tidur, doa keluar kamar mandi, doa masuk pasar, doa ketika mendapat kesenangan, doa ketika mendengar geledek, doa ketika tertimpa musibah, doa membesuk orang sakit, doa pagi hari, doa sebelum bepergian, doa sebelum belajar, doa sebelum makan, doa sebelum masuk kamar mandi, doa sebelum tidur, doa selesai belajar, doa sesudah makan, doa sore hari, doa ratib, wirid, zikir, tahlil, talkin, doa kunut, doa selamat, khotbah, salat
tempat kerja: pasar swalayan, pasar tradisional, toko, toko serbaada, toko serbaneka, belerong, dukan, gerai, kedai, kios, lapak, los, kafe, kafetaria, kantin, lepau, resto (cak), restoran, rumah makan, warung, warung tenda, warteg (warung tegal), butik, galeri, studio
perdagangan: (tempat usaha) butik, gerai, hipermarket, kedai, kios, lapak, pasar, pasar swalayan, supermarket, toko, toko serba ada (toserba), warung, kantin, kafe, kafetaria, lepau, restoran, rumah makan, warteg (warung tegal), bazar, eksibisi, ekspo, fair, pekan raya, pameran, pasar murah
bangunan: (rumah makan dan minum) bar, depot, kafe, kafetaria, kantin, kedai kopi, kedai nasi, kedai susu, lapo tuak, restoran, restorasi, rumah makan, warung nasi
permukiman: (kamar) barak, bilik, petak, ruang, kamar kecil, kamar keluarga, kamar makan, kamar mandi, kamar tamu, kamar tidur, ruang cuci, ruang keluarga, ruang makan, ruang tamu, ruang tengah, gudang
peranti makan: (piring) piring cembung, piring datar, piring ikan, piring kue, piring lauk, piring makan, piring roti, piring salad
peranti makan: (sendok) sendok bebek, sendok bubur, sendok kopi, sendok es krim, sendok kue, sendok makan, sendok nasi, sendok sayur, sendok sirup, sendok sup, sendok tambul, sendok teh
peranti makan: (garpu) garpu ikan, garpu kue, garpu makan, garpu salad, garpu tiram
peranti makan: (pisau) pisau buah, pisau bistik, pisau daging, pisau dapur, pisau ikan, pisau keju, pisau kue, pisau makan, pisau meja, pisau mentega, pisau roti, pisau stik
peranti makan: (pengelap) lap, serbet, tisu, tisu gulung, tisu makan, waslap
pembersih: (lap) lap dapur, lap kaki, lap kursi, lap lantai, lap piring, lap makan, lap meja, serbet, keset
mebel dan perabot elektronik: (lemari) lemari baju, lemari besi, lemari buku, lemari dapur, lemari es, lemari gantung, lemari hias, lemari kaca, lemari makan, lemari pajangan, lemari pakaian, lemari pendingin, lemari tanam, lemari dua pintu, lemari satu pintu, lemari tiga pintu, sepen
mebel dan perabot elektronik: (kursi) kursi bar, kursi berlengan, kursi goyang, kursi lipat, kursi makan, kursi malas, kursi panjang, kursi roda, kursi setel, kursi susun, kursi taman
mebel dan perabot elektronik: (meja) meja belajar, meja dapur, meja lipat, meja makan, meja modular, meja plastik, meja putar, meja rias, meja sorong, meja sudut, meja susun, meja tamu, meja tulis, nakas
tata boga: (waktu makan) makan pagi, sarapan, makan siang, makan malam
tata boga: kafe, kafetaria, kantin, lapo, lepau, restoran, rumah makan, kedai, warung
makanan: nafsu makan, selera makan, rasa lapar, kelaparan
makanan: (kekenyangan) kebanyakan (makan), kepenuhan
makanan: ahli makan, pelahap, pencicip, perut karet (ki), tukang makan
beternak: (penyakit sapi) cacingan (cak), diare, kembung, kurang nafsu makan, penyakit kuku dan mulut, penyakit sapi gila
Bisa juga kita batasi ke kelas kata tertentu dengan parameter -k
atau --kelas-kata
$ tesaurus makan -k adjektiva
makan
[adjektiva]
marah: bengis, berang, berangasan, berangsang, berangus, berapi-api, burangsang, gemas, geram, geregetan, gondok, gusar, hangus dada, hangus hati, jaki, jengkel, kamun, keki, makan bawang, meluap, membayang, mendidih, mengkal, mengkal hati, meradang, merah telinga, merajuk, meruak, murik, murka, naik darah, naik garam, naik palak, naik pitam, naik seh, naik setrum, palak, panas hati, pedar, pegal hati, redut, rongseng, sengiang, serangsang, sewot
malas: celih, celika, cuai, culas, gontai, kelesah, lamban, lambat, lemah, lengah, lesu, loyo, lundung, makan tidur, rengsa, sambalewa, segan, seleder, taufah, teledor, wegah (cak)
makanan: belalah, bosor makan, demap, gelojoh, kemaruk, kenyir, lahap, lalah, majuh, rakus
Jika ingin mendapatkan data terkait, bisa juga memberikan parameter -t
atau --dengan-terkait
$ tesaurus makan -t -k adjektiva
Jika ingin mendapatkan dengan hasil JSON, bisa dengan memberikan parameter -j
atau --json
, untuk memberikan indentasi, cukup tambahkan param -i N
atau --indentasi N
di mana N
adalah angka.
$ tesaurus makan -k -j
{"kata": "makan", "pranala": "https://tesaurus.kemdikbud.go.id/tematis/lema/makan/adjektiva", "entri": [{"kelas": "adjektiva", "entri": [{"label": "marah", "sublabel": null, "lema": ["bengis", "berang", "berangasan", "berangsang", "berangus", "berapi-api", "burangsang", "gemas", "geram", "geregetan", "gondok", "gusar", "hangus dada", "hangus hati", "jaki", "jengkel", "kamun", "keki", "makan bawang", "meluap", "membayang", "mendidih", "mengkal", "mengkal hati", "meradang", "merah telinga", "merajuk", "meruak", "murik", "murka", "naik darah", "naik garam", "naik palak", "naik pitam", "naik seh", "naik setrum", "palak", "panas hati", "pedar", "pegal hati", "redut", "rongseng", "sengiang", "serangsang", "sewot"]}, {"label": "malas", "sublabel": null, "lema": ["celih", "celika", "cuai", "culas", "gontai", "kelesah", "lamban", "lambat", "lemah", "lengah", "lesu", "loyo", "lundung", "makan tidur", "rengsa", "sambalewa", "segan", "seleder", "taufah", "teledor", "wegah (cak)"]}, {"label": "makanan", "sublabel": null, "lema": ["belalah", "bosor makan", "demap", "gelojoh", "kemaruk", "kenyir", "lahap", "lalah", "majuh", "rakus"]}]}]}
$ tesaurus makan -k -j -i 2
{
"kata": "makan",
"pranala": "https://tesaurus.kemdikbud.go.id/tematis/lema/makan/adjektiva",
"entri": [
{
"kelas": "adjektiva",
"entri": [
{
"label": "marah",
"sublabel": null,
"lema": [
"bengis",
"berang",
"berangasan",
"berangsang",
"berangus",
"berapi-api",
"burangsang",
"gemas",
"geram",
"geregetan",
"gondok",
"gusar",
"hangus dada",
"hangus hati",
"jaki",
"jengkel",
"kamun",
"keki",
"makan bawang",
"meluap",
"membayang",
"mendidih",
"mengkal",
"mengkal hati",
"meradang",
"merah telinga",
"merajuk",
"meruak",
"murik",
"murka",
"naik darah",
"naik garam",
"naik palak",
"naik pitam",
"naik seh",
"naik setrum",
"palak",
"panas hati",
"pedar",
"pegal hati",
"redut",
"rongseng",
"sengiang",
"serangsang",
"sewot"
]
},
{
"label": "malas",
"sublabel": null,
"lema": [
"celih",
"celika",
"cuai",
"culas",
"gontai",
"kelesah",
"lamban",
"lambat",
"lemah",
"lengah",
"lesu",
"loyo",
"lundung",
"makan tidur",
"rengsa",
"sambalewa",
"segan",
"seleder",
"taufah",
"teledor",
"wegah (cak)"
]
},
{
"label": "makanan",
"sublabel": null,
"lema": [
"belalah",
"bosor makan",
"demap",
"gelojoh",
"kemaruk",
"kenyir",
"lahap",
"lalah",
"majuh",
"rakus"
]
}
]
}
]
}
Berkontribusi
Lihat CONTRIBUTING.md
Perubahan
Lihat CHANGELOG.md
Lisensi
Modul ini didistribusikan dengan lisensi MIT.
Penutup
Projek ini dibuat untuk keperluan pribadi dan tidak ada afiliasi dengan Kemdikbud. Projek ini mengambil inspirasi dari kbbi-python oleh laymonage.
Logo yang dipakai di bagian atas header merupakan logo favicon dari website Tesaurus Tematis, logo dibuat ulang di Photoshop dikarenakan resolusi yang rendah. Kredit logo asli merupakan hak milik Kemdikbud.
Project details
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distribution
File details
Details for the file tesaurus-0.1.3.tar.gz
.
File metadata
- Download URL: tesaurus-0.1.3.tar.gz
- Upload date:
- Size: 16.7 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/3.5.0 importlib_metadata/4.8.1 pkginfo/1.7.1 requests/2.26.0 requests-toolbelt/0.9.1 tqdm/4.62.3 CPython/3.9.7
File hashes
Algorithm | Hash digest | |
---|---|---|
SHA256 | 634b3a6827f262050e67a92da0ba7cc128f4d84c38a2223fd55d0854dfd96b1f |
|
MD5 | 8face236c41b2728132226de27961f11 |
|
BLAKE2b-256 | d54be46c386d380f6187890d2493045fe15e4f479c2af75f1e18ae6b97910142 |
File details
Details for the file tesaurus-0.1.3-py3-none-any.whl
.
File metadata
- Download URL: tesaurus-0.1.3-py3-none-any.whl
- Upload date:
- Size: 12.6 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/3.5.0 importlib_metadata/4.8.1 pkginfo/1.7.1 requests/2.26.0 requests-toolbelt/0.9.1 tqdm/4.62.3 CPython/3.9.7
File hashes
Algorithm | Hash digest | |
---|---|---|
SHA256 | 60e9e5fc68172e85d518f695442597f1967c0689fa6bd8b74a61ffac3e5ac803 |
|
MD5 | 38ce54401b215c88da114b62d1bc2294 |
|
BLAKE2b-256 | 675bacdd4e48c59f74f6f3945cf947e85f2b604b65b684b7c1c6daec4f3a750f |