Skip to main content

QuerySource

QuerySource is a powerful Python library designed to streamline access to multiple databases and external APIs through a single, unified interface. Utilizing the proxy design pattern, QuerySource allows developers to seamlessly integrate various data sources into their projects without worrying about the complexities of managing multiple connections.

Features

  • Unified interface for querying multiple databases (Redis, PostgreSQL, MySQL, Oracle, SQL Server, InfluxDB, CouchDB, Druid)
  • Support for external APIs (Salesforce, ShopperTrack, ZipCodeAPI, etc.)
  • Easy-to-use API for executing queries
  • Extensible design, allowing for easy addition of new data sources

Installation

$ pip install querysource
---> 100%
Successfully installed querysource

Requirements

Basic Usage

QuerySource can be used in several ways, one is using QS object itself:

from querysource.queries.qs import QS

query = QS(
    query='SELECT * FROM tests',
    output_format='pandas'
)
result, error = await query.query()

Extending QuerySource

To add support for a new data source, create a new class inheriting from the BaseProvider or BaseAPI class and implement the required methods (prepare_connection, query, close). Then, register the new data source in the QuerySource class by adding it to the appropriate dictionary (_supported_databases or _supported_apis).

Contributing

We welcome contributions to QuerySource! If you'd like to contribute, please follow these steps:

  • Fork the repository
  • Create a new branch for your feature or bugfix
  • Implement your changes
  • Add tests covering your changes
  • Create a pull request against the original repository

Contribution guidelines

  • Writing tests
  • Code review
  • Other guidelines

License

QuerySource is released under the BSD License. See the LICENSE file for more details.

Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

querysource-4.5.10.tar.gz (3.2 MB view details)

Uploaded Source

Built Distributions

If you're not sure about the file name format, learn more about wheel file names.

querysource-4.5.10-cp313-cp313-musllinux_1_2_x86_64.whl (11.4 MB view details)

Uploaded CPython 3.13musllinux: musl 1.2+ x86-64

querysource-4.5.10-cp313-cp313-manylinux_2_28_x86_64.whl (11.4 MB view details)

Uploaded CPython 3.13manylinux: glibc 2.28+ x86-64

querysource-4.5.10-cp312-cp312-musllinux_1_2_x86_64.whl (11.5 MB view details)

Uploaded CPython 3.12musllinux: musl 1.2+ x86-64

querysource-4.5.10-cp312-cp312-manylinux_2_28_x86_64.whl (11.5 MB view details)

Uploaded CPython 3.12manylinux: glibc 2.28+ x86-64

querysource-4.5.10-cp311-cp311-musllinux_1_2_x86_64.whl (11.3 MB view details)

Uploaded CPython 3.11musllinux: musl 1.2+ x86-64

querysource-4.5.10-cp311-cp311-manylinux_2_28_x86_64.whl (11.2 MB view details)

Uploaded CPython 3.11manylinux: glibc 2.28+ x86-64

querysource-4.5.10-cp310-cp310-musllinux_1_2_x86_64.whl (10.4 MB view details)

Uploaded CPython 3.10musllinux: musl 1.2+ x86-64

querysource-4.5.10-cp310-cp310-manylinux_2_28_x86_64.whl (10.4 MB view details)

Uploaded CPython 3.10manylinux: glibc 2.28+ x86-64

File details

Details for the file querysource-4.5.10.tar.gz.

File metadata

  • Download URL: querysource-4.5.10.tar.gz
  • Upload date:
  • Size: 3.2 MB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.12.3

File hashes

Hashes for querysource-4.5.10.tar.gz
Algorithm Hash digest
SHA256 1a1e3defcbe13c0ff696dd47003516ecf70872da4472596022de46fa49964e50
MD5 684a70e8341c8392abecfccfbfb6ef15
BLAKE2b-256 1bd45dcd2166319c6f58967db814392052f490eeac008f235f9e14d741d0a2ce

See more details on using hashes here.

File details

Details for the file querysource-4.5.10-cp313-cp313-musllinux_1_2_x86_64.whl.

File metadata

File hashes

Hashes for querysource-4.5.10-cp313-cp313-musllinux_1_2_x86_64.whl
Algorithm Hash digest
SHA256 eb95c99014d3c759aa30cdccaf73ae440eb855a6951f2ab5fb57322d3b9f262f
MD5 5f9e5787c24bf1f861a84c422dbb37d9
BLAKE2b-256 1ec2ab936730833e2cf967520d7e137c294810142ff7ad233e23db16d7338f01

