Access database (*.mdb, *.accdb) parser
Project description
AccessDB Parser (Pure Python)
Microsoft Access (.mdb / .accdb) database files parser. The parsing logic is fully written in python and works without any external binary dependencies.
Installing
Use pip: pip install git+https://github.com/McSash/access_parser_c
Or install manually:
git clone https://github.com/McSash/access_parser_c.git
cd access_parser_c
python3 setup.py install
Demo
Usage Example
from access_parser_c import AccessParser
# .mdb or .accdb file
db = AccessParser("/path/to/mdb/file.mdb")
# Print DB tables
print(db.catalog)
# Tables are stored as defaultdict(list) -- table[column][row_index]
table = db.parse_table("table_name")
# Pretty print all tables
db.print_database()
Another Usage Example
from access_parser import AccessParser
from azure.storage.blob import ContainerClient
# Download access file from azure blob storage
BlobContainerClient = ContainerClient.from_connection_string("<StorageConnectionString>", container_name="<ContainerName>")
access_object = BlobContainerClient.download_blob("<PathToFile>").readall()
# Bytes object of .mdb or .accdb file
db = AccessParser(access_object)
# Print DB tables
print(db.catalog)
# Tables are stored as defaultdict(list) -- table[column][row_index]
table = db.parse_table("table_name")
# Pretty print all tables
db.print_database()
Known Issues
- OLE fields are currently not supported
- Only a subset of memo fields are parsed
This library was tested on a limited subset of database files. Due to the differences between database versions and the complexity of the parsing we expect to find more parsing edge-cases.
To help us resolve issues faster please provide as much data as you can when opening an issue - DB file if possible and full trace including log messages.
Thanks
- This fork was made possible by the great work by claroty: https://github.com/claroty/access_parser
Project details
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
File details
Details for the file access_parser_c-0.0.7.tar.gz
.
File metadata
- Download URL: access_parser_c-0.0.7.tar.gz
- Upload date:
- Size: 15.8 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/3.7.1 importlib_metadata/4.10.1 pkginfo/1.8.2 requests/2.26.0 requests-toolbelt/0.9.1 tqdm/4.62.3 CPython/3.9.7
File hashes
Algorithm | Hash digest | |
---|---|---|
SHA256 | a76b512746afb55e5c6d4d95e837645c2e021cf52d2526cd88ae539023a43e31 |
|
MD5 | 60e5a2a24c77aae2b16c3c507a1f1fca |
|
BLAKE2b-256 | 051b398d00b7ba3cbbdd1d90103d16cb406ea68504b3a9a8454925cfd377f3d4 |