Skip to main content

Python CLI utility and library for handling data exported from KNV & pcbis.de

Project description

KNV Tools

Getting started

It might be preferable to install knvcli inside a virtual environment. This can be done using the setup.bash script included in this repository - always check the respective file content before executing the following command, though:

curl -sf https://raw.githubusercontent.com/fundevogel/knv-tools/main/setup.bash | bash

This will

  • setup a virtual environment via virtualenv
  • install the knvcli module
  • create recommended folders

After that, simply activate the virtual environment with source .env/bin/activate and you're good to go.

Alternatively, you may install it globally, using pip:

pip install git+https://github.com/Fundevogel/knv-tools.git

Configuration

Adjusting most options to suit your needs is straightforward, global config is stored in ${XDG_CONFIG_HOME}/knv-cli/config (following XDG specifications) and defaults to this:

[DEFAULT]
vkn = 12345                        # 'Verkehrsnummer'
verbose = off                      # Enable verbose mode

[directories]
data_dir = ~/.local/share/knv-cli  # database directory
import_dir = ./imports             # files to be processed & imported to database
export_dir = ./dist                # generated spreadsheets & graphs

[api]
credentials = ./login.log            # JSON file containing KNV credentials

As you can see, many config options refer to the directory from which knvcli is being called.

In addition, you might want to provide a list of emails being ignored (for example, people opting out of your email marketing campaign) when creating contact lists using knvcli contacts. This can be done by providing a blocklist.txt in your current directory or using the CLI option -b. The blocklist should contain one entry per line, like this:

block-me@example.com
pls-me-2@example.com
f!@#ck-u@example.com

Roadmap

In the future, the following features & improvements are planned:

  • bar charts for sales rankings
  • export functions for Database
  • preparing tax declarations using automation
  • .. and much more

:copyright: Fundevogel Kinder- und Jugendbuchhandlung

Project details


Release history Release notifications | RSS feed

This version

0.8

Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

knv-cli-0.8.tar.gz (48.5 kB view details)

Uploaded Source

Built Distribution

knv_cli-0.8-py3-none-any.whl (64.5 kB view details)

Uploaded Python 3

File details

Details for the file knv-cli-0.8.tar.gz.

File metadata

  • Download URL: knv-cli-0.8.tar.gz
  • Upload date:
  • Size: 48.5 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/3.4.1 importlib_metadata/4.5.0 pkginfo/1.7.0 requests/2.25.1 requests-toolbelt/0.9.1 tqdm/4.61.1 CPython/3.9.5

File hashes

Hashes for knv-cli-0.8.tar.gz
Algorithm Hash digest
SHA256 97da60d6dea4825654d3bfcad233d05693c829d55fba9e33d0860a43924f55a0
MD5 53e3d8541cbb17b54ef8975dbd1939b4
BLAKE2b-256 ad626fec49ef8963ad1b14560467dcb5bdcd955efcf8a7faf06475f292510273

See more details on using hashes here.

File details

Details for the file knv_cli-0.8-py3-none-any.whl.

File metadata

  • Download URL: knv_cli-0.8-py3-none-any.whl
  • Upload date:
  • Size: 64.5 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/3.4.1 importlib_metadata/4.5.0 pkginfo/1.7.0 requests/2.25.1 requests-toolbelt/0.9.1 tqdm/4.61.1 CPython/3.9.5

File hashes

Hashes for knv_cli-0.8-py3-none-any.whl
Algorithm Hash digest
SHA256 29b9a32204821745d114ec8913d27931964e012b450584b1505afdc24fd84078
MD5 b7539e5a5269f3b8821549bab1f807c6
BLAKE2b-256 182ca121ad950007d95ad95510c4a478cc6a7e1a1779aa36d29a65b2df1ab6fc

See more details on using hashes here.

Supported by

AWS AWS Cloud computing and Security Sponsor Datadog Datadog Monitoring Fastly Fastly CDN Google Google Download Analytics Microsoft Microsoft PSF Sponsor Pingdom Pingdom Monitoring Sentry Sentry Error logging StatusPage StatusPage Status page