See more details on using hashes here.

File details

Details for the file querysource-4.5.10-cp313-cp313-manylinux_2_28_x86_64.whl.

File metadata

File hashes

Hashes for querysource-4.5.10-cp313-cp313-manylinux_2_28_x86_64.whl
Algorithm Hash digest
SHA256 3adf743cfd042ef65c5767f5daab51f179a9065671966af1d089ee0539d31736
MD5 4cfd880e0d5e6e6664c7e95b8be5e907
BLAKE2b-256 63cbce91ab86c8a9b2b5b716b071f38758793578f043e1fe1c340cbe5777c40e

See more details on using hashes here.

File details

Details for the file querysource-4.5.10-cp312-cp312-musllinux_1_2_x86_64.whl.

File metadata

File hashes

Hashes for querysource-4.5.10-cp312-cp312-musllinux_1_2_x86_64.whl
Algorithm Hash digest
SHA256 57debc6b579890a63f007fd130814a083e3f0ce380fffa8485ab830e843303cb
MD5 9d41b455936500b9288cb69d62420a14
BLAKE2b-256 273a1ea6f12f3d90b54c38a131501ad1067485d0c4d0c44bdd0ef676cea89d6c

See more details on using hashes here.

File details

Details for the file querysource-4.5.10-cp312-cp312-manylinux_2_28_x86_64.whl.

File metadata

File hashes

Hashes for querysource-4.5.10-cp312-cp312-manylinux_2_28_x86_64.whl
Algorithm Hash digest
SHA256 06336c824229c4e1655419edbf67888342425e4b915f7aa3697a346f05363d5d
MD5 739126508648fa86c557b4dcc704c892
BLAKE2b-256 afa90565aaacb51a1cdeda5448e8aa5e3c1d76952e960d0d410be9280e28412a

See more details on using hashes here.

File details

Details for the file querysource-4.5.10-cp311-cp311-musllinux_1_2_x86_64.whl.

File metadata

File hashes

Hashes for querysource-4.5.10-cp311-cp311-musllinux_1_2_x86_64.whl
Algorithm Hash digest
SHA256 d678827960468ae43b7ae181a672d6044b31057a3a063ca41200a10483fb7bd4
MD5 5ff094f8111dc320f39c30e7a6b77db0
BLAKE2b-256 babf1dadf472f63bbe8c466bf6c145e4b7bbccf6b67d2e3f812b14e6f34422fb

See more details on using hashes here.

File details

Details for the file querysource-4.5.10-cp311-cp311-manylinux_2_28_x86_64.whl.

File metadata

File hashes

Hashes for querysource-4.5.10-cp311-cp311-manylinux_2_28_x86_64.whl
Algorithm Hash digest
SHA256 b96cc1292065cdfaa74bccca9c7d1eeebb85fd4366020c72cd9ebb1276b18970
MD5 64250d74a2d794b60a5010b5a9ed8990
BLAKE2b-256 a74c8f6bdada1a569e017cfd2414c60ba196499e1e863d33d16ccad5173f5eb2

See more details on using hashes here.

File details

Details for the file querysource-4.5.10-cp310-cp310-musllinux_1_2_x86_64.whl.

File metadata

File hashes

Hashes for querysource-4.5.10-cp310-cp310-musllinux_1_2_x86_64.whl
Algorithm Hash digest
SHA256 1905508314eded7df015b5fe6bd9e1e69c4f506b492fd62976dd1e1adbf54743
MD5 a9652bac5edb9117f5c21a02f0535a81
BLAKE2b-256 63b49b3dd9f91ac83c26c2053725005eb0cedae3f068b9b000cf829a07bb24e4

See more details on using hashes here.

File details

Details for the file querysource-4.5.10-cp310-cp310-manylinux_2_28_x86_64.whl.

File metadata

File hashes

Hashes for querysource-4.5.10-cp310-cp310-manylinux_2_28_x86_64.whl
Algorithm Hash digest
SHA256 1ed23b22ee3bab6c44ceb621ecbc5809330aa61dc21b626cf89d744b6c8c39b8
MD5 9db4c24eb3f6d72004b178172757e08c
BLAKE2b-256 8042075bd53b6fa4f9009485386e6ba2c1b5f14e85435ed7b2819bfdef0f99ab

See more details on using hashes here.

Release history Release notifications | RSS feed

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page