ocbc-dbs-statement-parser


Nameocbc-dbs-statement-parser JSON
Version 0.2.1 PyPI version JSON
download
home_pagehttps://github.com/seahyc/bank_statement_parser
SummaryA tool to parse OCBC and DBS bank and credit card statements from PDF files
upload_time2024-10-10 06:06:04
maintainerNone
docs_urlNone
authorSeah Ying Cong
requires_python<3.9,>=3.7
licenseNone
keywords
VCS
bugtrack_url
requirements camelot-py cffi chardet charset-normalizer click cryptography et-xmlfile exceptiongroup ghostscript importlib_resources iniconfig numpy opencv-python openpyxl packaging pandas pandas-stubs pdfminer.six pdftopng pluggy pycountry pycparser pypdf pytest python-dateutil pytz six tabulate tomli types-pytz typing_extensions tzdata zipp
Travis-CI No Travis.
coveralls test coverage No coveralls.
            # OCBC DBS Statement Parser

A Python tool to parse bank statements from PDF files, specifically designed for OCBC and DBS statements but potentially compatible with other banks.

## Requirements

- Python 3.7 or 3.8

# Installation

```
pip install ocbc-dbs-statement-parser
```

or if you're running it from source:

```
pip install -e .
```

# Usage

```
python -m ocbc-dbs-statement-parser <pdf_path> [--debug] [--verify] [--help]
```

Locally
```
python -m ocbc-dbs-statement-parser.cli <pdf_path> [--debug] [--verify][--help]
```

## Features

- Extracts transactions from bank account and credit card statements
- Supports various date formats
- Verifies transaction totals
- Debug mode for detailed output

## Development

### Setup

1. Clone the repository
2. Create a virtual environment: `python -m venv venv`
3. Activate the virtual environment:
   - Windows: `venv\Scripts\activate`
   - macOS/Linux: `source venv/bin/activate`
4. Install dependencies: `pip install -r requirements.txt`

### Testing

To run tests using pytest, execute the following command:

```
pytest tests/test_main.py
```

### Push releases

```
bumpversion patch|minor|major
git push && git push --tags
```

## Dependencies

The main dependencies for this project are:

- camelot-py==0.11.0
- pandas==2.0.3
- pycountry==24.6.1
- pypdf==4.3.1

For a complete list of dependencies, please refer to the `requirements.txt` file.

## License

This project is licensed under the MIT License.

## Contributing

Contributions are welcome! Please feel free to submit a Pull Request.

            

