Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/joeirimpan/hdfc-cc-parser-rs
Parse hdfc cc statements into csv (regalia, freedom, infinia)
https://github.com/joeirimpan/hdfc-cc-parser-rs
card credit csv hdfc pdf statements
Last synced: 3 months ago
JSON representation
Parse hdfc cc statements into csv (regalia, freedom, infinia)
- Host: GitHub
- URL: https://github.com/joeirimpan/hdfc-cc-parser-rs
- Owner: joeirimpan
- License: mit
- Created: 2023-02-02T10:38:07.000Z (about 2 years ago)
- Default Branch: master
- Last Pushed: 2024-02-06T10:50:50.000Z (about 1 year ago)
- Last Synced: 2024-02-06T12:56:11.065Z (about 1 year ago)
- Topics: card, credit, csv, hdfc, pdf, statements
- Language: Rust
- Homepage:
- Size: 22.5 KB
- Stars: 25
- Watchers: 2
- Forks: 3
- Open Issues: 3
-
Metadata Files:
- Readme: README.md
Awesome Lists containing this project
README
# HDFC CC bill parser
This tool parse and extract information from HDFC Bank credit card statements in .csv format. The extracted information can be used for personal finance management or analytics purposes.
## Features
* Extracts transaction details such as date, description, points, amount
* Multiple pdfs can be parsed and collated into 1 CSV.## Requirements
* Rust
* HDFC credit card statements## Usage
* Clone this repository: `git clone https://github.com/joeirimpan/hdfc-cc-parser-rs.git`
* Navigate to the repository directory: cd hdfc-cc-parser-rs
* Build the project: `cargo build --release`
* Run the binary: `./target/release/hdfc-cc-parser-rs --name="NAME_AS_PER_STATEMENT" --dir --file --password --sortformat="optional format eg., %d-%m-%Y"`## Why?
A similar python implementation which uses tabula-py took 70s+ to generate a csv with 8 pdfs. With this implementation, it took only 0.02s to generate the same.
## Analytics
Assuming `clickhouse-local` is installed
* Get the points accumulated
```bash
cat output.csv | clickhouse-local --structure "tx_date Datetime, tx String, points Int32, amount Float32" --query "SELECT SUM(points) FROM table" --input-format CSV
```* Get the debits
```bash
cat output.csv | clickhouse-local --structure "tx_date Datetime, tx String, points Int32, amount Float32" --query "SELECT SUM(amount) FROM table WHERE amount < 0" --input-format CSV
```