This project is a collection of scripts that automate fetching statements or scraping financial data from financial institutions' websites, e.g., Interactive Brokers, BCGE.
You can use the fetched data to process it into a different database, e.g., hledupt uses this data to produce plaintext accounting files.
Currently implemented fetchers are:
- BCGE's account statement
- (BCGE CC) Viseca's latest credit card bill
- Charles Schwab's account history
- Coop receipt PDF from gmail
- Degiro's portfolio and account statements
- Finpension's transaction report (through gmail)
- Interactive Brokers' MTM summary statement
- mBank's account statement
- Splitwise's balance statement
-
You have two choices for installation. I recommend using pipx, which will install the app in a standalone environment:
pipx install .
alternatively, you may just go with pip:
pip install --editable .
Findata-fetcher provides shell completion through Click. To enable shell completion, follow its instructions.
pipenv shell # If not already using pipenv
python -m fetcher.tool --help
This section is meant for developers and provides instruction on how to work with the repository.
This project requires Lefthook and Commitlint.
Set up Pipenv:
pipenv install --dev
Install lefthook:
lefthook install
Also install direnv to benefit from some dev tools.
To run tests, use testall
.
To run tests and check for coverage, use coverage
.