Skip to main content

Utility Bill Processor

Project description

utility_bill_processor

This project uses the Landing.AI Python library to parse and extract data from Greek utility bills. This may be part of a larger workflow, that stores the extracted data in a database, in order to perform data analysis. Although the package was tested using greek utility bills, it should also work with foreign utility bills.

The package uses GitHub Actions for automated regression testing upon every push/pull event, as well as an automated CI/CD pipeline to build and publish the package to TestPyPi. If the publication is successful, then the package is also uploaded to PyPi.

Please note that the VISION_AGENT_API_KEY environment variable must be set to the API key value in order for the Landing.AI python library to work.

A caching mechanism has been added (use_cache option), which instructs the processor to look for a corresponding parse/extract results file in the 'output' directory. These files are the JSON dumps of the Landing.AI client's responses during normal operation. If use_cache is True and such a file is found, then the file contents are used by the processor, instead of calling the Landing.AI client. This is particularly useful during development, testing and demonstrations, since the flow is faster and no credits are consumed. Please note howeever, that if the invoice or the model (and therefore the schema) is changed, use_cache is True will return stale results, so it must be used with caution. Future development will include the ability for the processor to automatically determine whether the cache is dirty and if so, try to use the Landing.AI client to fetch fresh results.

Installation

You can install the package via pip: pip install iraklis7_ubp -r requirements.txt

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

iraklis7_ubp-1.1.0.tar.gz (6.3 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

iraklis7_ubp-1.1.0-py3-none-any.whl (5.9 kB view details)

Uploaded Python 3

File details

Details for the file iraklis7_ubp-1.1.0.tar.gz.

File metadata

  • Download URL: iraklis7_ubp-1.1.0.tar.gz
  • Upload date:
  • Size: 6.3 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/6.1.0 CPython/3.13.7

File hashes

Hashes for iraklis7_ubp-1.1.0.tar.gz
Algorithm Hash digest
SHA256 e4f1241906ea2045d38f1a6f5e275f85c2b894c99f059870294fb3bcf7c00e55
MD5 7ad9300897a1a274180e4d373cf76126
BLAKE2b-256 68e90335b26555c5909ae0a3afc1877b404592c78ffbf8359ddb1ce390bae811

See more details on using hashes here.

Provenance

The following attestation bundles were made for iraklis7_ubp-1.1.0.tar.gz:

Publisher: publish-app.yml on iraklis7/iraklis7_ubp

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file iraklis7_ubp-1.1.0-py3-none-any.whl.

File metadata

  • Download URL: iraklis7_ubp-1.1.0-py3-none-any.whl
  • Upload date:
  • Size: 5.9 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/6.1.0 CPython/3.13.7

File hashes

Hashes for iraklis7_ubp-1.1.0-py3-none-any.whl
Algorithm Hash digest
SHA256 ed3a9a95835f1c5e8583824686ea92d97e47c2a82ceb11033bfadd5c02b7cb97
MD5 46ed9eaa4a6610656b2e0f7e0b9203ce
BLAKE2b-256 e3d17376c80b3b6e7f29cc60d0b5773ed0ecd9c0c0a9d0ce19e79101827fe84f

See more details on using hashes here.

Provenance

The following attestation bundles were made for iraklis7_ubp-1.1.0-py3-none-any.whl:

Publisher: publish-app.yml on iraklis7/iraklis7_ubp

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

Supported by

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