Skip to main content

A package to fetch and save Power BI tables via XMLA endpoint

Project description

Power BI XMLA Endpoint Download to Parquet

This package allows you to fetch and save Power BI tables in Parquet format via the XMLA endpoint.

System Requirements

This package requires a Windows environment with .NET assemblies, as it relies on pythonnet to interact with .NET libraries.

Authentication

The package currently only supports authentication using the Microsoft Authentication Library (MSAL) to obtain an access token, supporting Multi-Factor Authentication (MFA).

Python Version Requirement

This package requires Python version >=3.9,<3.13.

Installation

Using Poetry

To install the package using Poetry, run:

poetry add download_pbi_xmla

Using pip

To install the package using pip, run:

pip install download_pbi_xmla

Setup

You can create the required .env and config.json files using the templates below, or you can run the scripts below to create the templates.

  1. Run the Setup Script: This script will copy example configuration files and prompt you to edit them.

Using Poetry

poetry run setup-files

Using pip

python -m download_pbi_xmla.setup_files

  1. Edit the .env and config.json files with your credentials and configuration.

.env File Example

CLIENT_ID=your-client-id CLIENT_SECRET=your-client-secret TENANT_ID=your-tenant-id CONFIG_FILE=config.json SAVE_PATH=./data

config.json File Example

{ "server": "your-server-url", "database": "your-database-name", "tables": [ { "name": "your-table-name", "refresh_type": "full", "date_column": "your-date-column", "last_date": "YYYY-MM-DD" } ] }

Usage

After setting up the environment and configuration files, you can use the download.py script to fetch and save Power BI tables in Parquet format.

  1. Run the Download Script: This script will load the environment variables and run the download process.

Using poetry

poetry run run-download

Using pip

python -m download_pbi_xmla.run_download

Contribution

Feel free to fork the repository and create pull requests. Contributions are welcome!

For any issues or feature requests, please open an issue on the repository.

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

download_pbi_xmla-0.3.2.tar.gz (6.7 kB view details)

Uploaded Source

Built Distribution

download_pbi_xmla-0.3.2-py3-none-any.whl (9.3 kB view details)

Uploaded Python 3

File details

Details for the file download_pbi_xmla-0.3.2.tar.gz.

File metadata

  • Download URL: download_pbi_xmla-0.3.2.tar.gz
  • Upload date:
  • Size: 6.7 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: poetry/1.8.3 CPython/3.12.4 Windows/11

File hashes

Hashes for download_pbi_xmla-0.3.2.tar.gz
Algorithm Hash digest
SHA256 f1732046d6009020509383b7161b7a9fd813d408d2510e01ead7a35d587bfdfe
MD5 56a5c4b7a17d67976350d0419a06e0bc
BLAKE2b-256 ef3d7e8ca60e1872a21bfc87d0aa6bb4c5a78bd62072a22b809733e96c592c3a

See more details on using hashes here.

File details

Details for the file download_pbi_xmla-0.3.2-py3-none-any.whl.

File metadata

File hashes

Hashes for download_pbi_xmla-0.3.2-py3-none-any.whl
Algorithm Hash digest
SHA256 18dd2c4ab9e2d5e6e53d2b40be024af5bcf0a260d965c0516aa6c31e11f3b40c
MD5 392562820c9713765b0e90d7c708045f
BLAKE2b-256 9e67d68b4b624197d0ca2767e9d4149beeca0b118fa2016c0127e445080558f4

See more details on using hashes here.

Supported by

AWS AWS Cloud computing and Security Sponsor Datadog Datadog Monitoring Fastly Fastly CDN Google Google Download Analytics Microsoft Microsoft PSF Sponsor Pingdom Pingdom Monitoring Sentry Sentry Error logging StatusPage StatusPage Status page