kapfinance


Namekapfinance JSON
Version 0.1.2 PyPI version JSON
download
home_pagehttps://github.com/mertkurtcu/kapfinance
SummaryA Python class for managing financial statement data from HTML-based XLS files.
upload_time2025-07-29 20:25:05
maintainerNone
docs_urlNone
authorMert Kurtçu
requires_python>=3.8
licenseNone
keywords financial data manager financial statements balance sheet income statement html xls pandas
VCS
bugtrack_url
requirements No requirements were recorded.
Travis-CI No Travis.
coveralls test coverage No coveralls.
            # Financial Data Manager

[![PyPI version](https://badge.fury.io/py/kapfinance.svg)](https://pypi.org/project/kapfinance/)
[![License: MIT](https://img.shields.io/badge/License-MIT-yellow.svg)](https://opensource.org/licenses/MIT)

This Python class, `kapfinance`, is designed to read, process, and manage financial `.xls` files (which contain HTML content) located within a specified root folder and its subfolders. It's particularly useful for extracting financial statement data on a **ticker-by-ticker basis**, implementing a **lazy loading** mechanism for efficient memory usage.

---

## Features

* **Automated File Mapping**: Scans a given directory to build a comprehensive map of all available financial statement files, identifying tickers and reporting periods.
* **HTML Content Processing**: Reads `.xls` files (often used for financial reports that are essentially HTML tables), extracts relevant financial account descriptions and their corresponding values.
* **Lazy Loading**: Data for a specific ticker is only loaded into memory when explicitly requested, optimizing memory usage for large datasets.
* **Time-Series Data Retrieval**: Provides a convenient method to retrieve financial data as a **pandas DataFrame**, with account descriptions as rows and reporting periods as columns, sorted chronologically.
* **Period Filtering**: Allows users to filter financial data by specifying a start and end reporting period (in `'YYYY_QQ'` format, e.g., `'2020_01'`, `'2022_04'`).
* **Robust Error Handling**: Includes logging for various scenarios, such as missing folders, file processing errors, and unavailable data.

---

## Getting Started

### Prerequisites

To use this class, you'll need the following Python libraries installed:

```bash
pip install pandas numpy lxml openpyxl

            

Raw data

            {
    "_id": null,
    "home_page": "https://github.com/mertkurtcu/kapfinance",
    "name": "kapfinance",
    "maintainer": null,
    "docs_url": null,
    "requires_python": ">=3.8",
    "maintainer_email": null,
    "keywords": "financial data manager, financial statements, balance sheet, income statement, html xls, pandas",
    "author": "Mert Kurt\u00e7u",
    "author_email": "mertkurtcu.official@gmail.com.com",
    "download_url": "https://files.pythonhosted.org/packages/36/42/c6c64cc5cd77457c61ee76a82eebb570b45674322873ff5de7456558c9b8/kapfinance-0.1.2.tar.gz",
    "platform": null,
    "description": "# Financial Data Manager\r\n\r\n[![PyPI version](https://badge.fury.io/py/kapfinance.svg)](https://pypi.org/project/kapfinance/)\r\n[![License: MIT](https://img.shields.io/badge/License-MIT-yellow.svg)](https://opensource.org/licenses/MIT)\r\n\r\nThis Python class, `kapfinance`, is designed to read, process, and manage financial `.xls` files (which contain HTML content) located within a specified root folder and its subfolders. It's particularly useful for extracting financial statement data on a **ticker-by-ticker basis**, implementing a **lazy loading** mechanism for efficient memory usage.\r\n\r\n---\r\n\r\n## Features\r\n\r\n* **Automated File Mapping**: Scans a given directory to build a comprehensive map of all available financial statement files, identifying tickers and reporting periods.\r\n* **HTML Content Processing**: Reads `.xls` files (often used for financial reports that are essentially HTML tables), extracts relevant financial account descriptions and their corresponding values.\r\n* **Lazy Loading**: Data for a specific ticker is only loaded into memory when explicitly requested, optimizing memory usage for large datasets.\r\n* **Time-Series Data Retrieval**: Provides a convenient method to retrieve financial data as a **pandas DataFrame**, with account descriptions as rows and reporting periods as columns, sorted chronologically.\r\n* **Period Filtering**: Allows users to filter financial data by specifying a start and end reporting period (in `'YYYY_QQ'` format, e.g., `'2020_01'`, `'2022_04'`).\r\n* **Robust Error Handling**: Includes logging for various scenarios, such as missing folders, file processing errors, and unavailable data.\r\n\r\n---\r\n\r\n## Getting Started\r\n\r\n### Prerequisites\r\n\r\nTo use this class, you'll need the following Python libraries installed:\r\n\r\n```bash\r\npip install pandas numpy lxml openpyxl\r\n",
    "bugtrack_url": null,
    "license": null,
    "summary": "A Python class for managing financial statement data from HTML-based XLS files.",
    "version": "0.1.2",
    "project_urls": {
        "Homepage": "https://github.com/mertkurtcu/kapfinance"
    },
    "split_keywords": [
        "financial data manager",
        " financial statements",
        " balance sheet",
        " income statement",
        " html xls",
        " pandas"
    ],
    "urls": [
        {
            "comment_text": null,
            "digests": {
                "blake2b_256": "ee2f69eeeb572795aea82dd902accaf7bc4aafe79ae052c38ec87dd05100f941",
                "md5": "155ee83dda1e18b52cdf7413d3288b9b",
                "sha256": "32ee7094b73239f130430b101a32623ef1191222ef0c87af08ca30a0549b42ac"
            },
            "downloads": -1,
            "filename": "kapfinance-0.1.2-py3-none-any.whl",
            "has_sig": false,
            "md5_digest": "155ee83dda1e18b52cdf7413d3288b9b",
            "packagetype": "bdist_wheel",
            "python_version": "py3",
            "requires_python": ">=3.8",
            "size": 7407,
            "upload_time": "2025-07-29T20:25:04",
            "upload_time_iso_8601": "2025-07-29T20:25:04.398934Z",
            "url": "https://files.pythonhosted.org/packages/ee/2f/69eeeb572795aea82dd902accaf7bc4aafe79ae052c38ec87dd05100f941/kapfinance-0.1.2-py3-none-any.whl",
            "yanked": false,
            "yanked_reason": null
        },
        {
            "comment_text": null,
            "digests": {
                "blake2b_256": "3642c6c64cc5cd77457c61ee76a82eebb570b45674322873ff5de7456558c9b8",
                "md5": "14315299bf6a36cd5664a82fcffbb25f",
                "sha256": "dadf3c8b33b18633beeeeeb92670573ae95091f1e39e820ad3587a058b30aeba"
            },
            "downloads": -1,
            "filename": "kapfinance-0.1.2.tar.gz",
            "has_sig": false,
            "md5_digest": "14315299bf6a36cd5664a82fcffbb25f",
            "packagetype": "sdist",
            "python_version": "source",
            "requires_python": ">=3.8",
            "size": 7263,
            "upload_time": "2025-07-29T20:25:05",
            "upload_time_iso_8601": "2025-07-29T20:25:05.695488Z",
            "url": "https://files.pythonhosted.org/packages/36/42/c6c64cc5cd77457c61ee76a82eebb570b45674322873ff5de7456558c9b8/kapfinance-0.1.2.tar.gz",
            "yanked": false,
            "yanked_reason": null
        }
    ],
    "upload_time": "2025-07-29 20:25:05",
    "github": true,
    "gitlab": false,
    "bitbucket": false,
    "codeberg": false,
    "github_user": "mertkurtcu",
    "github_project": "kapfinance",
    "travis_ci": false,
    "coveralls": false,
    "github_actions": false,
    "lcname": "kapfinance"
}
        
Elapsed time: 1.40529s