A dbt artifacts parser in python
Project description
dbt-artifacts-parser
This is a dbt artifacts parse in python.
It enables us to deal with catalog.json
, manifest.json
, run-results.json
and sources.json
as python objects.
Installation
pip install -U dbt-artifacts-parser
Python classes
Those are the classes to parse dbt artifacts.
Catalog
- CatalogV1 for catalog.json v1
Manifest
- ManifestV1 for manifest.json v1
- ManifestV2 for manifest.json v2
- ManifestV3 for manifest.json v3
- ManifestV4 for manifest.json v4
- ManifestV5 for manifest.json v5
- ManifestV6 for manifest.json v6
- ManifestV7 for manifest.json v7
- ManifestV8 for manifest.json v8
Run Results
- RunResultsV1 for run_results.json v1
- RunResultsV2 for run_results.json v2
- RunResultsV3 for run_results.json v3
- RunResultsV4 for run_results.json v4
Sources
Examples
Parse catalog.json
import json
# parse any version of catalog.json
from dbt_artifacts_parser.parser import parse_catalog
with open("path/to/catalog.json", "r") as fp:
catalog_dict = json.load(fp)
catalog_obj = parse_catalog(catalog=catalog_dict)
# parse catalog.json v1
from dbt_artifacts_parser.parser import parse_catalog_v1
with open("path/to/catalog.json", "r") as fp:
catalog_dict = json.load(fp)
catalog_obj = parse_catalog_v1(catalog=catalog_dict)
Parse manifest.json
import json
# parse any version of manifest.json
from dbt_artifacts_parser.parser import parse_manifest
with open("path/to/manifest.json", "r") as fp:
manifest_dict = json.load(fp)
manifest_obj = parse_manifest(manifest=manifest_dict)
# parse manifest.json v1
from dbt_artifacts_parser.parser import parse_manifest_v1
with open("path/to/manifest.json", "r") as fp:
manifest_dict = json.load(fp)
manifest_obj = parse_manifest_v1(manifest=manifest_dict)
# parse manifest.json v2
from dbt_artifacts_parser.parser import parse_manifest_v2
with open("path/to/manifest.json", "r") as fp:
manifest_dict = json.load(fp)
manifest_obj = parse_manifest_v2(manifest=manifest_dict)
# parse manifest.json v3
from dbt_artifacts_parser.parser import parse_manifest_v3
with open("path/to/manifest.json", "r") as fp:
manifest_dict = json.load(fp)
manifest_obj = parse_manifest_v3(manifest=manifest_dict)
# parse manifest.json v4
from dbt_artifacts_parser.parser import parse_manifest_v4
with open("path/to/manifest.json", "r") as fp:
manifest_dict = json.load(fp)
manifest_obj = parse_manifest_v4(manifest=manifest_dict)
# parse manifest.json v5
from dbt_artifacts_parser.parser import parse_manifest_v5
with open("path/to/manifest.json", "r") as fp:
manifest_dict = json.load(fp)
manifest_obj = parse_manifest_v5(manifest=manifest_dict)
# parse manifest.json v6
from dbt_artifacts_parser.parser import parse_manifest_v6
with open("path/to/manifest.json", "r") as fp:
manifest_dict = json.load(fp)
manifest_obj = parse_manifest_v6(manifest=manifest_dict)
# parse manifest.json v7
from dbt_artifacts_parser.parser import parse_manifest_v7
with open("path/to/manifest.json", "r") as fp:
manifest_dict = json.load(fp)
manifest_obj = parse_manifest_v7(manifest=manifest_dict)
# parse manifest.json v8
from dbt_artifacts_parser.parser import parse_manifest_v8
with open("path/to/manifest.json", "r") as fp:
manifest_dict = json.load(fp)
manifest_obj = parse_manifest_v8(manifest=manifest_dict)
Parse run-results.json
import json
# parse any version of run-results.json
from dbt_artifacts_parser.parser import parse_run_results
with open("path/to/run-resultsjson", "r") as fp:
run_results_dict = json.load(fp)
run_results_obj = parse_run_results(run_results=run_results_dict)
# parse run-results.json v1
from dbt_artifacts_parser.parser import parse_run_results_v1
with open("path/to/run-results.json", "r") as fp:
run_results_dict = json.load(fp)
run_results_obj = parse_run_results_v1(run_results=run_results_dict)
# parse run-results.json v2
from dbt_artifacts_parser.parser import parse_run_results_v2
with open("path/to/run-results.json", "r") as fp:
run_results_dict = json.load(fp)
run_results_obj = parse_run_results_v2(run_results=run_results_dict)
# parse run-results.json v3
from dbt_artifacts_parser.parser import parse_run_results_v3
with open("path/to/run-results.json", "r") as fp:
run_results_dict = json.load(fp)
run_results_obj = parse_run_results_v3(run_results=run_results_dict)
# parse run-results.json v4
from dbt_artifacts_parser.parser import parse_run_results_v4
with open("path/to/run-results.json", "r") as fp:
run_results_dict = json.load(fp)
run_results_obj = parse_run_results_v4(run_results=run_results_dict)
Parse sources.json
import json
# parse any version of sources.json
from dbt_artifacts_parser.parser import parse_sources
with open("path/to/sources.json", "r") as fp:
sources_dict = json.load(fp)
sources_obj = parse_sources(sources=sources_dict)
# parse sources.json v1
from dbt_artifacts_parser.parser import parse_sources_v1
with open("path/to/sources.json", "r") as fp:
sources_dict = json.load(fp)
sources_obj = parse_sources_v1(sources=sources_dict)
# parse sources.json v2
from dbt_artifacts_parser.parser import parse_sources_v2
with open("path/to/sources.json", "r") as fp:
sources_dict = json.load(fp)
sources_obj = parse_sources_v2(sources=sources_dict)
# parse sources.json v3
from dbt_artifacts_parser.parser import parse_sources_v3
with open("path/to/sources.json", "r") as fp:
sources_dict = json.load(fp)
sources_obj = parse_sources_v3(sources=sources_dict)
Contributors
Yu Ishikawa |
Brent Brewington |
Judah Rand |
Mohamed Nabil Mahmoud Hafez |
Null |
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
dbt-artifacts-parser-0.2.5.tar.gz
(475.5 kB
view hashes)
Built Distribution
Close
Hashes for dbt-artifacts-parser-0.2.5.tar.gz
Algorithm | Hash digest | |
---|---|---|
SHA256 | 174c6b5f44e41b1bbd0055d7a1439bc07a2be445aca26948382f3ab427b8228c |
|
MD5 | 33966939897f482408db4fbe9cdfaf7f |
|
BLAKE2b-256 | 39610c65ccc57c35614efce0034b4e7a8d38963d93cd1dea09eec93bce743917 |
Close
Hashes for dbt_artifacts_parser-0.2.5-py3-none-any.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 2a8332f7605001cc92f8fbb261cc0bd8551f3e2f624abb2d61ad92b064b41e45 |
|
MD5 | 8de8d63034dc10b16061bbf2451291ea |
|
BLAKE2b-256 | f7fec587e578d95874c3fd8d7f08dcfc1f6f8e30f9d919ee238510f4c7e2bee9 |