statement-parser 0.0.8__tar.gz → 0.0.11__tar.gz

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (20) hide show
  1. {statement_parser-0.0.8/statement_parser.egg-info → statement_parser-0.0.11}/PKG-INFO +3 -2
  2. {statement_parser-0.0.8 → statement_parser-0.0.11}/pyproject.toml +1 -1
  3. {statement_parser-0.0.8 → statement_parser-0.0.11}/statement_parser/banks/HdfcCredit.py +5 -3
  4. {statement_parser-0.0.8 → statement_parser-0.0.11}/statement_parser/banks/Wallet.py +2 -1
  5. {statement_parser-0.0.8 → statement_parser-0.0.11/statement_parser.egg-info}/PKG-INFO +3 -2
  6. {statement_parser-0.0.8 → statement_parser-0.0.11}/LICENSE +0 -0
  7. {statement_parser-0.0.8 → statement_parser-0.0.11}/README.md +0 -0
  8. {statement_parser-0.0.8 → statement_parser-0.0.11}/setup.cfg +0 -0
  9. {statement_parser-0.0.8 → statement_parser-0.0.11}/statement_parser/Bank.py +0 -0
  10. {statement_parser-0.0.8 → statement_parser-0.0.11}/statement_parser/Transaction.py +0 -0
  11. {statement_parser-0.0.8 → statement_parser-0.0.11}/statement_parser/__init__.py +0 -0
  12. {statement_parser-0.0.8 → statement_parser-0.0.11}/statement_parser/banks/HsbcCredit.py +0 -0
  13. {statement_parser-0.0.8 → statement_parser-0.0.11}/statement_parser/banks/HsbcDebit.py +0 -0
  14. {statement_parser-0.0.8 → statement_parser-0.0.11}/statement_parser/banks/IciciCredit.py +0 -0
  15. {statement_parser-0.0.8 → statement_parser-0.0.11}/statement_parser/banks/IciciDebit.py +0 -0
  16. {statement_parser-0.0.8 → statement_parser-0.0.11}/statement_parser/banks/KotakDebit.py +0 -0
  17. {statement_parser-0.0.8 → statement_parser-0.0.11}/statement_parser.egg-info/SOURCES.txt +0 -0
  18. {statement_parser-0.0.8 → statement_parser-0.0.11}/statement_parser.egg-info/dependency_links.txt +0 -0
  19. {statement_parser-0.0.8 → statement_parser-0.0.11}/statement_parser.egg-info/requires.txt +0 -0
  20. {statement_parser-0.0.8 → statement_parser-0.0.11}/statement_parser.egg-info/top_level.txt +0 -0
@@ -1,6 +1,6 @@
1
- Metadata-Version: 2.2
1
+ Metadata-Version: 2.4
2
2
  Name: statement_parser
3
- Version: 0.0.8
3
+ Version: 0.0.11
4
4
  Summary: Bank Statement Parser is a Python library designed to parse and normalize transaction data from various bank statement formats ( CSV, Excel, etc.) into a consistent and easy-to-use Pandas DataFrame. It supports multiple banks and file formats, making it a versatile tool for financial data analysis.
5
5
  Author-email: Khuzema Challawala <khuzema.ac@gmail.com>
6
6
  Classifier: Programming Language :: Python :: 3
@@ -18,6 +18,7 @@ Requires-Dist: pytest>=8.3.4; extra == "dev"
18
18
  Requires-Dist: pytest-cov>=6.0.0; extra == "dev"
19
19
  Requires-Dist: flake8>=7.1.2; extra == "dev"
20
20
  Requires-Dist: sphinx>=8.2.1; extra == "dev"
21
+ Dynamic: license-file
21
22
 
22
23
  # Bank Statement Parser
23
24
 
@@ -4,7 +4,7 @@ build-backend = "setuptools.build_meta"
4
4
 
5
5
  [project]
6
6
  name = "statement_parser"
7
- version = "0.0.8"
7
+ version = "0.0.11"
8
8
  authors = [
9
9
  { name="Khuzema Challawala", email="khuzema.ac@gmail.com" },
10
10
  ]
@@ -49,8 +49,8 @@ class HdfcCredit(Bank):
49
49
  "AMT",
50
50
  "Debit / Credit "])
51
51
  # filter out empty rows
52
-
53
- df_filtered = df_full[df_full.iloc[:, 1].notna()]
52
+ # df_filtered = df_full[df_full.iloc[:, 1].notna()]
53
+ df_filtered = df_full[df_full.iloc[:, 0] == "Domestic"]
54
54
  df_filtered.columns = df_filtered.columns.str.strip()
55
55
  df_filtered.loc[:, "DATE"] = df_filtered["DATE"].apply(self.parse_date)
56
56
  # Filter out rows where "DATE" is NaT
@@ -76,8 +76,10 @@ class HdfcCredit(Bank):
76
76
  df["AMT"] = df["AMT"].astype(str)
77
77
  df["AMT"] = df["AMT"].str.replace(",", "")
78
78
  df[["AMT"]] = df[["AMT"]].astype(float)
79
+ # Change Cr to upper case and remove spaces
80
+ df["Debit / Credit"] = df["Debit / Credit"].str.upper().str.strip()
79
81
  # df["DATE"] = df["DATE"].apply(self.parse_date)
80
-
82
+ print(df)
81
83
  df["Seq"] = (
82
84
  df.groupby(["DATE", "Description", "AMT", "Debit / Credit"])
83
85
  .cumcount()
@@ -21,7 +21,8 @@ class Wallet(Bank):
21
21
  if row["Seq"] > 1:
22
22
  _duplicate = " (" + str(row["Seq"]) + ") "
23
23
 
24
- created_date = row["date"]
24
+ timestamp = pd.Timestamp(row["date"])
25
+ created_date = timestamp.to_pydatetime()
25
26
  remarks = _category + row["note"].strip() + _duplicate
26
27
  amount = row["amount"]
27
28
  transaction = Transaction(
@@ -1,6 +1,6 @@
1
- Metadata-Version: 2.2
1
+ Metadata-Version: 2.4
2
2
  Name: statement_parser
3
- Version: 0.0.8
3
+ Version: 0.0.11
4
4
  Summary: Bank Statement Parser is a Python library designed to parse and normalize transaction data from various bank statement formats ( CSV, Excel, etc.) into a consistent and easy-to-use Pandas DataFrame. It supports multiple banks and file formats, making it a versatile tool for financial data analysis.
5
5
  Author-email: Khuzema Challawala <khuzema.ac@gmail.com>
6
6
  Classifier: Programming Language :: Python :: 3
@@ -18,6 +18,7 @@ Requires-Dist: pytest>=8.3.4; extra == "dev"
18
18
  Requires-Dist: pytest-cov>=6.0.0; extra == "dev"
19
19
  Requires-Dist: flake8>=7.1.2; extra == "dev"
20
20
  Requires-Dist: sphinx>=8.2.1; extra == "dev"
21
+ Dynamic: license-file
21
22
 
22
23
  # Bank Statement Parser
23
24