semvec/pypi-packages huggingface dataset:
lichens 0.1.0
ETL framework for Colosscious Pharmquer
License: MIT
Requires Python: >=3.10,<3.13

# lichens
ETL framework for Colosscious Pharmquer.  
It contains a Web UI and a backend. See [Colosscious Official Website](https://www.colosscious.com) for more. 

## Installation 
```
pip install lichens
```

## Example
### Setup 
```bash
# Command
python -m lichens --help
# Output:
# Usage: python -m lichens [OPTIONS] COMMAND [ARGS]...
# 
# Options:
#   --help  Show this message and exit.
# 
# Commands:
#   add-etl       Add an ETL program setting from a JSON
#   get-template  Generate an ETL program setting to a JSON
#   migrate       Make and migrate the system tables.

# Initialize the database if needed. 
python -m lichens migrate \
-c driver://user:pass@localhost:port/dbname 


# Create an ETL setting template
python -m lichens get-template \


# Create it in the database
python -m lichens add-etl \
--connection-string driver://user:pass@localhost:port/dbname \
--json-config etl-setting.json
```
### Write an ETL
See [full example](https://github.com/thisishugow/lichens/blob/main/example/example_load-csv.py) 

```python
# Create an ETL Manager
from lichens import EtlManager
em = EtlManager(constr=CONNECTION_STRING, name=ETL_NAME)

# Use Pandera to validate data
from lichens import DataFrameSchema, check_io
schema = DataFrameSchema(...)
validated_df = schema(df)

## Load df to datebase
em.load_df(
        df=df,
        tablename="sample_table",
        schema="public",
        if_exists="raise_error",
        chunksize=500,
        unique_key=["column1", "column2"],
    )

# Update log and archive file
em.update_status(
        filename=f, 
        status=_status, 
        last_log=_last_log)
em.move(
    src=os.path.join(em.src_folder, f),
    status=_status)

# Use state highlighted logger
from lichens.logging import logger as log

# Run as scheduled
## Define a function to be executed
def your_function():
    # Your function logic here
    pass

# Run the function every minute for a total of 5 times
em.run_as_schtask(your_function, '*/1 * * * *', times_=5)
## Decorate the function with the scheduled decorator
@em.scheduled(crontab='*/1 * * * *', times_=5)
def your_scheduled_function():
    # Your function logic here
    pass
```
areaid 1.1.2
Indonesian regional data administration
License: MIT
Requires Python: >=3.10,<4.0
Keywords: area,admin,indonesia,data,administration,administrasi,wilayah,daerah

# Ucapan Sambutan
Terima kasih telah memilih pustaka ini untuk menangani kesulitan dalam mengisi formulir yang membutuhkan data alamat secara lengkap berserta kode posnya. Pustaka ini memiliki data yang lengkap perihal wilayah administrasi di indonesia, mulai data nama provinsi, kabupaten, kecamatan, dan kelurahan/desa berserta kode posnya.

## Cara Instalasi
Cukup mudah tinggal salin teks dibawah ini dan tempelkan diterminal
```
pip install areaid
```

## Cara Menggunakan Dan Contoh Program
Ada dua fungsi utama di pustaka ini, **buka_data** dan **buka_nama**\
**buka_data** berfungsi untuk membuka berkas json berdasarkan nama berkas json \
**buka_nama** berfungsi unutk membuka berkas json untuk melihat nama - nama provinsi \
berikut contoh cara menggunakan kedua fungsi :

---

contoh **buka_data**
```python
from areaid import buka_data

# di contoh ini menggunakan aceh
bb = buka_data("aceh")
print(bb)
```
---
contoh **buka_nama**
```python
from areaid import buka_nama, buka_data

# fungsi buka_nama() berguna untuk melihat nama provinsi yang digunakan sebagai parameter buka_data()
bb = buka_nama()
print(bb)

# menggunakan buka_nama sebagai parameter
dd = buka_data(bb["himpunan"][3].lower())
print(dd)
```

## Sumber 
Data pada repositori ini diolah dan dibuat berdasarkan [github.com/ichadhr/db-wilayah-indonesia](https://github.com/ichadhr/db-wilayah-indonesia)