Raw data

            {
    "_id": null,
    "home_page": "https://github.com/seahyc/bank_statement_parser",
    "name": "ocbc-dbs-statement-parser",
    "maintainer": null,
    "docs_url": null,
    "requires_python": "<3.9,>=3.7",
    "maintainer_email": null,
    "keywords": null,
    "author": "Seah Ying Cong",
    "author_email": "seahyingcong@gmail.com",
    "download_url": "https://files.pythonhosted.org/packages/9b/64/195d833df31c6d2c176e07f7938b029579de02a915c9b2446f39e6d0cd80/ocbc_dbs_statement_parser-0.2.1.tar.gz",
    "platform": null,
    "description": "# OCBC DBS Statement Parser\n\nA Python tool to parse bank statements from PDF files, specifically designed for OCBC and DBS statements but potentially compatible with other banks.\n\n## Requirements\n\n- Python 3.7 or 3.8\n\n# Installation\n\n```\npip install ocbc-dbs-statement-parser\n```\n\nor if you're running it from source:\n\n```\npip install -e .\n```\n\n# Usage\n\n```\npython -m ocbc-dbs-statement-parser <pdf_path> [--debug] [--verify] [--help]\n```\n\nLocally\n```\npython -m ocbc-dbs-statement-parser.cli <pdf_path> [--debug] [--verify][--help]\n```\n\n## Features\n\n- Extracts transactions from bank account and credit card statements\n- Supports various date formats\n- Verifies transaction totals\n- Debug mode for detailed output\n\n## Development\n\n### Setup\n\n1. Clone the repository\n2. Create a virtual environment: `python -m venv venv`\n3. Activate the virtual environment:\n   - Windows: `venv\\Scripts\\activate`\n   - macOS/Linux: `source venv/bin/activate`\n4. Install dependencies: `pip install -r requirements.txt`\n\n### Testing\n\nTo run tests using pytest, execute the following command:\n\n```\npytest tests/test_main.py\n```\n\n### Push releases\n\n```\nbumpversion patch|minor|major\ngit push && git push --tags\n```\n\n## Dependencies\n\nThe main dependencies for this project are:\n\n- camelot-py==0.11.0\n- pandas==2.0.3\n- pycountry==24.6.1\n- pypdf==4.3.1\n\nFor a complete list of dependencies, please refer to the `requirements.txt` file.\n\n## License\n\nThis project is licensed under the MIT License.\n\n## Contributing\n\nContributions are welcome! Please feel free to submit a Pull Request.\n",
    "bugtrack_url": null,
    "license": null,
    "summary": "A tool to parse OCBC and DBS bank and credit card statements from PDF files",
    "version": "0.2.1",
    "project_urls": {
        "Homepage": "https://github.com/seahyc/bank_statement_parser"
    },
    "split_keywords": [],
    "urls": [
        {
            "comment_text": "",
            "digests": {
                "blake2b_256": "be4fb3569344a2ef6850a6b1ab2a4bd996dfd75b775c7fcd79aa09906e36b294",
                "md5": "d5c21124b4cf5b10c8735cb7cb58b3e6",
                "sha256": "102b15ac9bfa138833961b24e6485055c1be46c711e24f38364c05f6c7ec9565"
            },
            "downloads": -1,
            "filename": "ocbc_dbs_statement_parser-0.2.1-py3-none-any.whl",
            "has_sig": false,
            "md5_digest": "d5c21124b4cf5b10c8735cb7cb58b3e6",
            "packagetype": "bdist_wheel",
            "python_version": "py3",
            "requires_python": "<3.9,>=3.7",
            "size": 11138,
            "upload_time": "2024-10-10T06:06:03",
            "upload_time_iso_8601": "2024-10-10T06:06:03.337474Z",
            "url": "https://files.pythonhosted.org/packages/be/4f/b3569344a2ef6850a6b1ab2a4bd996dfd75b775c7fcd79aa09906e36b294/ocbc_dbs_statement_parser-0.2.1-py3-none-any.whl",
            "yanked": false,
            "yanked_reason": null
        },
        {
            "comment_text": "",
            "digests": {
                "blake2b_256": "9b64195d833df31c6d2c176e07f7938b029579de02a915c9b2446f39e6d0cd80",
                "md5": "1b00dbfb255dd69917af34f0495bd652",
                "sha256": "3fa2820dd31ee89362ded4ddd6673a89bb9ef446ccdea3dcbd7ad4a894679569"
            },
            "downloads": -1,
            "filename": "ocbc_dbs_statement_parser-0.2.1.tar.gz",
            "has_sig": false,
            "md5_digest": "1b00dbfb255dd69917af34f0495bd652",
            "packagetype": "sdist",
            "python_version": "source",
            "requires_python": "<3.9,>=3.7",
            "size": 28499,
            "upload_time": "2024-10-10T06:06:04",
            "upload_time_iso_8601": "2024-10-10T06:06:04.819370Z",
            "url": "https://files.pythonhosted.org/packages/9b/64/195d833df31c6d2c176e07f7938b029579de02a915c9b2446f39e6d0cd80/ocbc_dbs_statement_parser-0.2.1.tar.gz",
            "yanked": false,
            "yanked_reason": null
        }
    ],
    "upload_time": "2024-10-10 06:06:04",
    "github": true,
    "gitlab": false,
    "bitbucket": false,
    "codeberg": false,
    "github_user": "seahyc",
    "github_project": "bank_statement_parser",
    "travis_ci": false,
    "coveralls": false,
    "github_actions": true,
    "requirements": [
        {
            "name": "camelot-py",
            "specs": [
                [
                    "==",
                    "0.11.0"
                ]
            ]
        },
        {
            "name": "cffi",
            "specs": [
                [
                    "==",
                    "1.17.1"
                ]
            ]
        },
        {
            "name": "chardet",
            "specs": [
                [
                    "==",
                    "5.2.0"
                ]
            ]
        },
        {
            "name": "charset-normalizer",
            "specs": [
                [
                    "==",
                    "3.3.2"
                ]
            ]
        },
        {
            "name": "click",
            "specs": [
                [
                    "==",
                    "8.1.7"
                ]
            ]
        },
        {
            "name": "cryptography",
            "specs": [
                [
                    "==",
                    "43.0.1"
                ]
            ]
        },
        {
            "name": "et-xmlfile",
            "specs": [
                [
                    "==",
                    "1.1.0"
                ]
            ]
        },
        {
            "name": "exceptiongroup",
            "specs": [
                [
                    "==",
                    "1.2.2"
                ]
            ]
        },
        {
            "name": "ghostscript",
            "specs": [
                [
                    "==",
                    "0.7"
                ]
            ]
        },
        {
            "name": "importlib_resources",
            "specs": [
                [
                    "==",
                    "6.4.5"
                ]
            ]
        },
        {
            "name": "iniconfig",
            "specs": [
                [
                    "==",
                    "2.0.0"
                ]
            ]
        },
        {
            "name": "numpy",
            "specs": [
                [
                    "==",
                    "1.24.4"
                ]
            ]
        },
        {
            "name": "opencv-python",
            "specs": [
                [
                    "==",
                    "4.10.0.84"
                ]
            ]
        },
        {
            "name": "openpyxl",
            "specs": [
                [
                    "==",
                    "3.1.5"
                ]
            ]
        },
        {
            "name": "packaging",
            "specs": [
                [
                    "==",
                    "24.1"
                ]
            ]
        },
        {
            "name": "pandas",
            "specs": [
                [
                    "==",
                    "2.0.3"
                ]
            ]
        },
        {
            "name": "pandas-stubs",
            "specs": [
                [
                    "==",
                    "2.0.3.230814"
                ]
            ]
        },
        {
            "name": "pdfminer.six",
            "specs": [
                [
                    "==",
                    "20240706"
                ]
            ]
        },
        {
            "name": "pdftopng",
            "specs": [
                [
                    "==",
                    "0.2.3"
                ]
            ]
        },
        {
            "name": "pluggy",
            "specs": [
                [
                    "==",
                    "1.5.0"
                ]
            ]
        },
        {
            "name": "pycountry",
            "specs": [
                [
                    "==",
                    "24.6.1"
                ]
            ]
        },
        {
            "name": "pycparser",
            "specs": [
                [
                    "==",
                    "2.22"
                ]
            ]
        },
        {
            "name": "pypdf",
            "specs": [
                [
                    "==",
                    "4.3.1"
                ]
            ]
        },
        {
            "name": "pytest",
            "specs": [
                [
                    "==",
                    "8.3.3"
                ]
            ]
        },
        {
            "name": "python-dateutil",
            "specs": [
                [
                    "==",
                    "2.9.0.post0"
                ]
            ]
        },
        {
            "name": "pytz",
            "specs": [
                [
                    "==",
                    "2024.1"
                ]
            ]
        },
        {
            "name": "six",
            "specs": [
                [
                    "==",
                    "1.16.0"
                ]
            ]
        },
        {
            "name": "tabulate",
            "specs": [
                [
                    "==",
                    "0.9.0"
                ]
            ]
        },
        {
            "name": "tomli",
            "specs": [
                [
                    "==",
                    "2.0.1"
                ]
            ]
        },
        {
            "name": "types-pytz",
            "specs": [
                [
                    "==",
                    "2024.1.0.20240417"
                ]
            ]
        },
        {
            "name": "typing_extensions",
            "specs": [
                [
                    "==",
                    "4.12.2"
                ]
            ]
        },
        {
            "name": "tzdata",
            "specs": [
                [
                    "==",
                    "2024.1"
                ]
            ]
        },
        {
            "name": "zipp",
            "specs": [
                [
                    "==",
                    "3.20.2"
                ]
            ]
        }
    ],
    "lcname": "ocbc-dbs-statement-parser"
}
        
Elapsed time: 0.40045s